Guide

OpenTelemetry (OTLP)

jentry is an OTLP/HTTP-native backend: point any OpenTelemetry SDK or Collector at your project and traces flow into the same APM as everything else. Both encodings — http/protobuf (SDK default) and http/json — are accepted.

SDK setup (any language)

export OTEL_EXPORTER_OTLP_TRACES_ENDPOINT="https://jentry.app/api/<projectId>/otlp/v1/traces"
export OTEL_EXPORTER_OTLP_HEADERS="x-jentry-key=<publicKey>"

Collector fan-out

exporters:
  otlphttp/jentry:
    traces_endpoint: https://jentry.app/api/<projectId>/otlp/v1/traces
    headers:
      x-jentry-key: <publicKey>
service:
  pipelines:
    traces:
      receivers: [otlp]
      exporters: [otlphttp/jentry]   # add alongside your existing exporters

How spans become APM

  • Within each resource batch, a span whose parent isn't in the batch becomes a transaction; its descendants become the transaction's span tree.
  • Semantic conventions drive grouping: db.system → db/cache spans (db.statement kept as description), http.request.method + url.full → http.client/server, messaging.system → queue.publish/process.
  • service.version → release, deployment.environment → environment, service.name → a service tag.
  • OTel status + HTTP status map to span status — 4xx/5xx show red in the waterfall even when OTel leaves status UNSET.
  • Responses follow the OTLP spec: empty success, partialSuccess with rejected counts, 429 + Retry-After for throttling.
Sampling is SDK/Collector-side (OTEL_TRACES_SAMPLER). jentry stores what arrives and never bills overage — excess beyond plan quota is shed.

Try jentry free

Hosted error tracking & performance monitoring. Works with your Sentry SDKs — send your first event in minutes.

jentry Docs — OpenTelemetry / OTLP setup