File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 11import "@opentelemetry/api-logs"
2- import initializeLogs , { openTelemetryClientLogsProvider } from "@core/util/open-telemetry-logs"
3- import initializeTraces , { openTelemetryClientTracesProvider } from "@core/util/open-telemetry-traces"
4- import { logs } from "@opentelemetry/api-logs"
5- import { trace } from "@opentelemetry/api"
2+ import { ClientOtelConfig } from "@core/util/open-telemetry"
3+ import { initializeClientLogs } from "@core/util/open-telemetry-logs"
4+ import { initializeClientTraces } from "@core/util/open-telemetry-traces"
65
7- initializeLogs ( "client" )
8- if ( openTelemetryClientLogsProvider ) logs . setGlobalLoggerProvider ( openTelemetryClientLogsProvider )
9-
10- initializeTraces ( "client" )
11- if ( openTelemetryClientTracesProvider ) trace . setGlobalTracerProvider ( openTelemetryClientTracesProvider )
6+ // The browser OpenTelemetry configuration is fetched from the server at runtime
7+ // (see /api/config) instead of relying on build-time inlined NEXT_PUBLIC_*
8+ // variables, so the collector endpoints can be changed without rebuilding.
9+ fetch ( "/api/config" )
10+ . then ( ( response ) => response . json ( ) )
11+ . then ( ( config : ClientOtelConfig ) => {
12+ initializeClientLogs ( config )
13+ initializeClientTraces ( config )
14+ } )
15+ . catch ( ( ) => {
16+ // Telemetry is best-effort; ignore config fetch/initialization failures.
17+ } )
You can’t perform that action at this time.
0 commit comments