sig
  module Output :
    sig
      type t
      val screen : Log.Blocking.Output.t
      val create : (Log.Message.t -> unit) -> Log.Blocking.Output.t
    end
  val set_level : Log.Level.t -> unit
  val set_output : Log.Blocking.Output.t -> unit
  val raw :
    ?tags:(string * string) list ->
    ('a, unit, string, unit) Pervasives.format4 -> 'a
  val info :
    ?tags:(string * string) list ->
    ('a, unit, string, unit) Pervasives.format4 -> 'a
  val error :
    ?tags:(string * string) list ->
    ('a, unit, string, unit) Pervasives.format4 -> 'a
  val debug :
    ?tags:(string * string) list ->
    ('a, unit, string, unit) Pervasives.format4 -> 'a
end