Skip to content

Latest commit

 

History

History

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 

README.md

otelriver Build Status Go Reference

OpenTelemetry utilities for the River job queue.

See example_middleware_test.go for usage details.

Options

The middleware supports these options:

middleware := otelriver.NewMiddleware(&MiddlewareConfig{
    DurationUnit:                "ms",
    EnableSemanticMetrics:       true,
    EnableWorkSpanJobKindSuffix: true,
    MeterProvider:               meterProvider,
    TracerProvider:              tracerProvider,
})
  • DurationUnit: The unit which durations are emitted as, either "ms" (milliseconds) or "s" (seconds). Defaults to seconds.
  • EnableSemanticMetrics: Causes the middleware to emit metrics compliant with OpenTelemetry's "semantic conventions" for message clients. This has the effect of having all messaging systems share the same common metric names, with attributes differentiating them.
  • EnableWorkSpanJobKindSuffix: Appends the job kind a suffix to work spans so they look like river.work/my_job instead of river.work.
  • MeterProvider: Injected OpenTelemetry meter provider. The global meter provider is used by default.
  • TracerProvider: Injected OpenTelemetry tracer provider. The global tracer provider is used by default.

Use with DataDog

See using the OpenTelemetry API with DataDog and the examples in datadogriver for how to configure a DataDog OpenTelemetry tracer provider.