diff --git a/mtime/Mtime/Span/index.html b/mtime/Mtime/Span/index.html index df4a24c..20c19f4 100644 --- a/mtime/Mtime/Span/index.html +++ b/mtime/Mtime/Span/index.html @@ -1,2 +1,2 @@ -
Mtime.SpanMonotonic time spans.
type t = spanSee Mtime.span.
val zero : spanzero is a span of 0ns.
val one : spanone is a span of 1ns.
val max_span : spanmax_span is 264-1ns.
abs_diff span span' is the absolute difference between span and span'.
n * dur is n times duration dur.
Warning. Does not check for overflow or that n is positive.
val ns : spanns is a nanosecond duration, 1·10-9s.
val us : spanus is a microsecond duration, 1·10-6s.
val ms : spanms is a millisecond duration, 1·10-3s.
val s : spans is a second duration, 1s.
val min : spanmin is a minute duration, 60s.
val hour : spanhour is an hour duration, 3600s.
val day : spanday is a day duration, 86'400s.
val year : spanyear is a Julian year duration (365.25 days), 31'557'600s.
val to_uint64_ns : span -> int64to_uint64_ns span is span as an unsigned 64-bit integer nanosecond span.
val of_uint64_ns : int64 -> spanof_uint64_ns u is the unsigned 64-bit integer nanosecond span u as a span.
val of_float_ns : float -> span optionof_float_ns f is the positive floating point nanosecond span f as a span. This is None if f is negative, non finite, or larger or equal than 253 (~104 days, the largest exact floating point integer).
val to_float_ns : span -> floatto_float_ns s is span as a nanosecond floating point span. Note that if s is larger than 253 (~104 days, the largest exact floating point integer) the result is an approximation and will not round trip with of_float_ns.
val pp : Stdlib.Format.formatter -> span -> unitpp formats spans according to their magnitude using SI prefixes on seconds and accepted non-SI units. Years are counted in Julian years (365.25 SI-accepted days) as defined by the International Astronomical Union.
Rounds towards positive infinity, i.e. over approximates, no duration is formatted shorter than it is.
The output is UTF-8 encoded, it uses U+03BC for µs (10-6s).
val dump : Stdlib.Format.formatter -> t -> unitdump ppf span formats an unspecified raw representation of span on ppf.
Mtime.SpanMonotonic time spans.
type t = spanSee Mtime.span.
val zero : spanzero is a span of 0ns.
val one : spanone is a span of 1ns.
val max_span : spanmax_span is 264-1ns.
is_shorter span ~than is true iff span lasts less than than.
is_longer span ~than is true iff span lasts more than than.
abs_diff span span' is the absolute difference between span and span'.
n * dur is n times duration dur.
Warning. Does not check for overflow or that n is positive.
val ns : spanns is a nanosecond duration, 1·10-9s.
val us : spanus is a microsecond duration, 1·10-6s.
val ms : spanms is a millisecond duration, 1·10-3s.
val s : spans is a second duration, 1s.
val min : spanmin is a minute duration, 60s.
val hour : spanhour is an hour duration, 3600s.
val day : spanday is a day duration, 86'400s.
val year : spanyear is a Julian year duration (365.25 days), 31'557'600s.
val to_uint64_ns : span -> int64to_uint64_ns span is span as an unsigned 64-bit integer nanosecond span.
val of_uint64_ns : int64 -> spanof_uint64_ns u is the unsigned 64-bit integer nanosecond span u as a span.
val of_float_ns : float -> span optionof_float_ns f is the positive floating point nanosecond span f as a span. This is None if f is negative, non finite, or larger or equal than 253 (~104 days, the largest exact floating point integer).
val to_float_ns : span -> floatto_float_ns s is span as a nanosecond floating point span. Note that if s is larger than 253 (~104 days, the largest exact floating point integer) the result is an approximation and will not round trip with of_float_ns.
val pp : Stdlib.Format.formatter -> span -> unitpp formats spans according to their magnitude using SI prefixes on seconds and accepted non-SI units. Years are counted in Julian years (365.25 SI-accepted days) as defined by the International Astronomical Union.
Rounds towards positive infinity, i.e. over approximates, no duration is formatted shorter than it is.
The output is UTF-8 encoded, it uses U+03BC for µs (10-6s).
val dump : Stdlib.Format.formatter -> t -> unitdump ppf span formats an unspecified raw representation of span on ppf.
Mtime has platform independent support for monotonic wall-clock time. This time increases monotonically and is not subject to operating system calendar time adjustments. The library has types to represent nanosecond precision timestamps and time spans.
Mtime_clock provides acces to a monotonic system clock and its resolution (if available).
mtimeMtime Monotonic time values.mtime.clock.osMtime_clock Monotonic time clock.Also use this library for compiling to JavaScript.
| changes-files | |
| license-files | |
| readme-files |
Mtime has platform independent support for monotonic wall-clock time. This time increases monotonically and is not subject to operating system calendar time adjustments. The library has types to represent nanosecond precision timestamps and time spans.
Mtime_clock provides acces to a monotonic system clock and its resolution (if available).
mtimeMtime Monotonic time values.mtime.clock.osMtime_clock Monotonic time clock.This library also works with JavaScript, see the platform support.
| changes-files | |
| license-files | |
| readme-files |
Trace_tefval collector :
- out:[ `File of string | `Stderr | `Stdout ] ->
- unit ->
- Trace_core.collectorMake a collector that writes into the given output. See setup for more details.
Output for tracing.
`Stdout will enable tracing and print events on stdout`Stderr will enable tracing and print events on stderr`File "foo" will enable tracing and print events into file named "foo"val setup : ?out:[ output | `Env ] -> unit -> unitsetup () installs the collector depending on out.
val with_setup : ?out:[ output | `Env ] -> unit -> (unit -> 'a) -> 'awith_setup () f (optionally) sets a collector up, calls f(), and makes sure to shutdown before exiting. since 0.2 a () argument was added.
Trace_tefOutput for tracing.
`Stdout will enable tracing and print events on stdout`Stderr will enable tracing and print events on stderr`File "foo" will enable tracing and print events into file named "foo"val subscriber : out:[< output ] -> unit -> Trace_subscriber.tA subscriber emitting TEF traces into out.
val collector : out:[< output ] -> unit -> Trace_core.collectorMake a collector that writes into the given output. See setup for more details.
val setup : ?out:[ output | `Env ] -> unit -> unitsetup () installs the collector depending on out.
val with_setup : ?out:[ output | `Env ] -> unit -> (unit -> 'a) -> 'awith_setup () f (optionally) sets a collector up, calls f(), and makes sure to shutdown before exiting. since 0.2 a () argument was added.
Trace_tef_tldrsval collector : out:[ `File of string ] -> unit -> Trace_core.collectorMake a collector that writes into the given output. See setup for more details.
Output for tracing.
`File "foo" will enable tracing and print events into file named "foo". The file is only written at exit.val setup : ?out:[ output | `Env ] -> unit -> unitsetup () installs the collector depending on out.
val with_setup : ?out:[ output | `Env ] -> unit -> (unit -> 'a) -> 'awith_setup () f (optionally) sets a collector up, calls f(), and makes sure to shutdown before exiting.
Trace_tef_tldrsEmit traces by talking to the tldrs daemon
val collector : out:[ `File of string ] -> unit -> Trace_core.collectorMake a collector that writes into the given output. See setup for more details.
val subscriber : out:[ `File of string ] -> unit -> Trace_subscriber.tMake a subscriber that writes into the given output.
Output for tracing.
`File "foo" will enable tracing and print events into file named "foo". The file is only written at exit.val setup : ?out:[ output | `Env ] -> unit -> unitsetup () installs the collector depending on out.
val with_setup : ?out:[ output | `Env ] -> unit -> (unit -> 'a) -> 'awith_setup () f (optionally) sets a collector up, calls f(), and makes sure to shutdown before exiting.
Trace_tef Trace_tef_tldrs Emit traces by talking to the tldrs daemonCallbacks.DummyDummy callbacks. It can be useful to reuse some of these functions in a real subscriber that doesn't want to handle all events, but only some of them.
Trace_subscriber.Callbacksmodule type S = sig ... endFirst class module signature for callbacks
Callbacks for a subscriber. There is one callback per event in Trace. The type 'st is the state that is passed to every single callback.
module Dummy : sig ... endDummy callbacks. It can be useful to reuse some of these functions in a real subscriber that doesn't want to handle all events, but only some of them.
val dummy : unit -> 'st tDummy callbacks, do nothing.
Callbacks.SFirst class module signature for callbacks
val on_init : st -> time_ns:float -> unitCalled when the subscriber is initialized in a collector
val on_shutdown : st -> time_ns:float -> unitCalled when the collector is shutdown
val on_name_thread : st -> time_ns:float -> tid:int -> name:string -> unitCurrent thread is being named
val on_name_process : st -> time_ns:float -> tid:int -> name:string -> unitCurrent process is being named
val on_enter_span :
+ st ->
+ __FUNCTION__:string option ->
+ __FILE__:string ->
+ __LINE__:int ->
+ time_ns:float ->
+ tid:int ->
+ data:(string * Trace_subscriber__.Types.user_data) list ->
+ name:string ->
+ Trace_core.span ->
+ unitEnter a regular (sync) span
val on_exit_span : st -> time_ns:float -> tid:int -> Trace_core.span -> unitExit a span. This and on_enter_span must follow strict stack discipline
val on_add_data :
+ st ->
+ data:(string * Trace_subscriber__.Types.user_data) list ->
+ Trace_core.span ->
+ unitAdd data to a regular span (which must be active)
val on_message :
+ st ->
+ time_ns:float ->
+ tid:int ->
+ span:Trace_core.span option ->
+ data:(string * Trace_subscriber__.Types.user_data) list ->
+ string ->
+ unitEmit a log message
val on_counter :
+ st ->
+ time_ns:float ->
+ tid:int ->
+ data:(string * Trace_subscriber__.Types.user_data) list ->
+ name:string ->
+ float ->
+ unitEmit the current value of a counter
val on_enter_manual_span :
+ st ->
+ __FUNCTION__:string option ->
+ __FILE__:string ->
+ __LINE__:int ->
+ time_ns:float ->
+ tid:int ->
+ parent:Trace_core.span option ->
+ data:(string * Trace_subscriber__.Types.user_data) list ->
+ name:string ->
+ flavor:Trace_subscriber__.Types.flavor option ->
+ trace_id:int ->
+ Trace_core.span ->
+ unitEnter a manual (possibly async) span
val on_exit_manual_span :
+ st ->
+ time_ns:float ->
+ tid:int ->
+ name:string ->
+ data:(string * Trace_subscriber__.Types.user_data) list ->
+ flavor:Trace_subscriber__.Types.flavor option ->
+ trace_id:int ->
+ Trace_core.span ->
+ unitExit a manual span
Trace_subscriber.SubscriberA trace subscriber. It pairs a set of callbacks with the state they need (which can contain a file handle, a socket, config, etc.).
The design goal for this is that it should be possible to avoid allocations when the trace collector calls the callbacks.
val dummy : tDummy subscriber that ignores every call.
Trace_subscriberGeneric subscribers.
This defines the notion of a subscriber, a set of callbacks for every trace event. It also defines a collector that needs to be installed for the subscriber(s) to be called.
module Callbacks : sig ... endmodule Subscriber : sig ... endtype t = Subscriber.tval collector : t -> Trace_core.collectorTrace_subscriber__Trace_subscriber__CallbacksTrace_subscriber__SubscriberTrace_subscriber__Thread_Trace_subscriber__Time_Trace_subscriber__TypesTrace Trace_core Trace.Trace_private_util Trace_subscriber Generic subscribers.