Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func InitializeTelemetryFromEnv ¶
func InitializeTelemetryFromEnv(cfg TelemetryConfig) (api.Provider, error)
InitializeTelemetryFromEnv creates a telemetry provider from environment variables. It reads the following environment variables:
- OTEL_ENABLE_TRACES: Enable distributed tracing (default: false or TelemetryConfig.DefaultEnabled)
- OTEL_ENABLE_METRICS: Enable metrics collection (default: false or TelemetryConfig.DefaultEnabled)
- OTEL_SERVICE_NAME: Service name for telemetry (default: TelemetryConfig.ServiceName)
- OTEL_SERVICE_VERSION: Service version (default: "1.0.0")
- OTEL_SERVICE_ENVIRONMENT: Environment name (default: "dev")
- OTEL_SAMPLING_TYPE: Sampling type - "traceid" or "always" (default: "traceid")
- OTEL_SAMPLING_RATIO: Sampling ratio 0.0-1.0 (default: 1.0)
- ELASTIC_APM_SERVER_URL: Elastic APM server URL (default: "http://apm-server:8200")
- ELASTIC_APM_SECRET_TOKEN: Elastic APM secret token (default: "")
Returns nil provider if both traces and metrics are disabled.
func ShutdownTelemetry ¶
ShutdownTelemetry gracefully shuts down the telemetry provider. It's safe to call with a nil provider.
Types ¶
type TelemetryConfig ¶
type TelemetryConfig struct {
// ServiceName is the name of the service for telemetry identification
ServiceName string
// DefaultEnabled determines if telemetry is enabled by default when env vars are not set
DefaultEnabled bool
}
TelemetryConfig holds telemetry configuration options
Click to show internal directories.
Click to hide internal directories.