Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Cardano.Node.Configuration.Logging
Synopsis
- data LoggingLayer = LoggingLayer {
- llBasicTrace :: forall m. MonadIO m => Trace m Text
- llLogDebug :: forall m a. (MonadIO m, Show a) => Trace m a -> a -> m ()
- llLogInfo :: forall m a. (MonadIO m, Show a) => Trace m a -> a -> m ()
- llLogNotice :: forall m a. (MonadIO m, Show a) => Trace m a -> a -> m ()
- llLogWarning :: forall m a. (MonadIO m, Show a) => Trace m a -> a -> m ()
- llLogError :: forall m a. (MonadIO m, Show a) => Trace m a -> a -> m ()
- llAppendName :: forall m a. Show a => LoggerName -> Trace m a -> Trace m a
- llBracketMonadIO :: forall a t. Show a => Trace IO a -> Severity -> Text -> IO t -> IO t
- llBracketMonadM :: forall m a t. (MonadCatch m, MonadIO m, Show a) => Trace m a -> Severity -> Text -> m t -> m t
- llBracketMonadX :: forall m a t. (MonadIO m, Show a) => Trace m a -> Severity -> Text -> m t -> m t
- llBracketStmIO :: forall a t. Show a => Trace IO a -> Severity -> Text -> STM t -> IO t
- llBracketStmLogIO :: forall a t. Show a => Trace IO a -> Severity -> Text -> STM (t, [(LOMeta, LOContent a)]) -> IO t
- llConfiguration :: Configuration
- llAddBackend :: Backend Text -> BackendKind -> IO ()
- llSwitchboard :: Switchboard Text
- llEKGDirect :: Maybe EKGDirect
- data EKGDirect = EKGDirect {}
- createLoggingLayer :: Text -> NodeConfiguration -> SomeConsensusProtocol -> ExceptT ConfigError IO LoggingLayer
- nodeBasicInfo :: NodeConfiguration -> SomeConsensusProtocol -> UTCTime -> IO [LogObject Text]
- shutdownLoggingLayer :: LoggingLayer -> IO ()
- traceCounter :: Text -> Trace IO Text -> Int -> IO ()
- type Trace (m :: Type -> Type) a = Tracer m (LoggerName, LogObject a)
- data Configuration
- type LoggerName = Text
- data Severity
- mkLOMeta :: MonadIO m => Severity -> PrivacyAnnotation -> m LOMeta
- data LOMeta = LOMeta {}
- data LOContent a
- = LogMessage a
- | LogError !Text
- | LogValue !Text !Measurable
- | LogStructuredText Object Text
- | LogStructured Object
- | ObserveOpen !CounterState
- | ObserveDiff !CounterState
- | ObserveClose !CounterState
- | AggregatedMessage [(Text, Aggregated)]
- | MonitoringEffect !MonitorAction
- | Command !CommandValue
- | KillPill
Documentation
data LoggingLayer Source #
The LoggingLayer interface that we can expose. We want to do this since we want to be able to mock out any function tied to logging.
The good side of this is that _each function has it's own effects_ and that is ideal for tracking the functions effects and constraining the user (programmer) of those function to use specific effects in them. https://github.com/input-output-hk/cardano-sl/blob/develop/util/src/Pos/Util/Log/LogSafe.hs
Constructors
LoggingLayer | |
Fields
|
createLoggingLayer :: Text -> NodeConfiguration -> SomeConsensusProtocol -> ExceptT ConfigError IO LoggingLayer Source #
Create logging feature for `cardano-node`
nodeBasicInfo :: NodeConfiguration -> SomeConsensusProtocol -> UTCTime -> IO [LogObject Text] Source #
shutdownLoggingLayer :: LoggingLayer -> IO () Source #
data Configuration #
type LoggerName = Text #
Instances
Constructors
LOMeta | |
Instances
FromJSON LOMeta | |
Defined in Cardano.BM.Data.LogItem | |
ToJSON LOMeta | |
Defined in Cardano.BM.Data.LogItem Methods toEncoding :: LOMeta -> Encoding toJSONList :: [LOMeta] -> Value toEncodingList :: [LOMeta] -> Encoding | |
Show LOMeta | |
Eq LOMeta | |
Constructors
LogMessage a | |
LogError !Text | |
LogValue !Text !Measurable | |
LogStructuredText Object Text | |
LogStructured Object | |
ObserveOpen !CounterState | |
ObserveDiff !CounterState | |
ObserveClose !CounterState | |
AggregatedMessage [(Text, Aggregated)] | |
MonitoringEffect !MonitorAction | |
Command !CommandValue | |
KillPill |
Instances
FromJSON a => FromJSON (LOContent a) | |
Defined in Cardano.BM.Data.LogItem Methods parseJSON :: Value -> Parser (LOContent a) parseJSONList :: Value -> Parser [LOContent a] omittedField :: Maybe (LOContent a) | |
ToJSON a => ToJSON (LOContent a) | |
Defined in Cardano.BM.Data.LogItem Methods toJSON :: LOContent a -> Value # toEncoding :: LOContent a -> Encoding toJSONList :: [LOContent a] -> Value toEncodingList :: [LOContent a] -> Encoding | |
Show a => Show (LOContent a) | |
Eq a => Eq (LOContent a) | |
ToJSON a => ToObject (LOContent a) | |
Defined in Cardano.BM.Data.Tracer Methods toObject :: TracingVerbosity -> LOContent a -> Object # textTransformer :: LOContent a -> Object -> Text # |