Simple enhancements for logging with co-log.
A library built upon co-log that makes constructing and using LogActions simpler with some predefined formatters and a slightly enhanced Severity type
co-log-simple
Synopsis
Simple enhancements for logging with co-log
Description
A library built upon co-log that makes constructing and using LogActions simpler with some predefined formatters and a slightly enhanced Severity type
This library expresses some logging needs that recur in my work:
- Often I want more than one type of "info" severity to differentiate between more- or less-chatty output that's not debug or warning/error related. This library includes a new Severity type that adds Notice between Info and Warning.
- I've often wanted different colors for severities which is much easier with co-log than hslogger
- This library also includes some functions for formatting different parts of a log message like the severity, stack info, or the message itself. These formatters can be composed together with the (%) and (%+) operators.
Additionally:
I found using the RichMsg/RichMessage types in co-log to be slightly on the complicated side to use. This library integrates timestamping through those types as well to make things easier while keeping the interface simple.
co-log-simple uses the ISO8601 with zone offset format for timestamps by default which I like because it sorts. The time formatters in this library also support custom format strings as defined in the Data.Time.Format module in the base time library.
For usage examples, see src/examples/Main.hs and the API docs for Colog.Simple
Development
Source code is available from Codeberg at the co-log-simple project page.
Handy command to generate Haddock docs during development if using stack. This constrains doc generation to modules in the library:
$ stack haddock --haddock --no-haddock-deps
Contact
Dino Morelli [email protected].