monitoring-components-runbook.md 1.9 KB

环境监测组件接入说明

当前已接入能力

  • blackbox_exporter
    • 负责 HTTP / TCP 探测
  • Spring Boot Actuator
    • 负责 Java 应用健康状态
  • JMX Exporter
    • 负责 JVM 指标
  • Vector
    • 负责日志采集并推送到平台

多机多节点约定

  • service_key
    • 一个逻辑服务一份,例如 java-demo-app
  • nodeKey
    • 一个具体节点一份,例如 java-demo-app-node-1
  • host
    • 具体机器名或 IP
  • clusterName
    • 可选,用于标识集群

平台会按 service_key + nodeKey 聚合日志和监测结果。

本地示例服务

示例工程目录:

  • examples/java-demo-app

默认端口:

  • 应用:18080
  • JMX Exporter:19404

关键接口:

  • http://localhost:18080/actuator/health
  • http://localhost:18080/demo/hello
  • http://localhost:18080/demo/error?message=test
  • http://localhost:19404/metrics

启动方式

启动 Java 示例服务:

powershell -ExecutionPolicy Bypass -File .\scripts\start-java-demo.ps1

启动 Vector:

powershell -ExecutionPolicy Bypass -File .\scripts\start-vector-java-demo.ps1

Vector 到平台

Vector 配置文件:

  • examples/java-demo-app/vector.yaml

日志接收接口:

  • POST /api/monitoring/logs/ingest

鉴权头:

  • x-monitoring-ingest-token

默认令牌:

  • sentai-monitor-ingest

监测目标配置示例

Java hybrid 示例:

{
  "nodeKey": "java-demo-app-node-1",
  "host": "localhost",
  "javaCollectionMode": "hybrid",
  "javaHealthPath": "/actuator/health",
  "javaMetricsPath": "/actuator/metrics",
  "jmxExporterUrl": "http://localhost:19404",
  "jmxMetricsPath": "/metrics",
  "javaRequireHealthCheck": true
}

HTTP blackbox 示例:

{
  "collectionMode": "blackbox",
  "blackboxBaseUrl": "http://localhost:9115",
  "blackboxModule": "http_2xx",
  "blackboxTarget": "http://localhost:3001/health"
}