Namespace Kuestenlogik.Bowire.Telemetry

Classes

BowireTelemetry

Canonical OpenTelemetry surface for Bowire (issue #29). A single ActivitySource and a single Meter with the stable name Kuestenlogik.Bowire so every consumer -- host pipelines that pick up Bowire's traces / metrics via WithTracing().AddSource(...) and WithMetrics().AddMeter(...) -- references one name and receives every Bowire-domain signal we ever emit.

BowireTelemetryOptions

Configuration knobs for Bowire's self-telemetry seam (#29). Bound from Bowire:Telemetry by the optional AddBowireTelemetry helper in Kuestenlogik.Bowire.Extension.Telemetry; the CLI's --telemetry / --telemetry-strip-method-labels flags feed the same keys via an in-memory configuration overlay.

BowireTelemetryServiceCollectionExtensions

DI helpers for Bowire's self-telemetry seam (#29). Idempotent -- re-calling AddBowireTelemetry(IServiceCollection, IConfiguration, Action<BowireTelemetryOptions>?) is a no-op rather than registering a duplicate. Embedded hosts that already wire OTel themselves can skip these helpers entirely and just add Bowire's Source / Meter to their existing pipeline:

builder.Services.AddOpenTelemetry()
  .WithMetrics(m => m.AddMeter(BowireTelemetry.MeterName))
  .WithTracing(t  => t.AddSource(BowireTelemetry.ActivityName));