xlog/lib/xlog.mli

50 lines
1.1 KiB
OCaml
Raw Normal View History

2024-04-23 02:36:13 +00:00
type logger
type level =
| TRACE
| DEBUG
| INFO
| WARN
| ERROR
(* log_function (fun m -> m "<fmt>" <args>); *)
type 'a log_function =
((('a, Format.formatter, unit) format -> 'a) -> unit) -> unit
type 'a log_module_function =
?__POS__:(string * int * int * int)
-> ?__FUNCTION__:string
-> ?errno:int
-> ('a log_function)
2024-04-23 02:36:13 +00:00
module type Logs = sig
val logger : logger
val trace : _ log_module_function
val debug : _ log_module_function
val info : _ log_module_function
val warn : _ log_module_function
val error : _ log_module_function
val exn : exn -> Printexc.raw_backtrace -> _ log_module_function
val log : level -> ?exn:((exn * Printexc.raw_backtrace) option) -> _ log_module_function
2024-04-23 02:36:13 +00:00
end
val logs : string -> (module Logs)
val sublogs : logger -> string -> (module Logs)
val init_pretty_writer :
?min_level:level ->
?color:bool ->
?timestamp:bool ->
?namespace:bool ->
?level:bool ->
?source_loc:bool ->
?backtrace:bool ->
2024-04-23 02:36:13 +00:00
out_channel -> unit
val init_journald_writer :
?min_level:level ->
?path:string ->
unit -> unit
val should_upgrade_to_journald : unit -> bool