type level = | App| Error| Warning| Info| Debug
val level : unit -> level optionval set_level : level option -> unitval level_to_string : level option -> stringval level_of_string : string -> (level option, [ `Msg of string ]) rval app : 'a msgf -> unitval err : 'a msgf -> unitval warn : 'a msgf -> unitval info : 'a msgf -> unitval debug : 'a msgf -> unitval on_error_msg : ?level:level -> use:(unit -> 'a) -> 'a result -> 'aval err_count : unit -> intval warn_count : unit -> int