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.91.tbz
sha256=4aaee2025957acf71434a027bd57ee699a9ae927e6b49804fb1e999e16a03694
sha512=f3ec030fc4ca0483c3fc143eaa802e2aa02b4c25e1a03ec967bd017fad8a4ef6287e9f9688486434d1ac2fc403217658b61d2c7f3709c092c939b93f412ee5c5

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

Source file value.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
open Common_

type t =
  [ `Int of int
  | `String of string
  | `Bool of bool
  | `Float of float
  | `None
  ]
(** A value in a key/value attribute *)

let conv =
  let open Proto.Common in
  function
  | `Int i -> Some (Int_value (Int64.of_int i))
  | `String s -> Some (String_value s)
  | `Bool b -> Some (Bool_value b)
  | `Float f -> Some (Double_value f)
  | `None -> None

let of_otel_opt (v : Proto.Common.any_value option) : t =
  match v with
  | Some (Int_value i) -> `Int (Int64.to_int i)
  | Some (String_value s) -> `String s
  | Some (Bool_value b) -> `Bool b
  | Some (Double_value f) -> `Float f
  | Some (Array_value _ | Kvlist_value _ | Bytes_value _) | None -> `None