module Output:sig
..end
typemachine_readable_format =
[ `Bin_prot | `Sexp ]
typeformat =
[ `Bin_prot | `Sexp | `Text ]
type
t
val create : (Log.Message.t Core.Std.Queue.t -> unit Import.Deferred.t) -> t
create f
returns a t, given a function that actually performs the final output
work. It is the responsibility of the write function to contain all state, and to
clean up after itself when it is garbage collected (which may require a finalizer).
The "stock" output modules support a sexp and bin_prot output format, and other output modules should make efforts to support them as well where it is meaningful/appropriate to do so.
The unit Deferred returned by the function should not be fulfilled until the all of
the messages in the given queue are completely handled (e.g. written to disk).
val screen : t
val writer : format -> Import.Writer.t -> t
val file : format -> filename:string -> t
val rotating_file : format ->
basename:string -> Log.Rotation.t -> t Import.Deferred.t