package trace

  1. Overview
  2. Docs
A stub for tracing/observability, agnostic in how data is collected

Install

Dune Dependency

Authors

Maintainers

Sources

trace-0.8.tbz
sha256=34cfa5662b611c1e246f0fb8131ee605eeb90b359c105e882f51adc7e70878c3
sha512=ea47974a77a0ab26c58fe6d1bc898d4f3e6a5f865e4c1acb4188b9acd7ba8e7527d0ea7f2ae66574ceccc14f11127ee203aedba2be334d17b36c83dabff61261

doc/src/trace.core/level.ml.html

Source file level.ml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
(** Tracing levels.

    This is similar to log levels in, say, [Logs].
    In a thoroughly instrumented program, there will be a {b lot}
    of spans, and enabling them all in production might slow
    down the application or overwhelm the tracing system; yet
    they might be useful in debug situations.

    @since 0.7 *)

(** Level of tracing. These levels are in increasing order, i.e if
    level [Debug1] is enabled, everything below it (Error, Warning, Info, etc.)
    are also enabled.
    @since 0.7 *)
type t =
  | Error  (** Only errors *)
  | Warning  (** Warnings *)
  | Info
  | Debug1  (** Least verbose debugging level *)
  | Debug2  (** Intermediate verbosity debugging level *)
  | Debug3  (** Maximum verbosity debugging level *)
  | Trace  (** Enable everything (default level) *)

(** @since 0.7 *)
let to_string : t -> string = function
  | Error -> "error"
  | Warning -> "warning"
  | Info -> "info"
  | Debug1 -> "debug1"
  | Debug2 -> "debug2"
  | Debug3 -> "debug3"
  | Trace -> "trace"

let[@inline] leq (a : t) (b : t) : bool = a <= b
OCaml

Innovation. Community. Security.