sig
type 'a log = ('a, unit Lwt.t) Logs.msgf -> unit Lwt.t
val msg : ?src:Logs.src -> Logs.level -> 'a Logs_lwt.log
val app : ?src:Logs.src -> 'a Logs_lwt.log
val err : ?src:Logs.src -> 'a Logs_lwt.log
val warn : ?src:Logs.src -> 'a Logs_lwt.log
val info : ?src:Logs.src -> 'a Logs_lwt.log
val debug : ?src:Logs.src -> 'a Logs_lwt.log
val kmsg :
(unit -> 'b Lwt.t) ->
?src:Logs.src -> Logs.level -> ('a, 'b Lwt.t) Logs.msgf -> 'b Lwt.t
val on_error :
?src:Logs.src ->
?level:Logs.level ->
?header:string ->
?tags:Logs.Tag.set ->
pp:(Format.formatter -> 'b -> unit) ->
use:('b -> 'a Lwt.t) -> ('a, 'b) Result.result Lwt.t -> 'a Lwt.t
val on_error_msg :
?src:Logs.src ->
?level:Logs.level ->
?header:string ->
?tags:Logs.Tag.set ->
use:(unit -> 'a Lwt.t) ->
('a, [ `Msg of string ]) Result.result Lwt.t -> 'a Lwt.t
module type LOG =
sig
val msg : Logs.level -> 'a Logs_lwt.log
val app : 'a Logs_lwt.log
val err : 'a Logs_lwt.log
val warn : 'a Logs_lwt.log
val info : 'a Logs_lwt.log
val debug : 'a Logs_lwt.log
val kmsg :
?over:(unit -> unit) ->
(unit -> 'b Lwt.t) ->
Logs.level -> ('a, 'b Lwt.t) Logs.msgf -> 'b Lwt.t
val on_error :
?level:Logs.level ->
?header:string ->
?tags:Logs.Tag.set ->
pp:(Format.formatter -> 'b -> unit) ->
use:('b -> 'a Lwt.t) -> ('a, 'b) Result.result Lwt.t -> 'a Lwt.t
val on_error_msg :
?level:Logs.level ->
?header:string ->
?tags:Logs.Tag.set ->
use:(unit -> 'a Lwt.t) ->
('a, [ `Msg of string ]) Result.result Lwt.t -> 'a Lwt.t
end
val src_log : Logs.src -> (module Logs_lwt.LOG)
end