trace-dispatcher-2.5.2: Tracers for Cardano
Safe HaskellSafe-Inferred
LanguageHaskell2010

Cardano.Logging.Types

Synopsis

Documentation

newtype Trace m a Source #

The Trace carries the underlying tracer Tracer from the contra-tracer package. It adds a LoggingContext and maybe a TraceControl to every message.

Constructors

Trace 

Instances

Instances details
Monad m => Contravariant (Trace m) Source #

Contramap lifted to Trace

Instance details

Defined in Cardano.Logging.Types

Methods

contramap :: (a' -> a) -> Trace m a -> Trace m a' Source #

(>$) :: b -> Trace m b -> Trace m a Source #

Monad m => Monoid (Trace m a) Source # 
Instance details

Defined in Cardano.Logging.Types

Methods

mempty :: Trace m a Source #

mappend :: Trace m a -> Trace m a -> Trace m a Source #

mconcat :: [Trace m a] -> Trace m a Source #

Monad m => Semigroup (Trace m a) Source #

tr1 <> tr2 will run tr1 and then tr2 with the same input.

Instance details

Defined in Cardano.Logging.Types

Methods

(<>) :: Trace m a -> Trace m a -> Trace m a Source #

sconcat :: NonEmpty (Trace m a) -> Trace m a Source #

stimes :: Integral b => b -> Trace m a -> Trace m a Source #

class LogFormatting a where Source #

Every message needs this to define how to represent itself

Minimal complete definition

forMachine

Methods

forMachine :: DetailLevel -> a -> Object Source #

Machine readable representation with the possibility to represent with different details based on the detail level. No machine readable representation as default

forHuman :: a -> Text Source #

Human readable representation. No human representation is represented by the empty text The default implementation returns no human representation

forHumanOrMachine :: a -> Text Source #

asMetrics :: a -> [Metric] Source #

Metrics representation. No metrics by default

data Metric Source #

Constructors

IntM Text Integer

An integer metric. Text is used to name the metric

DoubleM Text Double

A double metric. Text is used to name the metric

CounterM Text (Maybe Int)

A counter metric. Text is used to name the metric

Instances

Instances details
Show Metric Source # 
Instance details

Defined in Cardano.Logging.Types

Eq Metric Source # 
Instance details

Defined in Cardano.Logging.Types

emptyObject :: HashMap Text a Source #

A helper function for creating an empty |Object|.

newtype Documented a Source #

Constructors

Documented 

Fields

Instances

Instances details
Semigroup (Documented a) Source # 
Instance details

Defined in Cardano.Logging.Types

Show (Documented a) Source # 
Instance details

Defined in Cardano.Logging.Types

data DocMsg a Source #

Document a message by giving a prototype, its most special name in the namespace and a comment in markdown format

Constructors

DocMsg 

Instances

Instances details
Show (DocMsg a) Source # 
Instance details

Defined in Cardano.Logging.Types

data LoggingContext Source #

Context any log message carries

Instances

Instances details
Generic LoggingContext Source # 
Instance details

Defined in Cardano.Logging.Types

Associated Types

type Rep LoggingContext :: Type -> Type Source #

Show LoggingContext Source # 
Instance details

Defined in Cardano.Logging.Types

Serialise LoggingContext Source # 
Instance details

Defined in Cardano.Logging.Types

type Rep LoggingContext Source # 
Instance details

Defined in Cardano.Logging.Types

type Rep LoggingContext = D1 ('MetaData "LoggingContext" "Cardano.Logging.Types" "trace-dispatcher-2.5.2-inplace" 'False) (C1 ('MetaCons "LoggingContext" 'PrefixI 'True) ((S1 ('MetaSel ('Just "lcNSInner") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Text]) :*: S1 ('MetaSel ('Just "lcNSPrefix") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Text])) :*: (S1 ('MetaSel ('Just "lcSeverity") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe SeverityS)) :*: (S1 ('MetaSel ('Just "lcPrivacy") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe Privacy)) :*: S1 ('MetaSel ('Just "lcDetails") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe DetailLevel))))))

data Namespace a Source #

A unique identifier for every message, composed of text A namespace can as well appear with the tracer name (e.g. ChainDB.OpenEvent.OpenedDB), or more prefixes, in this moment it is a NamespaceOuter is used

Constructors

Namespace 

Fields

Instances

Instances details
Show (Namespace a) Source # 
Instance details

Defined in Cardano.Logging.Types

Eq (Namespace a) Source # 
Instance details

Defined in Cardano.Logging.Types

data DetailLevel Source #

Formerly known as verbosity

Instances

Instances details
FromJSON DetailLevel Source # 
Instance details

Defined in Cardano.Logging.Types

ToJSON DetailLevel Source # 
Instance details

Defined in Cardano.Logging.Types

Bounded DetailLevel Source # 
Instance details

Defined in Cardano.Logging.Types

Enum DetailLevel Source # 
Instance details

Defined in Cardano.Logging.Types

Generic DetailLevel Source # 
Instance details

Defined in Cardano.Logging.Types

Associated Types

type Rep DetailLevel :: Type -> Type Source #

Show DetailLevel Source # 
Instance details

Defined in Cardano.Logging.Types

Eq DetailLevel Source # 
Instance details

Defined in Cardano.Logging.Types

Ord DetailLevel Source # 
Instance details

Defined in Cardano.Logging.Types

Serialise DetailLevel Source # 
Instance details

Defined in Cardano.Logging.Types

type Rep DetailLevel Source # 
Instance details

Defined in Cardano.Logging.Types

type Rep DetailLevel = D1 ('MetaData "DetailLevel" "Cardano.Logging.Types" "trace-dispatcher-2.5.2-inplace" 'False) ((C1 ('MetaCons "DMinimal" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "DNormal" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "DDetailed" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "DMaximum" 'PrefixI 'False) (U1 :: Type -> Type)))

data Privacy Source #

Privacy of a message. Default is Public

Constructors

Confidential

confidential information - handle with care

Public

can be public.

Instances

Instances details
Bounded Privacy Source # 
Instance details

Defined in Cardano.Logging.Types

Enum Privacy Source # 
Instance details

Defined in Cardano.Logging.Types

Generic Privacy Source # 
Instance details

Defined in Cardano.Logging.Types

Associated Types

type Rep Privacy :: Type -> Type Source #

Show Privacy Source # 
Instance details

Defined in Cardano.Logging.Types

Eq Privacy Source # 
Instance details

Defined in Cardano.Logging.Types

Ord Privacy Source # 
Instance details

Defined in Cardano.Logging.Types

Serialise Privacy Source # 
Instance details

Defined in Cardano.Logging.Types

type Rep Privacy Source # 
Instance details

Defined in Cardano.Logging.Types

type Rep Privacy = D1 ('MetaData "Privacy" "Cardano.Logging.Types" "trace-dispatcher-2.5.2-inplace" 'False) (C1 ('MetaCons "Confidential" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Public" 'PrefixI 'False) (U1 :: Type -> Type))

data SeverityS Source #

Severity of a message

Constructors

Debug

Debug messages

Info

Information

Notice

Normal runtime Conditions

Warning

General Warnings

Error

General Errors

Critical

Severe situations

Alert

Take immediate action

Emergency

System is unusable

Instances

Instances details
FromJSON SeverityS Source # 
Instance details

Defined in Cardano.Logging.Types

ToJSON SeverityS Source # 
Instance details

Defined in Cardano.Logging.Types

Bounded SeverityS Source # 
Instance details

Defined in Cardano.Logging.Types

Enum SeverityS Source # 
Instance details

Defined in Cardano.Logging.Types

Generic SeverityS Source # 
Instance details

Defined in Cardano.Logging.Types

Associated Types

type Rep SeverityS :: Type -> Type Source #

Read SeverityS Source # 
Instance details

Defined in Cardano.Logging.Types

Show SeverityS Source # 
Instance details

Defined in Cardano.Logging.Types

Eq SeverityS Source # 
Instance details

Defined in Cardano.Logging.Types

Ord SeverityS Source # 
Instance details

Defined in Cardano.Logging.Types

Serialise SeverityS Source # 
Instance details

Defined in Cardano.Logging.Types

type Rep SeverityS Source # 
Instance details

Defined in Cardano.Logging.Types

type Rep SeverityS = D1 ('MetaData "SeverityS" "Cardano.Logging.Types" "trace-dispatcher-2.5.2-inplace" 'False) (((C1 ('MetaCons "Debug" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Info" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "Notice" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Warning" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "Error" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Critical" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "Alert" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Emergency" 'PrefixI 'False) (U1 :: Type -> Type))))

newtype SeverityF Source #

Severity for a filter Nothing means don't show anything (Silence) Nothing level means show messages with severity >= level

Constructors

SeverityF (Maybe SeverityS) 

Instances

Instances details
FromJSON SeverityF Source # 
Instance details

Defined in Cardano.Logging.Types

ToJSON SeverityF Source # 
Instance details

Defined in Cardano.Logging.Types

Enum SeverityF Source # 
Instance details

Defined in Cardano.Logging.Types

Show SeverityF Source # 
Instance details

Defined in Cardano.Logging.Types

Eq SeverityF Source # 
Instance details

Defined in Cardano.Logging.Types

Ord SeverityF Source # 
Instance details

Defined in Cardano.Logging.Types

data ConfigOption Source #

Constructors

ConfSeverity

Severity level for a filter (default is Warning)

Fields

ConfDetail

Detail level (default is DNormal)

Fields

ConfBackend

To which backend to pass Default is [EKGBackend, Forwarder, Stdout MachineFormat]

Fields

ConfLimiter

Construct a limiter with limiting to the Double, which represents frequency in number of messages per second

Fields

Instances

Instances details
Generic ConfigOption Source # 
Instance details

Defined in Cardano.Logging.Types

Associated Types

type Rep ConfigOption :: Type -> Type Source #

Show ConfigOption Source # 
Instance details

Defined in Cardano.Logging.Types

Eq ConfigOption Source # 
Instance details

Defined in Cardano.Logging.Types

Ord ConfigOption Source # 
Instance details

Defined in Cardano.Logging.Types

type Rep ConfigOption Source # 
Instance details

Defined in Cardano.Logging.Types

type Rep ConfigOption = D1 ('MetaData "ConfigOption" "Cardano.Logging.Types" "trace-dispatcher-2.5.2-inplace" 'False) ((C1 ('MetaCons "ConfSeverity" 'PrefixI 'True) (S1 ('MetaSel ('Just "severity") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 SeverityF)) :+: C1 ('MetaCons "ConfDetail" 'PrefixI 'True) (S1 ('MetaSel ('Just "detail") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 DetailLevel))) :+: (C1 ('MetaCons "ConfBackend" 'PrefixI 'True) (S1 ('MetaSel ('Just "backends") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [BackendConfig])) :+: C1 ('MetaCons "ConfLimiter" 'PrefixI 'True) (S1 ('MetaSel ('Just "maxFrequency") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Double))))

data ForwarderMode Source #

Constructors

Initiator

Forwarder works as a client: it initiates network connection with 'cardano-tracer' and/or another Haskell acceptor application.

Responder

Forwarder works as a server: it accepts network connection from 'cardano-tracer' and/or another Haskell acceptor application.

Instances

Instances details
FromJSON ForwarderMode Source # 
Instance details

Defined in Cardano.Logging.Types

Generic ForwarderMode Source # 
Instance details

Defined in Cardano.Logging.Types

Associated Types

type Rep ForwarderMode :: Type -> Type Source #

Show ForwarderMode Source # 
Instance details

Defined in Cardano.Logging.Types

Eq ForwarderMode Source # 
Instance details

Defined in Cardano.Logging.Types

Ord ForwarderMode Source # 
Instance details

Defined in Cardano.Logging.Types

type Rep ForwarderMode Source # 
Instance details

Defined in Cardano.Logging.Types

type Rep ForwarderMode = D1 ('MetaData "ForwarderMode" "Cardano.Logging.Types" "trace-dispatcher-2.5.2-inplace" 'False) (C1 ('MetaCons "Initiator" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Responder" 'PrefixI 'False) (U1 :: Type -> Type))

data Verbosity Source #

Constructors

Maximum

Maximum verbosity for all tracers in the forwarding protocols.

Minimum

Minimum verbosity, the forwarding will work as silently as possible.

Instances

Instances details
FromJSON Verbosity Source # 
Instance details

Defined in Cardano.Logging.Types

ToJSON Verbosity Source # 
Instance details

Defined in Cardano.Logging.Types

Generic Verbosity Source # 
Instance details

Defined in Cardano.Logging.Types

Associated Types

type Rep Verbosity :: Type -> Type Source #

Show Verbosity Source # 
Instance details

Defined in Cardano.Logging.Types

Eq Verbosity Source # 
Instance details

Defined in Cardano.Logging.Types

Ord Verbosity Source # 
Instance details

Defined in Cardano.Logging.Types

type Rep Verbosity Source # 
Instance details

Defined in Cardano.Logging.Types

type Rep Verbosity = D1 ('MetaData "Verbosity" "Cardano.Logging.Types" "trace-dispatcher-2.5.2-inplace" 'False) (C1 ('MetaCons "Maximum" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Minimum" 'PrefixI 'False) (U1 :: Type -> Type))

data TraceOptionForwarder Source #

Instances

Instances details
FromJSON TraceOptionForwarder Source # 
Instance details

Defined in Cardano.Logging.Types

ToJSON TraceOptionForwarder Source # 
Instance details

Defined in Cardano.Logging.Types

Generic TraceOptionForwarder Source # 
Instance details

Defined in Cardano.Logging.Types

Associated Types

type Rep TraceOptionForwarder :: Type -> Type Source #

Show TraceOptionForwarder Source # 
Instance details

Defined in Cardano.Logging.Types

Eq TraceOptionForwarder Source # 
Instance details

Defined in Cardano.Logging.Types

Ord TraceOptionForwarder Source # 
Instance details

Defined in Cardano.Logging.Types

type Rep TraceOptionForwarder Source # 
Instance details

Defined in Cardano.Logging.Types

type Rep TraceOptionForwarder = D1 ('MetaData "TraceOptionForwarder" "Cardano.Logging.Types" "trace-dispatcher-2.5.2-inplace" 'False) (C1 ('MetaCons "TraceOptionForwarder" 'PrefixI 'True) (S1 ('MetaSel ('Just "tofConnQueueSize") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word) :*: (S1 ('MetaSel ('Just "tofDisconnQueueSize") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word) :*: S1 ('MetaSel ('Just "tofVerbosity") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Verbosity))))

data TraceConfig Source #

Constructors

TraceConfig 

Fields

data TraceControl where Source #

When configuring a net of tracers, it should be run with Config on all entry points first, and then with TCOptimize. When reconfiguring it needs to run TCReset followed by Config followed by TCOptimize

newtype DocCollector Source #

Constructors

DocCollector (IORef (Map Int LogDoc)) 

data LogDoc Source #

Instances

Instances details
Show LogDoc Source # 
Instance details

Defined in Cardano.Logging.Types

Eq LogDoc Source # 
Instance details

Defined in Cardano.Logging.Types

data BackendConfig Source #

 

Instances

Instances details
FromJSON BackendConfig Source # 
Instance details

Defined in Cardano.Logging.Types

ToJSON BackendConfig Source # 
Instance details

Defined in Cardano.Logging.Types

Generic BackendConfig Source # 
Instance details

Defined in Cardano.Logging.Types

Associated Types

type Rep BackendConfig :: Type -> Type Source #

Show BackendConfig Source # 
Instance details

Defined in Cardano.Logging.Types

Eq BackendConfig Source # 
Instance details

Defined in Cardano.Logging.Types

Ord BackendConfig Source # 
Instance details

Defined in Cardano.Logging.Types

type Rep BackendConfig Source # 
Instance details

Defined in Cardano.Logging.Types

type Rep BackendConfig = D1 ('MetaData "BackendConfig" "Cardano.Logging.Types" "trace-dispatcher-2.5.2-inplace" 'False) ((C1 ('MetaCons "Forwarder" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Stdout" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 FormatLogging))) :+: (C1 ('MetaCons "EKGBackend" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "DatapointBackend" 'PrefixI 'False) (U1 :: Type -> Type)))

newtype Folding a b Source #

Type for the function foldTraceM from module CardanoLoggingTrace

Constructors

Folding b 

Instances

Instances details
LogFormatting b => LogFormatting (Folding a b) Source # 
Instance details

Defined in Cardano.Logging.Types

unfold :: Folding a b -> b Source #

data TraceObject Source #

Used as interface object for ForwarderTracer

Instances

Instances details
Generic TraceObject Source # 
Instance details

Defined in Cardano.Logging.Types

Associated Types

type Rep TraceObject :: Type -> Type Source #

Show TraceObject Source # 
Instance details

Defined in Cardano.Logging.Types

Eq TraceObject Source # 
Instance details

Defined in Cardano.Logging.Types

Serialise TraceObject Source # 
Instance details

Defined in Cardano.Logging.Types

ShowProxy TraceObject Source # 
Instance details

Defined in Cardano.Logging.Types

type Rep TraceObject Source # 
Instance details

Defined in Cardano.Logging.Types

data PreFormatted a Source #

Constructors

PreFormatted 

Fields