{
  "repo": "tidbcloud/metrics-integration",
  "binary": "prometheus",
  "binary_path": "pipeline/cmd/prometheus/main.go",
  "surface_kind": "http_service",
  "type": "http_service",
  "services": [
    {
      "name": "HealthService",
      "type": "http",
      "methods": [
        {
          "name": "ping",
          "name_key": "HTTP GET /ping",
          "path": "/ping",
          "method": "GET",
          "description": "Health check endpoint."
        },
        {
          "name": "healthz",
          "name_key": "HTTP GET /healthz",
          "path": "/healthz",
          "method": "GET",
          "description": "Kubernetes health probe endpoint."
        }
      ]
    },
    {
      "name": "ClusterMetricsAPI",
      "type": "http",
      "methods": [
        {
          "name": "QueryClusterMetrics",
          "name_key": "HTTP GET /public_api/v1/clusters/:cluster_id/metrics",
          "path": "/public_api/v1/clusters/:cluster_id/metrics",
          "method": "GET",
          "description": "Returns Prometheus-format metrics for a target cluster."
        }
      ]
    },
    {
      "name": "GinMetrics",
      "type": "http",
      "methods": [
        {
          "name": "gin_metrics",
          "name_key": "HTTP GET /metrics",
          "path": "/metrics",
          "method": "GET",
          "description": "Gin request metrics exposed through go-gin-prometheus."
        }
      ]
    }
  ],
  "extensions": {
    "notes": [
      "The Prometheus binary exposes probe routes and a cluster metrics API from the same HTTP server."
    ]
  }
}
