You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Browse filesBrowse the repository at this point in the historyBrowse files
authored
fix(telemetry): report tracesUrl and explain trace disconnects (#534)
* fix(telemetry): report tracesUrl and explain trace disconnects
The agent never populated tracesUrl, and never said why traces were down.
tracesUrl: the legacy sink passed clickhouse_url (CLICKHOUSE_HOST) into
get_trace_url(); the Go port hardcoded that path to "" on the premise that we
no longer run a local ClickHouse. main.go does read and probe CLICKHOUSE_HOST,
so the premise was stale and the field shipped empty for every otel_clickhouse
cluster. That left agent_service.go's `TracesUrl != nil` gate permanently
closed, so the trace-table config was never written and Last9 clusters resolved
`otel_traces` instead of `otel.traces`. Add isClickHouseEnabled as the
otel_clickhouse counterpart of isJaegerEnabled, and report the host.
ClickHouse is checked last in traceURL rather than first as in the legacy: the
legacy order returns the ClickHouse host even when TRACE_TABLE makes the
provider bigquery, and the backend then quotes that host as a BigQuery table.
It is also deliberately not used by traceStatus — gating tracesEnabled on the
URL would turn traces off for TRACES_ENABLED=true-without-host, a config the
agent supports for external ClickHouse it cannot probe.
tracesConnectionError: the field was declared (agent_service.go) and rendered
(agentHealth.jsx renderReason) but emitted by nobody, so a Disconnected Traces
pill never showed a reason. probeClickhouse now returns one alongside the
status; httpProbe is split over a new httpProbeErr so the failure survives,
leaving its other callers untouched. Credentials in a URL-form CLICKHOUSE_HOST
are stripped before the reason ships, since it renders verbatim in the UI.
The field intentionally omits `omitempty`: the collector merges activity_stats
into connection_status with jsonb `||`, so an omitted key leaves the previous
value in place. A recovered ClickHouse must post an explicit "" to clear the
stale reason.
Fixes #34231
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
* chore: update image tags for main release
---------
Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
0 commit comments