router icon indicating copy to clipboard operation
router copied to clipboard

router v2.1.0 fails to start, error on otlp metrics service not implementated

Open grzn opened this issue 8 months ago • 3 comments

We're attempting to upgrade our setup to v2.10, the router fails to start with the following config:

    apq:
      enabled: false
    batching:
      enabled: true
      mode: batch_http_link
      subgraph:
        all:
          enabled: false
    coprocessor:
      router:
        request:
          body: true
          context: true
          headers: true
          method: true
          path: true
      supergraph:
        request:
          body: true
          context: true
          headers: true
        response:
          body: true
          context: true
          headers: true
          status_code: true
      timeout: 30s
      url: http://127.0.0.1:8080/coprocessor
    cors:
      allow_credentials: true

      match_origins:
      - ^http:\/\/localhost$
      - ^http:\/\/localhost:\d+$
    demand_control:
      enabled: true
      mode: measure
      strategy:
        static_estimated:
          list_size: 1
          max: 1000000000
    headers:
      all:
        request:
        - propagate:
            named: content-type
    health_check:
      enabled: true
      listen: 127.0.0.1:8088
      path: /health
    homepage:
      enabled: false
    include_subgraph_errors:
      all: true
    limits:
      max_aliases: 300
      max_depth: 20
      max_height: 4000
      max_root_fields: 10
      parser_max_recursion: 16
      warn_only: true
    subscription:
      enable_deduplication: false
      enabled: true
      mode:
        passthrough:
          all:
            path: /graphql
    supergraph:
      introspection: true
      path: /{*rest}
    telemetry:
      apollo:
        metrics_reference_mode: extended
        signature_normalization_algorithm: enhanced
      exporters:
        logging:
          stdout:
            enabled: true
        metrics:
          common:
            views:
            - aggregation:
                histogram:
                  buckets:
                  - 0
                  - 10
                  - 100
                  - 1000
                  - 10000
                  - 100000
                  - 1000000
                  - 10000000
              name: cost.*
          otlp:
            enabled: false
          prometheus:
            enabled: true
            listen: 0.0.0.0:9091
            path: /metrics
        tracing:
          otlp:
            enabled: false
            endpoint: ${env.OTEL_EXPORTER_OTLP_ENDPOINT}
            protocol: grpc
      instrumentation:
        instruments:
          router:
            http.server.active_requests: true
          supergraph:
            cost.actual:
              attributes:
                cost.result: true
            cost.delta:
              attributes:
                cost.result: true
            cost.estimated:
              attributes:
                cost.result: true
        spans:
          mode: spec_compliant
          router:
            attributes:
              wiz.wiz.root_span.service_name: ui
          subgraph:
            attributes:
              wiz.wiz.root_span.service_name: ui
          supergraph:
            attributes:
              cost.actual: true
              cost.delta: true
              cost.estimated: true
              cost.result: true
              wiz.wiz.root_span.service_name: ui
    traffic_shaping:
      all:
        timeout: 118s
      router:
        timeout: 118s

with the error:

{
    "timestamp": "2025-04-01T10:12:47.898663390Z",
    "level": "ERROR",
    "message": "OpenTelemetry metric error occurred: Metrics exporter otlp failed with the grpc server returns error (Operation is not implemented or not supported): , detailed error message: unknown service opentelemetry.proto.collector.metrics.v1.MetricsService",
    "target": "apollo_router::plugins::telemetry::error_handler",
    "resource": {
        "service.version": "2.1.0",
        "process.executable.name": "router"
    }
}

( we got the error without metrics.otlp.enabled and tracing.otlp.enabled set, so we tried to set it to false, and the error remains)

grzn avatar Apr 01 '25 10:04 grzn