LogLogging and messaging
Every relevant event must be logged through the functions in this module but only for single-process mode. Use KEvent for multi-process mode.
module type Sig = sig ... endLogging functions accessible directly
include Sigtype 'a log_printer =
Lib.log_level ->
('a, Stdlib.Format.formatter, unit) Stdlib.format ->
'atype 'a m_log_printer = Lib.kind_module -> 'a log_printerval set_module : Lib.kind_module -> unitSet module currently running
val get_module : unit -> Lib.kind_moduleGet module currently running
val get_log_format : unit -> log_formatReturns the log format
val set_log_format : log_format -> unitChooses the log format
Print the separator between JSON objects (could be nothing for incremental json, or comma for standard json)
Relay log messages to invariant manager, takes printing function as argument for relay messages.
val pp_print_kind_module_xml_src :
Stdlib.Format.formatter ->
Lib.kind_module ->
unitval printf_xml : 'a m_log_printerval printf_json : 'a m_log_printerval parse_log_xml : Lib.log_level -> Lib.position -> string -> unitval parse_log_json : Lib.log_level -> Lib.position -> string -> unitmodule type SLog = sig ... endOne instance without relay is available directly
include SLogval log : 'a log_printerlog m l f v ... outputs a message from module m on level l, formatted with the parameterized string f and the values v ...
log_uncond m f v ... outputs a message from module m unconditionally, formatted with the parameterized string f and the values v ...
val log_result :
(Stdlib.Format.formatter -> 'a -> unit) ->
(Stdlib.Format.formatter -> 'a -> unit) ->
(Stdlib.Format.formatter -> 'a -> unit) ->
'a ->
unitlog_result pt xml json a outputs a result (for instance, for a post analysis) by choosing the right printing function depending on the output format