What counts as a problem
- Logs with severity ERROR or higher.
- Traces with an
exceptionspan event, or a SERVER span that answered 5xx. - Metrics:
http.server.request.duration(orhttp.server.duration) histograms with delta temporality become request counts per route and status, so the 5xx floor works. Cumulative points are skipped.
Exporter settings
OTEL_EXPORTER_OTLP_ENDPOINT=https://events.pagerless.dev/v1/otlp
OTEL_EXPORTER_OTLP_PROTOCOL=http/protobuf
OTEL_EXPORTER_OTLP_HEADERS="Authorization=Bearer pl_live_..."
OTEL_EXPORTER_OTLP_METRICS_TEMPORALITY_PREFERENCE=deltahttp/json works too, gzip-compressed or not. gRPC is not accepted: use OTLP over HTTP. Paths: /v1/otlp/v1/logs, /v1/otlp/v1/traces, /v1/otlp/v1/metrics. A partly bad batch returns 200 with partial-success counts.
Through an OpenTelemetry Collector
otel-collector.yaml
receivers:
otlp:
protocols:
grpc:
http:
exporters:
otlphttp/pagerless:
endpoint: https://events.pagerless.dev/v1/otlp
headers:
Authorization: "Bearer ${env:PAGERLESS_KEY}"
service:
pipelines:
logs:
receivers: [otlp]
exporters: [otlphttp/pagerless]
traces:
receivers: [otlp]
exporters: [otlphttp/pagerless]