Skip to content

Add OpenTelemetry instrumentation for otel.exporter - #1005

Open
o11y-one-temp-app[bot] wants to merge 1 commit into
mainfrom
o11y/instrument/otel.exporter/01a18c8c835f75b1a59e32429654580f/0f24d5b
Open

o11y-one-temp-app[bot] wants to merge 1 commit into
mainfrom
o11y/instrument/otel.exporter/01a18c8c835f75b1a59e32429654580f/0f24d5b

Conversation

@o11y-one-temp-app

Copy link
Copy Markdown

o11y.one found these telemetry gaps in containerish/OpenRegistry at 0f24d5b. Fix run 01a18c8c-835f-75b1-a59e-32429654580f, agent run 01a18c8c-8364-7052-8093-f5178492dddc.

Gaps fixed

  • otel.exporter at telemetry/otel/otel.go:21

Dependencies

Pinned by o11y.one's recipes; no model chose a version:

  • go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracehttp v1.38.0

Configuration

The SDK reads these where the service runs; nothing in the code sets them, and .env.example lists them with placeholders. A Go binary built from its repository carries its own commit. Any other build names the deployed commit as vcs.ref.head.revision in OTEL_RESOURCE_ATTRIBUTES, so o11y.one marks its deploys.

  • OTEL_EXPORTER_OTLP_ENDPOINT=http://127.0.0.1:14318
  • OTEL_EXPORTER_OTLP_HEADERS=x-o11y-key=<ingestion key>
  • OTEL_SERVICE_NAME=openregistry

Verification

o11y.one built these edits in a sandbox before opening this pull request, and every step passed.

  • lock in the repository's root: passed
  • compile in the repository's root: passed
  • check in the repository's root: passed

The build refreshed go.mod, go.sum, committed here as generated by the build, not written by a model.

It moved these dependencies outside OpenTelemetry:

  • github.com/labstack/echo/v4 v4.13.3 to v4.13.4
  • golang.org/x/crypto v0.32.0 to v0.41.0
  • golang.org/x/net v0.34.0 to v0.43.0
  • golang.org/x/oauth2 v0.25.0 to v0.30.0
  • google.golang.org/protobuf v1.36.3 to v1.36.8

Source sent to a model vendor

openai read env-vars.example, go.mod, telemetry/otel/otel.go.

o11y.one does not push to this branch again.

@o11y-one-temp-app

Copy link
Copy Markdown
Author

o11y.one telemetry

No new telemetry gaps in this pull request.

5 gaps this pull request did not add
  • otel.exporter: Nothing points the OTLP exporter at o11y.one. Set OTEL_EXPORTER_OTLP_ENDPOINT=https://otlp.o11y.one and OTEL_EXPORTER_OTLP_HEADERS=x-o11y-key=<ingestion key> where the service runs, and leave the exporter to read them.
    • telemetry/otel/otel.go line 29
  • service.name: Set service.name on the SDK resource, or OTEL_SERVICE_NAME in the deployment. Without it spans arrive as unknown_service.
    • telemetry/otel/otel.go line 29
  • service.version: Set service.version on the SDK resource so deployments and regressions line up.
    • telemetry/otel/otel.go line 29
  • service.namespace: Set service.namespace on the SDK resource to group this service with its siblings.
    • telemetry/otel/otel.go line 29
  • deployment.environment.name: Set deployment.environment.name on the SDK resource so staging and production stay apart. The older deployment.environment key does not count.
    • telemetry/otel/otel.go line 29

Not scanned, language not covered: env-vars.example, go.mod, go.sum.

Create stacked PR on the o11y.one telemetry check opens a pull request into this branch that adds the instrumentation; the author or a repository admin may click it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants