include module type of Lwt_log_core
with type level = Lwt_log_core.level
and type logger = Lwt_log_core.logger
and type section = Lwt_log_core.section
and type template = Lwt_log_core.template
and module Section = Lwt_log_core.Section
type level = Lwt_log_core.level = | Debug| Info| Notice| Warning| Error| Fatal
type logger = Lwt_log_core.loggertype section = Lwt_log_core.sectionval string_of_level : level -> stringval level_of_string : string -> level optionval load_rules : ?fail_on_error:bool -> string -> unitval add_rule : string -> level -> unitval append_rule : string -> level -> unitval reset_rules : unit -> unittype template = Lwt_log_core.templateval render :
buffer:Stdlib.Buffer.t ->
template:template ->
section:section ->
level:level ->
message:string ->
unitval location_key : (string * int * int) Lwt.keyval make :
output:(section -> level -> string list -> unit Lwt.t) ->
close:(unit -> unit Lwt.t) ->
loggerval close : logger -> unit Lwt.tval default : logger Stdlib.refLwt logger for js_of_ocaml
Predefined logger
val console : Lwt_log_core.loggerLogger that use the javascript console object.
Logging functions
val log :
?inspect:'v ->
?exn:exn ->
?section:section ->
?location:(string * int * int) ->
?logger:logger ->
level:level ->
string ->
unit Lwt.tlog ?section ?logger ~level message logs a message.
section defaults to Section.main. If logger is not specified, then the default one is used instead (see default).
If exn is provided, then its string representation (= Printexc.to_string exn) will be append to the message, and if possible the backtrace will also be logged.
If inspect is provided, it will be append to the message.
location contains the location of the logging directive, it is of the form (file_name, line, column).
val log_f :
?inspect:'v ->
?exn:exn ->
?section:section ->
?location:(string * int * int) ->
?logger:logger ->
level:level ->
('a, unit, string, unit Lwt.t) Stdlib.format4 ->
'alog_f is the same as log except that it takes a format string
val ign_log :
?inspect:'v ->
?exn:exn ->
?section:section ->
?location:(string * int * int) ->
?logger:logger ->
level:level ->
string ->
unitSame as log but ignore the resulting thread.
val ign_log_f :
?inspect:'v ->
?exn:exn ->
?section:section ->
?location:(string * int * int) ->
?logger:logger ->
level:level ->
('a, unit, string, unit) Stdlib.format4 ->
'aSame as log_f but ignore the resulting thread.
The following functions are the same as log except that their name determines which level is used.
For example info msg is the same as log ~level:Info msg.
val debug :
?inspect:'v ->
?exn:exn ->
?section:section ->
?location:(string * int * int) ->
?logger:logger ->
string ->
unit Lwt.tval debug_f :
?inspect:'v ->
?exn:exn ->
?section:section ->
?location:(string * int * int) ->
?logger:logger ->
('a, unit, string, unit Lwt.t) Stdlib.format4 ->
'aval ign_debug :
?inspect:'v ->
?exn:exn ->
?section:section ->
?location:(string * int * int) ->
?logger:logger ->
string ->
unitval ign_debug_f :
?inspect:'v ->
?exn:exn ->
?section:section ->
?location:(string * int * int) ->
?logger:logger ->
('a, unit, string, unit) Stdlib.format4 ->
'aval info :
?inspect:'v ->
?exn:exn ->
?section:section ->
?location:(string * int * int) ->
?logger:logger ->
string ->
unit Lwt.tval info_f :
?inspect:'v ->
?exn:exn ->
?section:section ->
?location:(string * int * int) ->
?logger:logger ->
('a, unit, string, unit Lwt.t) Stdlib.format4 ->
'aval ign_info :
?inspect:'v ->
?exn:exn ->
?section:section ->
?location:(string * int * int) ->
?logger:logger ->
string ->
unitval ign_info_f :
?inspect:'v ->
?exn:exn ->
?section:section ->
?location:(string * int * int) ->
?logger:logger ->
('a, unit, string, unit) Stdlib.format4 ->
'aval notice :
?inspect:'v ->
?exn:exn ->
?section:section ->
?location:(string * int * int) ->
?logger:logger ->
string ->
unit Lwt.tval notice_f :
?inspect:'v ->
?exn:exn ->
?section:section ->
?location:(string * int * int) ->
?logger:logger ->
('a, unit, string, unit Lwt.t) Stdlib.format4 ->
'aval ign_notice :
?inspect:'v ->
?exn:exn ->
?section:section ->
?location:(string * int * int) ->
?logger:logger ->
string ->
unitval ign_notice_f :
?inspect:'v ->
?exn:exn ->
?section:section ->
?location:(string * int * int) ->
?logger:logger ->
('a, unit, string, unit) Stdlib.format4 ->
'aval warning :
?inspect:'v ->
?exn:exn ->
?section:section ->
?location:(string * int * int) ->
?logger:logger ->
string ->
unit Lwt.tval warning_f :
?inspect:'v ->
?exn:exn ->
?section:section ->
?location:(string * int * int) ->
?logger:logger ->
('a, unit, string, unit Lwt.t) Stdlib.format4 ->
'aval ign_warning :
?inspect:'v ->
?exn:exn ->
?section:section ->
?location:(string * int * int) ->
?logger:logger ->
string ->
unitval ign_warning_f :
?inspect:'v ->
?exn:exn ->
?section:section ->
?location:(string * int * int) ->
?logger:logger ->
('a, unit, string, unit) Stdlib.format4 ->
'aval error :
?inspect:'v ->
?exn:exn ->
?section:section ->
?location:(string * int * int) ->
?logger:logger ->
string ->
unit Lwt.tval error_f :
?inspect:'v ->
?exn:exn ->
?section:section ->
?location:(string * int * int) ->
?logger:logger ->
('a, unit, string, unit Lwt.t) Stdlib.format4 ->
'aval ign_error :
?inspect:'v ->
?exn:exn ->
?section:section ->
?location:(string * int * int) ->
?logger:logger ->
string ->
unitval ign_error_f :
?inspect:'v ->
?exn:exn ->
?section:section ->
?location:(string * int * int) ->
?logger:logger ->
('a, unit, string, unit) Stdlib.format4 ->
'aval fatal :
?inspect:'v ->
?exn:exn ->
?section:section ->
?location:(string * int * int) ->
?logger:logger ->
string ->
unit Lwt.tval fatal_f :
?inspect:'v ->
?exn:exn ->
?section:section ->
?location:(string * int * int) ->
?logger:logger ->
('a, unit, string, unit Lwt.t) Stdlib.format4 ->
'aval ign_fatal :
?inspect:'v ->
?exn:exn ->
?section:section ->
?location:(string * int * int) ->
?logger:logger ->
string ->
unitval ign_fatal_f :
?inspect:'v ->
?exn:exn ->
?section:section ->
?location:(string * int * int) ->
?logger:logger ->
('a, unit, string, unit) Stdlib.format4 ->
'a