Skip to content

Commit c811e15

Browse files
authored
Fix OTEL setup when OTEL endpoint is not set (#280)
1 parent 08fea63 commit c811e15

File tree

2 files changed

+20
-9
lines changed

2 files changed

+20
-9
lines changed

cmd/main.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,8 +43,8 @@ func main() {
4343
otelInstaller := &qphttp.OTelInstaller{}
4444

4545
// TODO: use standard OTEL_EXPORTER_OTLP_ENDPOINT env var
46-
otlpEndpoint, otelEnabled := os.LookupEnv("QUICKPIZZA_OTLP_ENDPOINT")
47-
if otelEnabled {
46+
otlpEndpoint, _ := os.LookupEnv("QUICKPIZZA_OTLP_ENDPOINT")
47+
if otlpEndpoint != "" {
4848
ctx, cancel := context.WithCancel(context.Background())
4949
defer cancel()
5050

pkg/http/otel.go

Lines changed: 18 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -192,14 +192,25 @@ func (t *OTelInstaller) Install(r chi.Router, serviceComponent string, extraOpts
192192
}
193193

194194
ctx := context.Background()
195-
tp, err := createTraceProvider(ctx, t.endpoint, protocol, res)
196-
if err != nil {
197-
return fmt.Errorf("creating trace provider: %w", err)
198-
}
195+
var tp trace.TracerProvider
196+
var mp *sdkmetric.MeterProvider
197+
var err error
199198

200-
mp, err := createMetricProvider(ctx, t.endpoint, protocol, res)
201-
if err != nil {
202-
return fmt.Errorf("creating metric provider: %w", err)
199+
if t.endpoint == nil {
200+
// If endpoint is nil, use no-op providers (local tracing only)
201+
tp = sdktrace.NewTracerProvider()
202+
mp = sdkmetric.NewMeterProvider()
203+
} else {
204+
// Create providers that export to the configured endpoint
205+
tp, err = createTraceProvider(ctx, t.endpoint, protocol, res)
206+
if err != nil {
207+
return fmt.Errorf("creating trace provider: %w", err)
208+
}
209+
210+
mp, err = createMetricProvider(ctx, t.endpoint, protocol, res)
211+
if err != nil {
212+
return fmt.Errorf("creating metric provider: %w", err)
213+
}
203214
}
204215

205216
if !t.installed {

0 commit comments

Comments
 (0)