{
  "repo": "tidbcloud/aws-shared-provider",
  "binary": "tidb-gateway",
  "binary_path": "cmd/tidb-gateway/main.go",
  "surface_kind": "mixed_service",
  "type": "mixed_service",
  "extensions": {},
  "services": [
    {
      "name": "ProbeService",
      "type": "http",
      "methods": [
        {
          "name": "GET /healthz",
          "name_key": "HTTP GET /healthz",
          "description": "Health check endpoint"
        },
        {
          "name": "GET /readyz",
          "name_key": "HTTP GET /readyz",
          "description": "Readiness check endpoint"
        }
      ],
      "endpoints": [
        {
          "path": "/healthz",
          "method": "GET",
          "description": "Health check endpoint",
          "port": 8081
        },
        {
          "path": "/readyz",
          "method": "GET",
          "description": "Readiness check endpoint (returns 200 if gateway is serving)",
          "port": 8081
        }
      ]
    },
    {
      "name": "MetricsService",
      "type": "http",
      "methods": [
        {
          "name": "GET /metrics",
          "name_key": "HTTP GET /metrics",
          "description": "Prometheus metrics endpoint"
        }
      ],
      "endpoints": [
        {
          "path": "/metrics",
          "method": "GET",
          "description": "Prometheus metrics endpoint",
          "port": 9090
        }
      ]
    },
    {
      "name": "SQLProxy",
      "type": "tcp",
      "methods": [
        {
          "name": "Accept",
          "name_key": "Runtime SQLProxy.Accept",
          "description": "Accept and proxy MySQL protocol connections"
        }
      ],
      "description": "MySQL protocol proxy for TiDB connections",
      "port": 3306,
      "protocol": "mysql"
    }
  ]
}
