package devkit
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=222f8ac131b1d970dab7eeb2714bfd6b9338b88b1082e6e01c136ae19e7eaef4
sha512=c9e6d93e3d21e5530c0f4d5baca51bf1f0a5d19248f8af7678d0665bb5cdf295d7aaaaa3e50eb2e44b8720e55097cc675af4dc8ec45acf9da39feb3eae1405d5
doc/devkit.core/Devkit_core/Log/index.html
Module Devkit_core.Log
Source
Global ready-to-use logger
TODO interface to manage State
Example usage
Create logging facility (messages origin)
let http = Log.facility "http"
Log from http subsystem at debug level
Log.debug http "received %u bytes"
Create and use object for http logging
let log = Log.from "http" (* new Log.logger http *);;
log#info "sent %u bytes" 1024
log#warn ~exn "failed here"
Output only messages of warning level or higher for the http facility
http#allow `Warn
or
Logger.set_filter http `Warn
or
Log.set_filter ~name:"http" `Warn
or
Log.set_filter ~name:"http*" `Warn
to set for all facilities starting with "http"
Output only messages of warning level or higher for all facilities
Log.set_filter `Warn
API
Update facilities configuration from the environment.
By default, it reads the configuration in the environment variable DEVKIT_LOG
which can be overwritten using the optional process_name
parameter.
The value of environment variable should match the following grammar: ([<facil|prefix*>=]debug|info|warn|error[,])*
type 'a pr =
?exn:exn ->
?lines:bool ->
?backtrace:bool ->
?saved_backtrace:string list ->
('a, unit, string, unit) format4 ->
'a
param lines
: whether to split multiline message as separate log lines (default true
)
param backtrace
: whether to show backtrace (default is true
if exn
is given and backtrace recording is enabled)
param saved_backtrace
: supply backtrace to show instead of using Printexc.get_backtrace
reopen log file