in pkg/otel_setup.go [217:246]
func gracefullyShutdown(ctx context.Context) {
if metricsProvider != nil {
mp, ok := metricsProvider.(*metric.MeterProvider)
if ok {
if err := mp.Shutdown(ctx); err != nil {
log.Printf("%s: %v", "Failed to shutdown the OpenTelemetry metric provider", err)
}
}
}
if traceProvider != nil {
if err := traceProvider.Shutdown(ctx); err != nil {
log.Printf("%s: %v", "Failed to shutdown the OpenTelemetry trace provider", err)
}
}
if spanExporter != nil {
if err := spanExporter.Shutdown(ctx); err != nil {
log.Printf("%s: %v", "Failed to shutdown the OpenTelemetry span exporter", err)
}
}
if metricExporter != nil {
if err := metricExporter.Shutdown(ctx); err != nil {
log.Printf("%s: %v", "Failed to shutdown the OpenTelemetry metric exporter", err)
}
}
if batchSpanProcessor != nil {
if err := batchSpanProcessor.Shutdown(ctx); err != nil {
log.Printf("%s: %v", "Failed to shutdown the OpenTelemetry batch span processor", err)
}
}
}