Module Log.Output

module Output: sig .. end

type machine_readable_format = [ `Bin_prot | `Sexp ] 
type format = [ `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 stdout : unit -> t
val stderr : unit -> t
see Async_extended.Syslog for syslog output.
val writer : format -> Import.Writer.t -> t
val file : format -> filename:string -> t
val rotating_file : format -> basename:string -> Log.Rotation.t -> t
val machine_readable_format_of_sexp : Sexplib.Sexp.t -> machine_readable_format
val __machine_readable_format_of_sexp__ : Sexplib.Sexp.t -> machine_readable_format
val sexp_of_machine_readable_format : machine_readable_format -> Sexplib.Sexp.t
val format_of_sexp : Sexplib.Sexp.t -> format
val __format_of_sexp__ : Sexplib.Sexp.t -> format
val sexp_of_format : format -> Sexplib.Sexp.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).

see Async_extended.Syslog for syslog output.