type errorHandlerHolder … type tracerProviderHolder … type propagatorsHolder … type meterProviderHolder … var globalErrorHandler … var globalTracer … var globalPropagators … var globalMeterProvider … var delegateErrorHandlerOnce … var delegateTraceOnce … var delegateTextMapPropagatorOnce … var delegateMeterOnce … // GetErrorHandler returns the global ErrorHandler instance. // // The default ErrorHandler instance returned will log all errors to STDERR // until an override ErrorHandler is set with SetErrorHandler. All // ErrorHandler returned prior to this will automatically forward errors to // the set instance instead of logging. // // Subsequent calls to SetErrorHandler after the first will not forward errors // to the new ErrorHandler for prior returned instances. func GetErrorHandler() ErrorHandler { … } // SetErrorHandler sets the global ErrorHandler to h. // // The first time this is called all ErrorHandler previously returned from // GetErrorHandler will send errors to h instead of the default logging // ErrorHandler. Subsequent calls will set the global ErrorHandler, but not // delegate errors to h. func SetErrorHandler(h ErrorHandler) { … } // TracerProvider is the internal implementation for global.TracerProvider. func TracerProvider() trace.TracerProvider { … } // SetTracerProvider is the internal implementation for global.SetTracerProvider. func SetTracerProvider(tp trace.TracerProvider) { … } // TextMapPropagator is the internal implementation for global.TextMapPropagator. func TextMapPropagator() propagation.TextMapPropagator { … } // SetTextMapPropagator is the internal implementation for global.SetTextMapPropagator. func SetTextMapPropagator(p propagation.TextMapPropagator) { … } // MeterProvider is the internal implementation for global.MeterProvider. func MeterProvider() metric.MeterProvider { … } // SetMeterProvider is the internal implementation for global.SetMeterProvider. func SetMeterProvider(mp metric.MeterProvider) { … } func defaultErrorHandler() *atomic.Value { … } func defaultTracerValue() *atomic.Value { … } func defaultPropagatorsValue() *atomic.Value { … } func defaultMeterProvider() *atomic.Value { … }