loglevel alternatives and similar packages
Based on the "System" category.
Alternatively, view loglevel alternatives based on common mentions on social networks and blogs.
-
taffybar
A gtk based status bar for tiling window managers such as XMonad -
nix-deploy
Deploy software or an entire NixOS system configuration to another NixOS system -
ghc-hotswap
Example code for how we swap compiled code within a running Haskell process. -
optparse-generic
Auto-generate a command-line parser for your datatype -
hapistrano
Deploy tool for Haskell applications, like Capistrano for Rails -
directory
Platform-independent library for basic file system operations -
typed-process
Alternative API for processes, featuring more type safety -
system-fileio
Contains the system-filepath and system-fileio packages -
language-puppet
A library to work with Puppet manifests, test them and eventually replace everything ruby. -
openssh-github-keys
Control SSH access to your servers via GitHub teams -
plugins
Dynamic linking and runtime evaluation of Haskell, and C, including dependency chasing and package resolution. -
ascii-progress
A simple Haskell progress bar for the console. Heavily borrows from TJ Holowaychuk's Node.JS project -
optparse-declarative
Declarative command-line option parser -
directory-contents
Recursively build a tree of directory contents, avoiding symlink cycles -
executable-hash
Provides the SHA1 hash of the program executable
Access the most powerful time series database as a service
Do you think we are missing an alternative of loglevel or a related project?
README
Log Level Datatype
This package provides a Haskell log-level datatype. It allows to specify APIs with logging-callbacks without depending on a particular logging framework.
There is a large number of different Haskell logging frameworks that support different use cases and backends. As a consequence these framework make different trade-offs with respect to their architecture and implementation. Often they have complex internals and many external dependencies.
While logging frameworks differ a lot in their internals and backends, they tend to have similar frontends. In particular, many software components depend for logging only on a callback function that typically has a type similar to
loggingCallback ∷ LogLevel → Text → IO ()
The only framework-specific dependency is the LogLevel
type. This type is in
most cases similar, often isomorphic, and sometimes even identical across
different frameworks.
It is unfortunate that a software component has to depend on a particular
logging framework (and all of the frameworks dependencies) just for using the
LogLevel
type that is almost identical throughout most logging frameworks.
This package allows software components to include logging callbacks in their APIs without depending on a particular logging framework.
Even more complex logging callbacks often have a type along the lines of
genericLoggingCallback ∷ c a ⇒ LogLevel → a → IO ()
where c
is a constraint made up from common type classes like ToJSON
,
Serializable
, NFData
, or Generic
.