<html><head> <link rel="stylesheet" href="style.css" type="text/css"> <meta content="text/html; charset=iso-8859-1" http-equiv="Content-Type"> <link rel="Start" href="index.html"> <link title="Index of types" rel=Appendix href="index_types.html"> <link title="Index of exceptions" rel=Appendix href="index_exceptions.html"> <link title="Index of values" rel=Appendix href="index_values.html"> <link title="Index of modules" rel=Appendix href="index_modules.html"> <link title="Index of module types" rel=Appendix href="index_module_types.html"> <link title="Command" rel="Chapter" href="Command.html"> <link title="File_tail" rel="Chapter" href="File_tail.html"> <link title="File_writer" rel="Chapter" href="File_writer.html"> <link title="Import" rel="Chapter" href="Import.html"> <link title="Lock_file" rel="Chapter" href="Lock_file.html"> <link title="Log" rel="Chapter" href="Log.html"> <link title="Persistent_singleton" rel="Chapter" href="Persistent_singleton.html"> <link title="Rpc" rel="Chapter" href="Rpc.html"> <link title="Rpc_intf" rel="Chapter" href="Rpc_intf.html"> <link title="Std" rel="Chapter" href="Std.html"> <link title="Tcp" rel="Chapter" href="Tcp.html"> <link title="Tcp_file" rel="Chapter" href="Tcp_file.html"> <link title="Typed_tcp" rel="Chapter" href="Typed_tcp.html"> <link title="Typed_tcp_intf" rel="Chapter" href="Typed_tcp_intf.html"> <link title="Unpack_sequence" rel="Chapter" href="Unpack_sequence.html"> <link title="User_and_group" rel="Chapter" href="User_and_group.html"> <link title="Versioned_rpc" rel="Chapter" href="Versioned_rpc.html"> <link title="Versioned_typed_tcp" rel="Chapter" href="Versioned_typed_tcp.html"> <link title="Weak_hashtbl" rel="Chapter" href="Weak_hashtbl.html"><title>Log</title> </head> <body> <code class="code"><span class="keyword">sig</span><br> <span class="keyword">module</span> <span class="constructor">Level</span> :<br> <span class="keyword">sig</span><br> <span class="keyword">type</span> t = [ <span class="keywordsign">`</span><span class="constructor">Debug</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Error</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Info</span> ]<br> <span class="keyword">val</span> of_string : string <span class="keywordsign">-></span> t<br> <span class="keyword">val</span> to_string : t <span class="keywordsign">-></span> string<br> <span class="keyword">val</span> t_of_sexp : <span class="constructor">Sexplib</span>.<span class="constructor">Sexp</span>.t <span class="keywordsign">-></span> <span class="constructor">Log</span>.<span class="constructor">Level</span>.t<br> <span class="keyword">val</span> __t_of_sexp__ : <span class="constructor">Sexplib</span>.<span class="constructor">Sexp</span>.t <span class="keywordsign">-></span> <span class="constructor">Log</span>.<span class="constructor">Level</span>.t<br> <span class="keyword">val</span> sexp_of_t : <span class="constructor">Log</span>.<span class="constructor">Level</span>.t <span class="keywordsign">-></span> <span class="constructor">Sexplib</span>.<span class="constructor">Sexp</span>.t<br> <span class="keyword">end</span><br> <span class="keyword">module</span> <span class="constructor">Message</span> :<br> <span class="keyword">sig</span><br> <span class="keyword">type</span> t<br> <span class="keyword">val</span> time : <span class="constructor">Log</span>.<span class="constructor">Message</span>.t <span class="keywordsign">-></span> <span class="constructor">Core</span>.<span class="constructor">Std</span>.<span class="constructor">Time</span>.t<br> <span class="keyword">val</span> message : <span class="constructor">Log</span>.<span class="constructor">Message</span>.t <span class="keywordsign">-></span> string<br> <span class="keyword">val</span> level : <span class="constructor">Log</span>.<span class="constructor">Message</span>.t <span class="keywordsign">-></span> <span class="constructor">Log</span>.<span class="constructor">Level</span>.t option<br> <span class="keyword">val</span> tags : <span class="constructor">Log</span>.<span class="constructor">Message</span>.t <span class="keywordsign">-></span> (string * string) list<br> <span class="keyword">val</span> bin_t : <span class="constructor">Log</span>.<span class="constructor">Message</span>.t <span class="constructor">Core</span>.<span class="constructor">Std</span>.<span class="constructor">Bin_prot</span>.<span class="constructor">Type_class</span>.t<br> <span class="keyword">val</span> bin_read_t : <span class="constructor">Log</span>.<span class="constructor">Message</span>.t <span class="constructor">Core</span>.<span class="constructor">Std</span>.<span class="constructor">Bin_prot</span>.<span class="constructor">Read_ml</span>.reader<br> <span class="keyword">val</span> bin_read_t_ : <span class="constructor">Log</span>.<span class="constructor">Message</span>.t <span class="constructor">Core</span>.<span class="constructor">Std</span>.<span class="constructor">Bin_prot</span>.<span class="constructor">Unsafe_read_c</span>.reader<br> <span class="keyword">val</span> bin_read_t__ :<br> (int <span class="keywordsign">-></span> <span class="constructor">Log</span>.<span class="constructor">Message</span>.t) <span class="constructor">Core</span>.<span class="constructor">Std</span>.<span class="constructor">Bin_prot</span>.<span class="constructor">Unsafe_read_c</span>.reader<br> <span class="keyword">val</span> bin_reader_t : <span class="constructor">Log</span>.<span class="constructor">Message</span>.t <span class="constructor">Core</span>.<span class="constructor">Std</span>.<span class="constructor">Bin_prot</span>.<span class="constructor">Type_class</span>.reader<br> <span class="keyword">val</span> bin_size_t : <span class="constructor">Log</span>.<span class="constructor">Message</span>.t <span class="constructor">Core</span>.<span class="constructor">Std</span>.<span class="constructor">Bin_prot</span>.<span class="constructor">Size</span>.sizer<br> <span class="keyword">val</span> bin_write_t : <span class="constructor">Log</span>.<span class="constructor">Message</span>.t <span class="constructor">Core</span>.<span class="constructor">Std</span>.<span class="constructor">Bin_prot</span>.<span class="constructor">Write_ml</span>.writer<br> <span class="keyword">val</span> bin_write_t_ :<br> <span class="constructor">Log</span>.<span class="constructor">Message</span>.t <span class="constructor">Core</span>.<span class="constructor">Std</span>.<span class="constructor">Bin_prot</span>.<span class="constructor">Unsafe_write_c</span>.writer<br> <span class="keyword">val</span> bin_writer_t : <span class="constructor">Log</span>.<span class="constructor">Message</span>.t <span class="constructor">Core</span>.<span class="constructor">Std</span>.<span class="constructor">Bin_prot</span>.<span class="constructor">Type_class</span>.writer<br> <span class="keyword">val</span> t_of_sexp : <span class="constructor">Sexplib</span>.<span class="constructor">Sexp</span>.t <span class="keywordsign">-></span> <span class="constructor">Log</span>.<span class="constructor">Message</span>.t<br> <span class="keyword">val</span> sexp_of_t : <span class="constructor">Log</span>.<span class="constructor">Message</span>.t <span class="keywordsign">-></span> <span class="constructor">Sexplib</span>.<span class="constructor">Sexp</span>.t<br> <span class="keyword">end</span><br> <span class="keyword">module</span> <span class="constructor">Rotation</span> :<br> <span class="keyword">sig</span><br> <span class="keyword">type</span> t = {<br> messages : int option;<br> size : <span class="constructor">Core</span>.<span class="constructor">Std</span>.<span class="constructor">Byte_units</span>.t option;<br> time : (<span class="constructor">Core</span>.<span class="constructor">Std</span>.<span class="constructor">Time</span>.<span class="constructor">Ofday</span>.t * <span class="constructor">Core</span>.<span class="constructor">Std</span>.<span class="constructor">Zone</span>.t) option;<br> keep :<br> [ <span class="keywordsign">`</span><span class="constructor">All</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">At_least</span> <span class="keyword">of</span> int <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Newer_than</span> <span class="keyword">of</span> <span class="constructor">Core</span>.<span class="constructor">Std</span>.<span class="constructor">Time</span>.<span class="constructor">Span</span>.t ];<br> naming_scheme : [ <span class="keywordsign">`</span><span class="constructor">Numbered</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Timestamped</span> ];<br> }<br> <span class="keyword">val</span> t_of_sexp : <span class="constructor">Sexplib</span>.<span class="constructor">Sexp</span>.t <span class="keywordsign">-></span> <span class="constructor">Log</span>.<span class="constructor">Rotation</span>.t<br> <span class="keyword">val</span> sexp_of_t : <span class="constructor">Log</span>.<span class="constructor">Rotation</span>.t <span class="keywordsign">-></span> <span class="constructor">Sexplib</span>.<span class="constructor">Sexp</span>.t<br> <span class="keyword">end</span><br> <span class="keyword">module</span> <span class="constructor">Output</span> :<br> <span class="keyword">sig</span><br> <span class="keyword">type</span> machine_readable_format = [ <span class="keywordsign">`</span><span class="constructor">Bin_prot</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Sexp</span> ]<br> <span class="keyword">type</span> format = [ <span class="keywordsign">`</span><span class="constructor">Bin_prot</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Sexp</span> <span class="keywordsign">|</span> <span class="keywordsign">`</span><span class="constructor">Text</span> ]<br> <span class="keyword">type</span> t<br> <span class="keyword">val</span> create :<br> (<span class="constructor">Log</span>.<span class="constructor">Message</span>.t <span class="constructor">Core</span>.<span class="constructor">Std</span>.<span class="constructor">Queue</span>.t <span class="keywordsign">-></span> unit <span class="constructor">Import</span>.<span class="constructor">Deferred</span>.t) <span class="keywordsign">-></span><br> <span class="constructor">Log</span>.<span class="constructor">Output</span>.t<br> <span class="keyword">val</span> screen : <span class="constructor">Log</span>.<span class="constructor">Output</span>.t<br> <span class="keyword">val</span> writer : <span class="constructor">Log</span>.<span class="constructor">Output</span>.format <span class="keywordsign">-></span> <span class="constructor">Import</span>.<span class="constructor">Writer</span>.t <span class="keywordsign">-></span> <span class="constructor">Log</span>.<span class="constructor">Output</span>.t<br> <span class="keyword">val</span> file : <span class="constructor">Log</span>.<span class="constructor">Output</span>.format <span class="keywordsign">-></span> filename:string <span class="keywordsign">-></span> <span class="constructor">Log</span>.<span class="constructor">Output</span>.t<br> <span class="keyword">val</span> rotating_file :<br> <span class="constructor">Log</span>.<span class="constructor">Output</span>.format <span class="keywordsign">-></span><br> basename:string <span class="keywordsign">-></span> <span class="constructor">Log</span>.<span class="constructor">Rotation</span>.t <span class="keywordsign">-></span> <span class="constructor">Log</span>.<span class="constructor">Output</span>.t<br> <span class="keyword">end</span><br> <span class="keyword">module</span> <span class="constructor">Blocking</span> :<br> <span class="keyword">sig</span><br> <span class="keyword">module</span> <span class="constructor">Output</span> :<br> <span class="keyword">sig</span><br> <span class="keyword">type</span> t<br> <span class="keyword">val</span> screen : <span class="constructor">Log</span>.<span class="constructor">Blocking</span>.<span class="constructor">Output</span>.t<br> <span class="keyword">val</span> create : (<span class="constructor">Log</span>.<span class="constructor">Message</span>.t <span class="keywordsign">-></span> unit) <span class="keywordsign">-></span> <span class="constructor">Log</span>.<span class="constructor">Blocking</span>.<span class="constructor">Output</span>.t<br> <span class="keyword">end</span><br> <span class="keyword">val</span> set_level : <span class="constructor">Log</span>.<span class="constructor">Level</span>.t <span class="keywordsign">-></span> unit<br> <span class="keyword">val</span> set_output : <span class="constructor">Log</span>.<span class="constructor">Blocking</span>.<span class="constructor">Output</span>.t <span class="keywordsign">-></span> unit<br> <span class="keyword">val</span> raw :<br> ?tags:(string * string) list <span class="keywordsign">-></span><br> (<span class="keywordsign">'</span>a, unit, string, unit) <span class="constructor">Pervasives</span>.format4 <span class="keywordsign">-></span> <span class="keywordsign">'</span>a<br> <span class="keyword">val</span> info :<br> ?tags:(string * string) list <span class="keywordsign">-></span><br> (<span class="keywordsign">'</span>a, unit, string, unit) <span class="constructor">Pervasives</span>.format4 <span class="keywordsign">-></span> <span class="keywordsign">'</span>a<br> <span class="keyword">val</span> error :<br> ?tags:(string * string) list <span class="keywordsign">-></span><br> (<span class="keywordsign">'</span>a, unit, string, unit) <span class="constructor">Pervasives</span>.format4 <span class="keywordsign">-></span> <span class="keywordsign">'</span>a<br> <span class="keyword">val</span> debug :<br> ?tags:(string * string) list <span class="keywordsign">-></span><br> (<span class="keywordsign">'</span>a, unit, string, unit) <span class="constructor">Pervasives</span>.format4 <span class="keywordsign">-></span> <span class="keywordsign">'</span>a<br> <span class="keyword">end</span><br> <span class="keyword">type</span> t<br> <span class="keyword">module</span> <span class="keyword">type</span> <span class="constructor">Global_intf</span> =<br> <span class="keyword">sig</span><br> <span class="keyword">val</span> log : <span class="constructor">Log</span>.t <span class="constructor">Core</span>.<span class="constructor">Std</span>.<span class="constructor">Lazy</span>.t<br> <span class="keyword">val</span> set_level : <span class="constructor">Log</span>.<span class="constructor">Level</span>.t <span class="keywordsign">-></span> unit<br> <span class="keyword">val</span> set_output : <span class="constructor">Log</span>.<span class="constructor">Output</span>.t list <span class="keywordsign">-></span> unit<br> <span class="keyword">val</span> raw :<br> ?tags:(string * string) list <span class="keywordsign">-></span><br> (<span class="keywordsign">'</span>a, unit, string, unit) <span class="constructor">Pervasives</span>.format4 <span class="keywordsign">-></span> <span class="keywordsign">'</span>a<br> <span class="keyword">val</span> info :<br> ?tags:(string * string) list <span class="keywordsign">-></span><br> (<span class="keywordsign">'</span>a, unit, string, unit) <span class="constructor">Pervasives</span>.format4 <span class="keywordsign">-></span> <span class="keywordsign">'</span>a<br> <span class="keyword">val</span> error :<br> ?tags:(string * string) list <span class="keywordsign">-></span><br> (<span class="keywordsign">'</span>a, unit, string, unit) <span class="constructor">Pervasives</span>.format4 <span class="keywordsign">-></span> <span class="keywordsign">'</span>a<br> <span class="keyword">val</span> debug :<br> ?tags:(string * string) list <span class="keywordsign">-></span><br> (<span class="keywordsign">'</span>a, unit, string, unit) <span class="constructor">Pervasives</span>.format4 <span class="keywordsign">-></span> <span class="keywordsign">'</span>a<br> <span class="keyword">val</span> flushed : unit <span class="keywordsign">-></span> unit <span class="constructor">Import</span>.<span class="constructor">Deferred</span>.t<br> <span class="keyword">val</span> printf :<br> ?tags:(string * string) list <span class="keywordsign">-></span><br> ?level:<span class="constructor">Log</span>.<span class="constructor">Level</span>.t <span class="keywordsign">-></span><br> (<span class="keywordsign">'</span>a, unit, string, unit) <span class="constructor">Pervasives</span>.format4 <span class="keywordsign">-></span> <span class="keywordsign">'</span>a<br> <span class="keyword">val</span> sexp :<br> ?tags:(string * string) list <span class="keywordsign">-></span><br> ?level:<span class="constructor">Log</span>.<span class="constructor">Level</span>.t <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="keywordsign">-></span> (<span class="keywordsign">'</span>a <span class="keywordsign">-></span> <span class="constructor">Core</span>.<span class="constructor">Std</span>.<span class="constructor">Sexp</span>.t) <span class="keywordsign">-></span> unit<br> <span class="keyword">val</span> of_lazy :<br> ?tags:(string * string) list <span class="keywordsign">-></span><br> ?level:<span class="constructor">Log</span>.<span class="constructor">Level</span>.t <span class="keywordsign">-></span> string <span class="constructor">Core</span>.<span class="constructor">Std</span>.<span class="constructor">Lazy</span>.t <span class="keywordsign">-></span> unit<br> <span class="keyword">val</span> message : <span class="constructor">Log</span>.<span class="constructor">Message</span>.t <span class="keywordsign">-></span> unit<br> <span class="keyword">end</span><br> <span class="keyword">module</span> <span class="constructor">Make_global</span> : <span class="keyword">functor</span> (<span class="constructor">Empty</span> : <span class="keyword">sig</span> <span class="keyword">end</span>) <span class="keywordsign">-></span> <span class="constructor">Global_intf</span><br> <span class="keyword">module</span> <span class="constructor">Global</span> : <span class="constructor">Global_intf</span><br> <span class="keyword">val</span> set_level : <span class="constructor">Log</span>.t <span class="keywordsign">-></span> <span class="constructor">Log</span>.<span class="constructor">Level</span>.t <span class="keywordsign">-></span> unit<br> <span class="keyword">val</span> set_output : <span class="constructor">Log</span>.t <span class="keywordsign">-></span> <span class="constructor">Log</span>.<span class="constructor">Output</span>.t list <span class="keywordsign">-></span> unit<br> <span class="keyword">val</span> close : <span class="constructor">Log</span>.t <span class="keywordsign">-></span> unit<br> <span class="keyword">val</span> flushed : <span class="constructor">Log</span>.t <span class="keywordsign">-></span> unit <span class="constructor">Import</span>.<span class="constructor">Deferred</span>.t<br> <span class="keyword">val</span> create : level:<span class="constructor">Log</span>.<span class="constructor">Level</span>.t <span class="keywordsign">-></span> output:<span class="constructor">Log</span>.<span class="constructor">Output</span>.t list <span class="keywordsign">-></span> <span class="constructor">Log</span>.t<br> <span class="keyword">val</span> raw :<br> ?tags:(string * string) list <span class="keywordsign">-></span><br> <span class="constructor">Log</span>.t <span class="keywordsign">-></span> (<span class="keywordsign">'</span>a, unit, string, unit) <span class="constructor">Pervasives</span>.format4 <span class="keywordsign">-></span> <span class="keywordsign">'</span>a<br> <span class="keyword">val</span> debug :<br> ?tags:(string * string) list <span class="keywordsign">-></span><br> <span class="constructor">Log</span>.t <span class="keywordsign">-></span> (<span class="keywordsign">'</span>a, unit, string, unit) <span class="constructor">Pervasives</span>.format4 <span class="keywordsign">-></span> <span class="keywordsign">'</span>a<br> <span class="keyword">val</span> info :<br> ?tags:(string * string) list <span class="keywordsign">-></span><br> <span class="constructor">Log</span>.t <span class="keywordsign">-></span> (<span class="keywordsign">'</span>a, unit, string, unit) <span class="constructor">Pervasives</span>.format4 <span class="keywordsign">-></span> <span class="keywordsign">'</span>a<br> <span class="keyword">val</span> error :<br> ?tags:(string * string) list <span class="keywordsign">-></span><br> <span class="constructor">Log</span>.t <span class="keywordsign">-></span> (<span class="keywordsign">'</span>a, unit, string, unit) <span class="constructor">Pervasives</span>.format4 <span class="keywordsign">-></span> <span class="keywordsign">'</span>a<br> <span class="keyword">val</span> printf :<br> ?tags:(string * string) list <span class="keywordsign">-></span><br> ?level:<span class="constructor">Log</span>.<span class="constructor">Level</span>.t <span class="keywordsign">-></span><br> <span class="constructor">Log</span>.t <span class="keywordsign">-></span> (<span class="keywordsign">'</span>a, unit, string, unit) <span class="constructor">Pervasives</span>.format4 <span class="keywordsign">-></span> <span class="keywordsign">'</span>a<br> <span class="keyword">val</span> sexp :<br> ?tags:(string * string) list <span class="keywordsign">-></span><br> ?level:<span class="constructor">Log</span>.<span class="constructor">Level</span>.t <span class="keywordsign">-></span> <span class="constructor">Log</span>.t <span class="keywordsign">-></span> <span class="keywordsign">'</span>a <span class="keywordsign">-></span> (<span class="keywordsign">'</span>a <span class="keywordsign">-></span> <span class="constructor">Core</span>.<span class="constructor">Std</span>.<span class="constructor">Sexp</span>.t) <span class="keywordsign">-></span> unit<br> <span class="keyword">val</span> of_lazy :<br> ?tags:(string * string) list <span class="keywordsign">-></span><br> ?level:<span class="constructor">Log</span>.<span class="constructor">Level</span>.t <span class="keywordsign">-></span> <span class="constructor">Log</span>.t <span class="keywordsign">-></span> string <span class="constructor">Core</span>.<span class="constructor">Std</span>.<span class="constructor">Lazy</span>.t <span class="keywordsign">-></span> unit<br> <span class="keyword">val</span> message : <span class="constructor">Log</span>.t <span class="keywordsign">-></span> <span class="constructor">Log</span>.<span class="constructor">Message</span>.t <span class="keywordsign">-></span> unit<br> <span class="keyword">module</span> <span class="constructor">Reader</span> :<br> <span class="keyword">sig</span><br> <span class="keyword">val</span> pipe :<br> [< <span class="constructor">Log</span>.<span class="constructor">Output</span>.machine_readable_format ] <span class="keywordsign">-></span><br> string <span class="keywordsign">-></span> <span class="constructor">Log</span>.<span class="constructor">Message</span>.t <span class="constructor">Import</span>.<span class="constructor">Pipe</span>.<span class="constructor">Reader</span>.t<br> <span class="keyword">end</span><br> <span class="keyword">end</span></code></body></html>