Module Rfc5424.Tag

type _ typ =
| String : string typ
| Bool : bool typ
| Float : float typ
| I64 : int64 typ
| U64 : Uint64.t typ
| U : unit typ

Type of a metric type (compatible with Warp10 and flowgger representation).

type tydef =
| Dyn : 'a typ * 'a Logs.Tag.def -> tydef

Existential type for log tag definiton.

module TS : Stdlib.Set.S with type TS.elt := tydef
val string : string Logs.Tag.def -> tydef
val bool : bool Logs.Tag.def -> tydef
val float : float Logs.Tag.def -> tydef
val i64 : int64 Logs.Tag.def -> tydef
val u64 : Uint64.t Logs.Tag.def -> tydef
val u : unit Logs.Tag.def -> tydef
val def : 'a typ -> tydef -> 'a Logs.Tag.def option

def typ tydef is Some def is tydef contains a def of type 'a, or None otherwise.

val add : 'a typ -> tydef -> 'a -> Logs.Tag.set -> Logs.Tag.set

add is like Logs.Tag.add but uses [tydef] instead of def.

val find : 'a typ -> tydef -> Logs.Tag.set -> ('a Logs.Tag.def * 'a option) option

find typ tydef set is Some value of requested type and definition if found in set, or None otherwise.