hermod-tracing-core
Safe HaskellSafe-Inferred
LanguageHaskell2010

Hermod.Tracing.Tracer.Forward

Synopsis

Documentation

data HowToConnect Source #

Constructors

LocalPipe !FilePath

Local pipe (UNIX or Windows).

RemoteSocket !Host !Port

Remote socket (host and port).

Instances

Instances details
FromJSON HowToConnect Source # 
Instance details

Defined in Hermod.Tracing.Tracer.Forward

Methods

parseJSON :: Value -> Parser HowToConnect

parseJSONList :: Value -> Parser [HowToConnect]

omittedField :: Maybe HowToConnect

ToJSON HowToConnect Source # 
Instance details

Defined in Hermod.Tracing.Tracer.Forward

Methods

toJSON :: HowToConnect -> Value

toEncoding :: HowToConnect -> Encoding

toJSONList :: [HowToConnect] -> Value

toEncodingList :: [HowToConnect] -> Encoding

omitField :: HowToConnect -> Bool

Generic HowToConnect Source # 
Instance details

Defined in Hermod.Tracing.Tracer.Forward

Associated Types

type Rep HowToConnect :: Type -> Type Source #

Show HowToConnect Source # 
Instance details

Defined in Hermod.Tracing.Tracer.Forward

NFData HowToConnect Source # 
Instance details

Defined in Hermod.Tracing.Tracer.Forward

Methods

rnf :: HowToConnect -> () Source #

Eq HowToConnect Source # 
Instance details

Defined in Hermod.Tracing.Tracer.Forward

type Rep HowToConnect Source # 
Instance details

Defined in Hermod.Tracing.Tracer.Forward

type Rep HowToConnect = D1 ('MetaData "HowToConnect" "Hermod.Tracing.Tracer.Forward" "hermod-tracing-core-1.0.0-3AGmFuCq3qp5M1u5yyD0b6" 'False) (C1 ('MetaCons "LocalPipe" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 FilePath)) :+: C1 ('MetaCons "RemoteSocket" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Host) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 Port)))

type Host = Text Source #

Specifies how to connect to the peer.

Taken from ekg-forward:System.Metrics.Configuration, to avoid dependency.

forwardTracer :: forall m. MonadIO m => (TraceObject -> IO ()) -> Trace m FormattedMessage Source #

It is mandatory to construct only one forwardTracer tracer in any application! Throwing away a forwardTracer tracer and using a new one will result in an exception