Documentation
¶
Index ¶
- Constants
- Variables
- func InitMetrics(ctx context.Context, nodeId string, cfg config.MetricsConfig, ...) (metric.Meter, error)
- func InitTracer(ctx context.Context, nodeId string, cfg config.TracingConfig, ...) (trace.Tracer, *sdktrace.TracerProvider, error)
- func InitializeMetricsInObservability(ctx context.Context, meter metric.Meter, logger logger.Logger) error
- type NoopObserver
- type Observability
- func (o *Observability) EmitServiceStateChangeTrace(ctx context.Context, serviceType, previousState, newState string)
- func (o *Observability) RecordServiceStateChange(ctx context.Context, serviceType, state string)
- func (o *Observability) Shutdown(ctx context.Context) error
- func (o *Observability) StartSpan(ctx context.Context, name string) (context.Context, trace.Span)
- type Observer
Constants ¶
View Source
const ServiceName = "fdb"
Variables ¶
View Source
var ServiceStateCounter metric.Int64Counter
ServiceStateCounter is a counter for service state changes.
Functions ¶
func InitMetrics ¶
func InitMetrics(ctx context.Context, nodeId string, cfg config.MetricsConfig, logger logger.Logger) (metric.Meter, error)
InitMetrics initializes OpenTelemetry metrics.
func InitTracer ¶
func InitTracer(ctx context.Context, nodeId string, cfg config.TracingConfig, logger logger.Logger) (trace.Tracer, *sdktrace.TracerProvider, error)
InitTracer initializes OpenTelemetry tracing.
Types ¶
type NoopObserver ¶
type NoopObserver struct{}
NoopObserver is a no-operation implementation of the Observer interface
type Observability ¶
type Observability struct { Logger logger.Logger Meter metric.Meter Tracer trace.Tracer TracerProvider *sdktrace.TracerProvider ServiceName string }
Observability encapsulates metrics, tracing, and logging.
func G ¶
func G() *Observability
func Initialize ¶
func (*Observability) EmitServiceStateChangeTrace ¶
func (o *Observability) EmitServiceStateChangeTrace(ctx context.Context, serviceType, previousState, newState string)
EmitServiceStateChangeTrace emits a trace when a service state changes.
func (*Observability) RecordServiceStateChange ¶
func (o *Observability) RecordServiceStateChange(ctx context.Context, serviceType, state string)
RecordServiceStateChange records a service state change event.
type Observer ¶
type Observer interface { // StartSpan starts a new span and returns the new context and span StartSpan(ctx context.Context, name string) (context.Context, trace.Span) }
Observer defines the interface for observability capabilities
func NewNoopObserver ¶
func NewNoopObserver() Observer
NewNoopObserver creates a new no-operation observer
Click to show internal directories.
Click to hide internal directories.