Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Freckle.App.OpenTelemetry.Context
Synopsis
- class HasHeaders a where
- newtype CustomTraceContext = CustomTraceContext {
- traceHeaders :: [(Text, Text)]
- extractContext :: (MonadIO m, MonadTracer m, HasHeaders a) => a -> m ()
- injectContext :: (MonadIO m, MonadTracer m, HasHeaders a) => a -> m a
- processWithContext :: (MonadUnliftIO m, MonadMask m, MonadTracer m, HasHeaders a, HasCallStack) => Text -> SpanArguments -> a -> (a -> m b) -> m b
Documentation
class HasHeaders a where Source #
Instances
newtype CustomTraceContext Source #
A type that can be stored as the custom
field of a Faktory Job
Constructors
CustomTraceContext | |
Fields
|
Instances
extractContext :: (MonadIO m, MonadTracer m, HasHeaders a) => a -> m () Source #
Update our trace context from that extracted from the given item's headers
injectContext :: (MonadIO m, MonadTracer m, HasHeaders a) => a -> m a Source #
Inject our trace context into the given item's headers
Arguments
:: (MonadUnliftIO m, MonadMask m, MonadTracer m, HasHeaders a, HasCallStack) | |
=> Text | Span name |
-> SpanArguments | |
-> a | |
-> (a -> m b) | |
-> m b |
Process an item (a request, a Job, etc) in a top-level span and context