Class BowireTelemetryOptions
- Namespace
- Kuestenlogik.Bowire.Telemetry
- Assembly
- Kuestenlogik.Bowire.dll
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.
public sealed class BowireTelemetryOptions
- Inheritance
-
BowireTelemetryOptions
- Inherited Members
Remarks
Off by default: a laptop user running bowire --url ...
shouldn't see any OTel exporter activity. Operators of a shared
multi-tenant install opt in by setting
Bowire:Telemetry:Enabled=true (or passing
--telemetry) and pointing OTEL_EXPORTER_OTLP_ENDPOINT
at their collector.
Wire endpoint, headers, protocol, &c. come from the standard
OTEL_* environment variables -- Bowire doesn't introduce
its own re-naming of OTel's vocabulary. That keeps existing
Prometheus / Loki / Tempo deploys plug-and-play.
Constructors
BowireTelemetryOptions()
public BowireTelemetryOptions()
Properties
Enabled
Master switch. false (default) skips OTel registration
entirely -- no exporter threads, no listeners. true
wires AddOpenTelemetry().WithMetrics().WithTracing()
against BowireTelemetry's Source and Meter.
public bool Enabled { get; set; }
Property Value
StripMethodLabels
Drop the high-cardinality service + method
dimensions from emitted metrics when true. Shared
multi-tenant installs (or anything covered by GDPR / HIPAA /
SOX) almost always want this on -- the per-method histogram
bin's value is way too high a price for the privacy-leakage
risk in regulated environments. Defaults false to keep
the per-method breakdown that operators on private networks
want.
public bool StripMethodLabels { get; set; }