Skip to content

ci: add weaver live-check workflow for SDK self-observability metrics#3565

Draft
cijothomas wants to merge 6 commits into
open-telemetry:mainfrom
cijothomas:cijothomas/sdk-self-obs-live-check
Draft

ci: add weaver live-check workflow for SDK self-observability metrics#3565
cijothomas wants to merge 6 commits into
open-telemetry:mainfrom
cijothomas:cijothomas/sdk-self-obs-live-check

Conversation

@cijothomas

Copy link
Copy Markdown
Member

Towards #3553.

Adds a weaver registry live-check CI workflow that validates SDK self-observability metrics (otel.sdk.log.created, otel.sdk.processor.log.processed, exporter metrics, etc.) against the upstream semantic conventions registry on every PR that touches the SDK or OTLP exporter.

Changes

  • New workflow .github/workflows/sdk-self-observability.yml using the upstream weaver-live-check-{start,stop} composite actions (v0.24.0). Validates against semconv v1.42.0. fail-on: violation.
  • New examples/self-obs-live-check/ — purpose-built binary that creates a LoggerProvider with BatchLogProcessor + OTLP gRPC exporter, emits log records, waits for the periodic metric export, and shuts down cleanly. This exercises the SDK's self-obs metrics end-to-end.

Pattern

Follows the same approach as opentelemetry-rust-contrib#613 (tower instrumentation live-check): no in-tree registry, validates directly against the published upstream semconv, uses a dedicated app as the telemetry source.

Not yet a required status check

The workflow runs on PR/push/merge_group but is not in the required checks list. Promote once the gate is proven stable, consistent with the staged rollout used in otel-arrow.

@cijothomas cijothomas added enhancement New feature or request github_actions Pull requests that update GitHub Actions code labels Jun 23, 2026
@codecov

codecov Bot commented Jun 23, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 82.9%. Comparing base (1b3846c) to head (ba6bd22).

Additional details and impacted files
@@          Coverage Diff          @@
##            main   #3565   +/-   ##
=====================================
  Coverage   82.9%   82.9%           
=====================================
  Files        130     130           
  Lines      27768   27768           
=====================================
  Hits       23040   23040           
  Misses      4728    4728           

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

- Switch LoggerProvider from OTLP to InMemoryLogExporter so app log
  records don't reach weaver (they carry app-specific attributes that
  aren't in the semconv registry). Logs still flow through the BLP,
  exercising otel.sdk.log.created and otel.sdk.processor.log.processed.
- Add 'Print live-check findings' step that parses the JSON report and
  prints violations as ::error:: annotations directly in the CI log.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request github_actions Pull requests that update GitHub Actions code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant