{
  "repo": "tidbcloud/infra-provider",
  "binary": "proxy",
  "binary_path": "clusterproxy/cmd/proxy/main.go",
  "surface_kind": "http_service",
  "type": "http_service",
  "extensions": {},
  "services": [
    {
      "name": "ReadyService",
      "type": "http",
      "methods": [
        {
          "name": "readyz",
          "name_key": "ReadyService.readyz",
          "path": "/readyz",
          "method": "GET",
          "description": "Readiness endpoint on the main proxy mux."
        }
      ]
    },
    {
      "name": "ClusterProxyRoutes",
      "type": "http",
      "methods": [
        {
          "name": "BindRegisteredRoutes",
          "name_key": "ClusterProxyRoutes.BindRegisteredRoutes",
          "path": "service.lock.yaml route set",
          "method": "ANY",
          "description": "Binds the registered clusterproxy routes to the HTTP mux using auth and metrics middleware."
        }
      ]
    },
    {
      "name": "MetricsAndPprof",
      "type": "http",
      "methods": [
        {
          "name": "metrics",
          "name_key": "MetricsAndPprof.metrics",
          "path": "metrics server",
          "method": "GET",
          "description": "Starts the dedicated clusterproxy metrics server."
        },
        {
          "name": "pprof",
          "name_key": "MetricsAndPprof.pprof",
          "path": ":pprof-port/debug/pprof/*",
          "method": "GET",
          "description": "Serves Go pprof on the sidecar debug listener."
        }
      ]
    }
  ]
}
