跳至主要内容

5 · 查詢與告警

PromQL · TraceQL · LogQL(經 query-frontends)

Grafana資料來源:Mimir · Tempo · Lokiexemplars 與 trace↔log 連結PromQLMimir query-frontendTraceQLTempo query-frontendLogQLLoki query-frontendMimir rulerPromQL rulesLoki rulerLogQL rulesAlertmanager分組 · 去重 · 路由:9093 /api/v2/alerts觸發的告警通知目標PagerDuty · Opsgenie · Slack · email · webhook

元件

Grafana

單一視窗:儀表板、Explore,以及跨三個後端的跨訊號關聯。

  • 資料來源指向三個 query-frontends
  • Exemplars:metric 尖峰 → 一鍵到 trace
  • Derived fields:log 行中的 trace ID → Tempo trace
  • Trace → logs:Tempo 依 service labels 連回 Loki
protocolPromQL · TraceQL · LogQL over HTTP
tenancy資料來源依 org/團隊送 X-Scope-OrgID

Alertmanager

接收 Mimir 與 Loki rulers 的告警;分組、去重、靜音並路由通知。

  • Mimir 內建可水平擴展的多租戶 Alertmanager
  • 路由樹 → PagerDuty、Slack、email、webhooks
  • 每 tenant 的 silences + inhibition rules
protocolin :9093 /api/v2/alerts
tenancy每 tenant 的設定與路由

通知目標

Alertmanager 路由樹投遞告警的地方。依 severity/team labels 路由:呼叫值班工具,FYI 送聊天室。

  • PagerDuty / Opsgenie:critical severity → 呼叫 + 升級政策 + 值班排程
  • Slack:warning severity → 團隊頻道,不呼叫
  • Email / 一般 webhook 處理其餘
  • 依 labels 路由:severity、team、env — 由 rule 設定,而非 receiver
protocolPagerDuty Events API v2 · Opsgenie Alert API · Slack webhook