扩展

集成

把 OpsKeeper 接入你的告警源、可观测栈和 Worker 集群。完整参考在 docs/integration-guide.md

告警源

OpsKeeper 从 Prometheus / Loki / Tempo / Webhook / On-call 通道接入告警。在 configs/sources.yaml 中配置每个源:

sources.yaml
sources:
  prometheus:
    endpoint: http://prometheus:9090
    rules:
      - pg_connection_pool_used_ratio > 0.9
      - disk_io_utilization > 95

  loki:
    endpoint: http://loki:3100
    labels:
      job: opskeeper

  tempo:
    endpoint: http://tempo:3200
    match_by: [service.namespace, deployment.environment]

  webhook:
    path: /api/v1/webhook/alerts
    hmac_secret: $OPSKEEPER_WEBHOOK_HMAC

技能

一个技能就是一个 Worker 的声明:名称、角色、阶段、安全级别、工具白名单。技能放在 Nacos Config 中,30 秒轮询热加载;离线安装时本地降级。

skill_meta.yaml
name: alerter
role: intake
phase: [detected, correlated]
safety_level: L0
max_turns: 12
tool_allowlist:
  - read:alerts
  - read:topics
  - dedup:rules
  - dedup:LLM

可观测

  • 端到端 W3C traceparent 传递。
  • 为闭环、审计账本、技能健康度预置 Grafana 仪表盘。
  • Loki 日志流和 Tempo 追踪按 trace_id 关联。

MCP

Worker 通过 opskeeper-teamharness 中的 stdio MCP 代理接入 OpsKeeper。协议是 JSON-RPC 2.0;鉴权是 Bearer + HMAC + W3C traceparent。

tools/list
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/list",
  "params": {}
}

热加载

编辑 skill_meta.yaml、推送到 Nacos,Manager 会在 30 秒内接住。无需重启。