Copyright | (c) Serokell 2016 |
---|---|
License | GPL-3 (see the file LICENSE) |
Maintainer | Serokell <hi@serokell.io> |
Stability | experimental |
Portability | POSIX, GHC |
Safe Haskell | None |
Language | Haskell2010 |
Parser for configuring and initializing logger from YAML file. Logger configuration should look like this:
rotation: # [optional] parameters for logging rotation logLimit: 1024 # max size of log file in bytes keepFiles: 3 # number of files with logs to keep including current one node: # logger named «node» severity: Warning # severity for logger «node» comm: # logger named «node.comm» severity: Info # severity for logger «node.comm» file: patak.jpg # messages will be also printed to patak.jpg
And this configuration corresponds two loggers with LoggerName'
s
node
and node.comm
.
- initLoggingFromYaml :: MonadIO m => FilePath -> Maybe FilePath -> m ()
- initLoggingFromYamlWithMapper :: MonadIO m => (LoggerName -> LoggerName) -> FilePath -> Maybe FilePath -> m ()
- parseLoggerConfig :: MonadIO m => FilePath -> m LoggerConfig
- traverseLoggerConfig :: MonadIO m => (LoggerName -> LoggerName) -> Maybe RotationParameters -> LoggerTree -> Maybe FilePath -> m ()
Documentation
initLoggingFromYamlWithMapper :: MonadIO m => (LoggerName -> LoggerName) -> FilePath -> Maybe FilePath -> m () Source #
Initialize logger hierarchy from configuration file. See this module description.
parseLoggerConfig :: MonadIO m => FilePath -> m LoggerConfig Source #
Parses logger config from given file path.
:: MonadIO m | |
=> (LoggerName -> LoggerName) | mapper to transform logger names during traversal |
-> Maybe RotationParameters | rotation parameters for roller handle |
-> LoggerTree | given |
-> Maybe FilePath | prefix for file handlers |
-> m () |
This function traverses LoggerConfig
initializing all subloggers
with Severity
and redirecting output in file handlers. Also takes
FilePath
prefix to create directory for file handlers output. Create
logging rotation if appropriate arguments are passed.