{
  "repo": "tidbcloud/metrics-integration",
  "binary": "metrics-collector",
  "binary_path": "pipeline/cmd/metrics-collector/main.go",
  "surface_kind": "mixed_service",
  "type": "mixed_service",
  "services": [
    {
      "name": "MetricsService",
      "type": "http",
      "methods": [
        {
          "name": "metrics",
          "name_key": "HTTP GET /metrics",
          "path": "/metrics",
          "method": "GET",
          "description": "Exports collector self-metrics on ServerConfig.MetricsListenAddr."
        }
      ]
    },
    {
      "name": "TelemetryPipeline",
      "type": "worker",
      "methods": [
        {
          "name": "RunCollector",
          "name_key": "Runtime TelemetryPipeline.RunCollector",
          "description": "Runs the OpenTelemetry-based metrics push pipeline with TiDB Cloud private components."
        }
      ]
    }
  ],
  "extensions": {
    "notes": [
      "The collector process combines an internal metrics endpoint with a long-running OpenTelemetry pipeline."
    ]
  }
}
