# Release Notes - v0.5.1 ## Observability Enhancements ### OTLP Metrics Support - **New `metrics/` package** - OpenTelemetry-native metrics with OTLP export support for structured metrics collection - **Centralized OTLP configuration** - Refactored configuration to `internal/tracerconfig/` to eliminate code duplication across tracing, logging, and metrics - **HTTP retry support** - Added consistent retry configuration for all HTTP OTLP exporters to improve reliability ### Enhanced Logging - **Buffering exporter** - Added OTLP log buffering to queue logs until tracing configuration is available - **TLS support for logs** - Client certificate authentication support for secure OTLP log export - **Improved logfmt formatting** - Better structured output for log messages ### Tracing Improvements - **HTTP retry support** - OTLP trace requests now automatically retry on failure when using HTTP transport ## Build System ### Version Package Enhancements - **Unix epoch build time support** - Build time can now be injected as Unix timestamps (`$(date +%s)`) in addition to RFC3339 format - **Simplified build commands** - Reduces complexity of ldflags injection while maintaining backward compatibility - **Consistent output format** - All build times normalize to RFC3339 format regardless of input ## API Changes ### New Public Interfaces - `metrics.NewMeterProvider()` - Create OTLP metrics provider with centralized configuration - `metrics.Shutdown()` - Graceful shutdown for metrics exporters - `internal/tracerconfig` - Shared OTLP configuration utilities (internal package) ### Dependencies - Added explicit OpenTelemetry metrics dependencies to `go.mod` - Updated tracing dependencies for retry support