package easy_logging

  1. Overview
  2. Docs

Attributes

val name : string

Name of the logger:

  • can be displayed in log messages.
  • defines the logger place in the logging tree.
val mutable level : log_level option

Value used to filter log messages.

val mutable handlers : Handlers.t list

Registered handlers for this logger.

val parent : logger option

The optional parent of this logger.

val propagate : bool

Whether messages passed to this logger are propagated to its ancestors' handlers.

val mutable tag_generators : (unit -> Handlers.tag) list

The list of functions used for dynamic tagging of messages

Classic logging Methods

Each of these methods takes an optional tag list, then a set of parameters the way a printf function does. If the log level of the instance is low enough, a log item will be created theb passed to the handlers.

Example :

logger#warning "Unexpected value: %s" (to_string my_value)
method flash : 'a. ?tags:string list -> ('a, unit, string, unit) format4 -> 'a
method error : 'a. ?tags:string list -> ('a, unit, string, unit) format4 -> 'a
method warning : 'a. ?tags:string list -> ('a, unit, string, unit) format4 -> 'a
method info : 'a. ?tags:string list -> ('a, unit, string, unit) format4 -> 'a
method trace : 'a. ?tags:string list -> ('a, unit, string, unit) format4 -> 'a
method debug : 'a. ?tags:string list -> ('a, unit, string, unit) format4 -> 'a

Lazy logging methods

Each of these methods takes a string lazy_t as an input (as well as the optional tag list. If the log level of the instance is low enough, the lazy value will forced into a string, a log item will be created then passed to the handlers.

Example:

logger#ldebug (lazy (heavy_calculation () ))
method ldebug : ?tags:string list -> string lazy_t -> unit
method ltrace : ?tags:string list -> string lazy_t -> unit
method linfo : ?tags:string list -> string lazy_t -> unit
method lwarning : ?tags:string list -> string lazy_t -> unit
method lerror : ?tags:string list -> string lazy_t -> unit
method lflash : ?tags:string list -> string lazy_t -> unit
String logging methods

Each of these methods takes a string as an input (as well as the optional tag list.

Example:

logger#sdebug string_variable
method sdebug : ?tags:string list -> string -> unit
method strace : ?tags:string list -> string -> unit
method sinfo : ?tags:string list -> string -> unit
method swarning : ?tags:string list -> string -> unit
method serror : ?tags:string list -> string -> unit
method sflash : ?tags:string list -> string -> unit

Other methods

method set_level : log_level -> unit

Sets the log level of the logger instance.

method add_handler : Handlers.t -> unit

Adds a handler to the logger instance.

method add_tag_generator : (unit -> Handlers.tag) -> unit

Will add a tag to each log message, resulting from the call of the supplied fonction (called each time a message is logged)

method set_propagate : bool -> unit

Sets the propagate attribute, which decides whether messages passed to this logger are propagated to its ancestors' handlers.

Internal methods
method get_handlers : Handlers.t list

Returns the list of handlers of the logger

method effective_level : log_level

Returns this logger level if it is not None, else searches amongst ancestors for the first defined level; returns NoLevel if no level can be found.

method set_propagate : bool -> unit
method add_tag_generator : (unit -> Handlers.tag) -> unit
OCaml

Innovation. Community. Security.