telemetry:

  instrumentation:
    spans:
      mode: spec_compliant
    events:
      router:
        # Standard events
        request: info
        response: info
        error: info

        # Custom events
        my.disabled_request_event:
          message: "my event message"
          level: off
          on: request
          attributes:
            http.request.body.size: true
          # Only log when the x-log-request header is `log` 
          condition:
            eq:
              - "log"
              - request_header: "x-log-request"
        my.request_event:
          message: "my event message"
          level: info
          on: request
          attributes:
            http.request.body.size: true
        my.response_event:
          message: "my response event message"
          level: info
          on: response
          attributes:
            http.response.body.size: true
            static_one:
              static: test
      supergraph:
        # Standard events
        request: info
        response: info
        error: info

        # Custom events
        my.disabled_request.event:
          message: "my event message"
          level: off
          on: request
          # Only log when the x-log-request header is `log` 
          condition:
            eq:
              - "log"
              - request_header: "x-log-request"
        my.response_event.on_event:
          message: "my response event message"
          level: warn
          on: event_response
          attributes:
            on_supergraph_response_event: on_supergraph_event
        my.request.event:
          message: "my event message"
          level: info
          on: request
          # Only log when the x-log-request header is `log` 
          condition:
            eq:
              - "log"
              - request_header: "x-log-request"
        my.response_event:
          message: "my response event message"
          level: warn
          on: response
          condition:
            eq:
              - "log"
              - response_header: "x-log-request"
      subgraph:
        # Standard events
        request: info
        response: warn
        error: error

        # Custom events
        my.disabled_request.event:
          message: "my event message"
          level: off
          on: request
        my.request.event:
          message: "my event message"
          level: info
          on: request
        my.response.event:
          message: "my response event message"
          level: error
          on: response
          attributes:
            subgraph.name: true
            response_status:
              subgraph_response_status: code
            "my.custom.attribute":
              subgraph_response_data: "$.*"
              default: "missing"
  exporters:
    tracing:
      propagation:
        trace_context: true
      otlp:
        enabled: true
        batch_processor:
          scheduled_delay: 100ms
        endpoint: default
    logging:
      stdout:
        format:
          text:
            display_trace_id: true
            display_span_id: true
            ansi_escape_codes: false
