{-# LANGUAGE PatternSynonyms #-}
module OpenTelemetry.Processor
{-# DEPRECATED "use OpenTelemetry.Processor.Span instead" #-} (
Processor,
SpanProcessor (
Processor,
processorOnStart,
processorOnEnd,
processorShutdown,
processorForceFlush
),
ShutdownResult (..),
) where
import OpenTelemetry.Context (Context)
import OpenTelemetry.Internal.Trace.Types (ImmutableSpan)
import OpenTelemetry.Processor.Span
{-# DEPRECATED Processor "use SpanProcessor instead" #-}
type Processor = SpanProcessor
pattern Processor
:: (ImmutableSpan -> Context -> IO ())
-> (ImmutableSpan -> IO ())
-> IO ShutdownResult
-> IO FlushResult
-> SpanProcessor
pattern $bProcessor :: (ImmutableSpan -> Context -> IO ())
-> (ImmutableSpan -> IO ())
-> IO ShutdownResult
-> IO FlushResult
-> SpanProcessor
$mProcessor :: forall {r}.
SpanProcessor
-> ((ImmutableSpan -> Context -> IO ())
-> (ImmutableSpan -> IO ())
-> IO ShutdownResult
-> IO FlushResult
-> r)
-> ((# #) -> r)
-> r
Processor {SpanProcessor -> ImmutableSpan -> Context -> IO ()
processorOnStart, SpanProcessor -> ImmutableSpan -> IO ()
processorOnEnd, SpanProcessor -> IO ShutdownResult
processorShutdown, SpanProcessor -> IO FlushResult
processorForceFlush} =
SpanProcessor
{ spanProcessorOnStart = processorOnStart
, spanProcessorOnEnd = processorOnEnd
, spanProcessorShutdown = processorShutdown
, spanProcessorForceFlush = processorForceFlush
}