fix: Use standard env variables for opentelemtry (#2194)

Opentelemetry defines standard variables which are supported by multiple observability platforms.

[1] https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/sdk-environment-variables.md
[2] https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/protocol/exporter.md

By defining support for standard env vars, Fission open telemetry support can be leveraged with different
platforms such as NewRelic, SigNoz, DataDog etc.

Signed-off-by: Sanket Sudake <sanketsudake@gmail.com>
This commit is contained in:
Sanket Sudake
2021-09-16 17:48:26 +05:30
committed by GitHub
parent 33473a4528
commit 4a0bd1aa21
15 changed files with 253 additions and 250 deletions
+4 -3
View File
@@ -63,6 +63,7 @@ func Run(logger *zap.Logger) {
}
}
ctx := context.Background()
openTracingEnabled := tracing.TracingEnabled(logger)
if openTracingEnabled {
go func() {
@@ -71,17 +72,17 @@ func Run(logger *zap.Logger) {
}
}()
} else {
shutdown, err := otelUtils.InitProvider(logger, "Fission-Fetcher")
shutdown, err := otelUtils.InitProvider(ctx, logger, "Fission-Fetcher")
if err != nil {
logger.Fatal("error initializing provider for OTLP", zap.Error(err))
}
if shutdown != nil {
defer shutdown()
defer shutdown(ctx)
}
}
tracer := otel.Tracer("fetcher")
ctx, span := tracer.Start(context.Background(), "fetcher/Run")
ctx, span := tracer.Start(ctx, "fetcher/Run")
defer span.End()
f, err := fetcher.MakeFetcher(logger, dir, *secretDir, *configDir)