OpenTelemetry

OpenTelemetry is the recommended setup path for new services. Moneat accepts OTLP logs, traces, and metrics, then normalizes them into the same service, performance, log, dashboard, and billing views used by every telemetry source.

Create an OTLP API key

Open Settings -> API Keys -> OpenTelemetry and create an OTLP API key. OTLP API keys are organization-level and can be used for logs, traces, metrics, and OTLP feedback.

Authenticate ingestion requests with:

HTTP
Authorization: Bearer <MONEAT_OTLP_API_KEY>

Endpoints

Use https://api.moneat.io for Moneat Cloud, or your self-hosted backend URL.

SignalStandard OTLP/HTTP endpointMoneat convention alias
TracesPOST {{BACKEND_URL}}/v1/tracesPOST {{BACKEND_URL}}/v1/traces/otlp
MetricsPOST {{BACKEND_URL}}/v1/metricsPOST {{BACKEND_URL}}/v1/metrics/otlp
LogsPOST {{BACKEND_URL}}/v1/logsPOST {{BACKEND_URL}}/v1/logs/otlp

All endpoints accept OTLP JSON and OTLP protobuf:

HTTP
Content-Type: application/json
Content-Type: application/x-protobuf

SDK environment variables

Most OpenTelemetry SDKs support per-signal endpoint environment variables:

Shell
export OTEL_SERVICE_NAME=checkout-api
export OTEL_RESOURCE_ATTRIBUTES="deployment.environment.name=production,service.version=1.2.3"
export OTEL_EXPORTER_OTLP_TRACES_ENDPOINT=__MONEAT_BACKEND_URL__/v1/traces
export OTEL_EXPORTER_OTLP_METRICS_ENDPOINT=__MONEAT_BACKEND_URL__/v1/metrics
export OTEL_EXPORTER_OTLP_LOGS_ENDPOINT=__MONEAT_BACKEND_URL__/v1/logs
export OTEL_EXPORTER_OTLP_HEADERS="Authorization=Bearer <MONEAT_OTLP_API_KEY>"

If your SDK requires escaped header values, encode the space in Bearer <key> as %20.

Collector example

For an OpenTelemetry Collector, configure the OTLP HTTP exporter with explicit per-signal endpoints:

YAML
receivers:
  otlp:
    protocols:
      grpc:
      http:

processors:
  batch:

exporters:
  otlphttp/moneat:
    traces_endpoint: __MONEAT_BACKEND_URL__/v1/traces
    metrics_endpoint: __MONEAT_BACKEND_URL__/v1/metrics
    logs_endpoint: __MONEAT_BACKEND_URL__/v1/logs
    headers:
      Authorization: Bearer ${MONEAT_OTLP_API_KEY}

service:
  pipelines:
    traces:
      receivers: [otlp]
      processors: [batch]
      exporters: [otlphttp/moneat]
    metrics:
      receivers: [otlp]
      processors: [batch]
      exporters: [otlphttp/moneat]
    logs:
      receivers: [otlp]
      processors: [batch]
      exporters: [otlphttp/moneat]

Service identity

Moneat uses OpenTelemetry resource attributes to associate telemetry with services, environments, and releases:

AttributeUse
service.namePrimary service identity
service.namespaceOptional namespace for grouping related services
service.versionRelease version
deployment.environment.nameEnvironment such as production or staging

If an observed service.name does not match an existing Moneat service, map it from Settings -> API Keys -> OpenTelemetry.

Next steps