Repository navigation
Add separate telemetry package - #2485
cedric-cordenier wants to merge 8 commits into
Conversation
|
e2cc8f0 to
c8412dc
Compare
There was a problem hiding this comment.
⚠️ Performance Alert ⚠️
Possible performance regression was detected for benchmark.
Benchmark result of this commit is worse than the previous benchmark result exceeding threshold 2.
| Benchmark suite | Current: c8412dc | Previous: d7aa0a4 | Ratio |
|---|---|---|---|
BenchmarkKeystore_Sign/nop/in-process |
851.4 ns/op |
355.7 ns/op |
2.39 |
This comment was automatically generated by workflow using github-action-benchmark.
Tracing, beholder and chip ingress configuration moves out of EnvConfig and Server into a package of its own, so it can be used without loop.Server: - TelemetryConfig holds the Tracing*, Telemetry* and ChipIngress* fields and is embedded in EnvConfig, so they're still promoted. Its env is written by AsCmdEnv and read by Parse, under the same names. - NewTelemetry builds the tracing config and beholder client that Server.start built inline. Telemetry is a service that installs the client as the global when built and puts the previous one back when closed; Server holds it in place of the bare client. - TracingConfig and SetupTracing move too; loop keeps an alias and a forwarding func. Env var names and parsing are unchanged. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The instance ID was written into the EnvConfig's own map. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
A nil TelemetryMetricCardinalityLimit was dereferenced. Parse always sets it when telemetry is enabled, but a TelemetryConfig built any other way needn't. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
With singular toml keys, x/config/cli reads each map entry from the env var AsCmdEnv writes (CL_TRACING_ATTRIBUTE_<k>, CL_TELEMETRY_ATTRIBUTE_<k>), and TelemetryAuthHeaders no longer claims CL_TELEMETRY_AUTH_HEADERS_TTL. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Auth headers were written as CL_TELEMETRY_AUTH_HEADER<key>, which x/config/cli can't read. AsCmdEnv now writes CL_TELEMETRY_AUTH_HEADER_<key> as well, and Parse reads that form first, falling back to the old one so older hosts and LOOPs keep working. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
NewTelemetry checked only for an endpoint. Parse leaves the endpoint blank when CL_TELEMETRY_ENABLED is false, but hosts set it either way, so a reader that decodes every env var, such as x/config/cli, would start a beholder client a LOOP wouldn't. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
c8412dc to
9704e65
Compare
Requires
Supports