package opentelemetry

  1. Overview
  2. Docs
Core library for instrumentation and serialization for https://opentelemetry.io

Install

dune-project
 Dependency

Authors

Maintainers

Sources

opentelemetry-0.92.tbz
sha256=b635c486d1333cbb7276cc0075d5e01b017d4b37bd5941377ee1be07dfa25a45
sha512=2a19bf4e371ed2751e018c734ead2fd130d378ef0e018cda7b4aa3048af3e0db771fbd78d936199b34164950454bce0f3cb6211455e3647f7b7a85f4649bb22c

doc/src/opentelemetry.core/any_signal_l.ml.html

Source file any_signal_l.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
35
36
37
(** Any kind of lists of signals *)

open Common_

type t =
  | Spans of Span.t list
  | Metrics of Metrics.t list
  | Logs of Log_record.t list

open struct
  let pp_sep out () = Format.fprintf out ";@ "

  let pp_list ppx out l =
    Format.fprintf out "[@[%a@]]" (Format.pp_print_list ~pp_sep ppx) l
end

let pp out = function
  | Spans s -> pp_list Proto.Trace.pp_span out s
  | Metrics m -> pp_list Proto.Metrics.pp_metric out m
  | Logs l -> pp_list Proto.Logs.pp_log_record out l

let length = function
  | Spans l -> List.length l
  | Metrics l -> List.length l
  | Logs l -> List.length l

let of_logs_or_empty = function
  | [] -> []
  | l -> [ Logs l ]

let of_metrics_or_empty = function
  | [] -> []
  | l -> [ Metrics l ]

let of_spans_or_empty = function
  | [] -> []
  | l -> [ Spans l ]