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