datadog-tracing-1.2.0: Datadog tracing client and mock agent.

Safe HaskellNone
LanguageHaskell2010

Datadog.Client

Description

An HTTP Client to post data to a datadog agent.

Many of our refinements are stricter than the actual requirements, to err on the side of caution, and because the actual requirements are very complex.

Synopsis

Documentation

newtype Agent m Source #

The Datadog Agent API, independent of any HTTP framework.

Constructors

Agent 

Fields

Instances
FFunctor Agent Source # 
Instance details

Defined in Datadog.Client

Methods

ffmap :: (Functor m, Functor n) => (forall a. m a -> n a) -> Agent m -> Agent n #

type AgentT m = Agent (ExceptT ServantError m) Source #

Allows users to opt-out of having a MonadError in their Monad stack. They opt-in to error handling at the points when calling the Agent. Requires users to handle errors at the point of use.

See https://discourse.haskell.org/t/local-capabilities-with-mtl/231

data HasAlpha Source #

Instances
Predicate HasAlpha Text Source # 
Instance details

Defined in Datadog.Client

Methods

validate :: Monad m => HasAlpha -> Text -> RefineT m () #

newtype MetaKey Source #

Constructors

MetaKey (Refined (DDText && Tag) Text) 
Instances
Eq MetaKey Source # 
Instance details

Defined in Datadog.Client

Methods

(==) :: MetaKey -> MetaKey -> Bool #

(/=) :: MetaKey -> MetaKey -> Bool #

Ord MetaKey Source # 
Instance details

Defined in Datadog.Client

Show MetaKey Source # 
Instance details

Defined in Datadog.Client

newtype MetaValue Source #

Constructors

MetaValue (Refined DDText Text) 
Instances
Eq MetaValue Source # 
Instance details

Defined in Datadog.Client

Show MetaValue Source # 
Instance details

Defined in Datadog.Client

newtype ServiceName Source #

Constructors

ServiceName (Refined (DDText && Tag) Text) 
Instances
Eq ServiceName Source # 
Instance details

Defined in Datadog.Client

Show ServiceName Source # 
Instance details

Defined in Datadog.Client

data Span Source #

Instances
Eq Span Source # 
Instance details

Defined in Datadog.Client

Methods

(==) :: Span -> Span -> Bool #

(/=) :: Span -> Span -> Bool #

Show Span Source # 
Instance details

Defined in Datadog.Client

Methods

showsPrec :: Int -> Span -> ShowS #

show :: Span -> String #

showList :: [Span] -> ShowS #

newtype SpanId Source #

Constructors

SpanId (Refined NonZero Word64) 
Instances
Eq SpanId Source # 
Instance details

Defined in Datadog.Client

Methods

(==) :: SpanId -> SpanId -> Bool #

(/=) :: SpanId -> SpanId -> Bool #

Show SpanId Source # 
Instance details

Defined in Datadog.Client

newtype SpanName Source #

Instances
Eq SpanName Source # 
Instance details

Defined in Datadog.Client

Show SpanName Source # 
Instance details

Defined in Datadog.Client

data Tag Source #

Instances
Predicate Tag Text Source # 
Instance details

Defined in Datadog.Client

Methods

validate :: Monad m => Tag -> Text -> RefineT m () #

data Trace Source #

Instances
Eq Trace Source # 
Instance details

Defined in Datadog.Client

Methods

(==) :: Trace -> Trace -> Bool #

(/=) :: Trace -> Trace -> Bool #

Show Trace Source # 
Instance details

Defined in Datadog.Client

Methods

showsPrec :: Int -> Trace -> ShowS #

show :: Trace -> String #

showList :: [Trace] -> ShowS #

newtype TraceId Source #

Constructors

TraceId (Refined NonZero Word64) 
Instances
Eq TraceId Source # 
Instance details

Defined in Datadog.Client

Methods

(==) :: TraceId -> TraceId -> Bool #

(/=) :: TraceId -> TraceId -> Bool #

Show TraceId Source # 
Instance details

Defined in Datadog.Client

newServantAgent :: (MonadIO m, MonadError ServantError m) => ClientEnv -> Agent m Source #

An Agent (or AgentT) implemented by Servant.