Skip to main content
Configure OpenTelemetry (OTLP) export to send audit logs, metrics, and traces to any OTLP-compatible backend.

Prerequisites

  • Golf Gateway deployed and running
  • OpenTelemetry Collector or compatible backend (Grafana, Datadog, etc.)

Configure OTLP export

gRPC (Recommended):
exporters:
  otel:
    - name: primary-otel
      enabled: true
      endpoint: otel-collector.example.com:4317
      protocol: grpc
      service_name: golf-gateway
      export_logs: true
      export_metrics: true
HTTP/Protobuf:
exporters:
  otel:
    - name: primary-otel
      enabled: true
      endpoint: https://otlp.example.com/v1/logs
      protocol: http/protobuf
      service_name: golf-gateway
      headers:
        Authorization: "Bearer ${OTEL_TOKEN}"

Export signals

SignalYAML FieldDescription
Logsexport_logs: trueAudit log entries
Metricsexport_metrics: truePerformance metrics
Tracesexport_traces: trueRequest traces

Resource attributes

Golf Gateway includes these resource attributes:
AttributeValue
service.nameFrom service_name field
service.versionGateway version
golf.gateway.idGateway ID (if managed)
golf.gateway.nameGateway name
Add custom attributes:
exporters:
  otel:
    - name: primary-otel
      # ... other fields
      resource_attributes:
        environment: production
        region: us-west-2

Semantic conventions

Log records follow OpenTelemetry semantic conventions:
AttributeDescription
event.nameEvent type
http.request.methodHTTP method
url.pathRequest path
mcp.methodMCP method
mcp.tool.nameTool name

Common OTLP backends

Consult your observability platform’s documentation for OTLP endpoint configuration:
PlatformDocumentation
Grafana CloudSend data via OTLP
DatadogOpenTelemetry in Datadog
New RelicOpenTelemetry setup
HoneycombOpenTelemetry overview

Verify export is working

  1. Check health endpoint includes OTEL status
  2. View logs in your OTLP backend
  3. Search for service.name: golf-gateway

Troubleshooting

  • Connection timeout: Verify endpoint is reachable
  • 401/403 errors: Check authentication headers
  • No data appearing: Verify export_logs: true in your YAML config