package nloge

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type
module Level : sig ... end
type 'a msgf = (('a, Stdlib.Format.formatter, unit, unit) Stdlib.format4 -> 'a) -> unit
type metadata = (string * Yojson.Safe.t) list
type 'a t = Level.t * string option * metadata * 'a msgf
type Stdlib.Effect.t +=
  1. | Emit : 'a t -> unit Stdlib.Effect.t
    (*

    Emit emits log object. Logs can be injected to handle the effect.

    *)
val emit : Level.t -> 'a msgf -> string option -> metadata -> unit

log level msgf sends msgf message object with level level

log `Debug @@ fun m -> m "hello, %s" "world"

val emg : ?metadata:metadata -> ?__LOC__:string -> 'a msgf -> unit
val alert : ?metadata:metadata -> ?__LOC__:string -> 'a msgf -> unit
val crit : ?metadata:metadata -> ?__LOC__:string -> 'a msgf -> unit
val err : ?metadata:metadata -> ?__LOC__:string -> 'a msgf -> unit
val warn : ?metadata:metadata -> ?__LOC__:string -> 'a msgf -> unit
val notice : ?metadata:metadata -> ?__LOC__:string -> 'a msgf -> unit
val info : ?metadata:metadata -> ?__LOC__:string -> 'a msgf -> unit
val debug : ?metadata:metadata -> ?__LOC__:string -> 'a msgf -> unit
val make_emit_handler : (unit -> 'r) -> (float -> Level.t -> string option -> metadata -> string -> unit) -> 'r0
type Stdlib.Effect.t +=
  1. | Write : string * Level.t -> unit Stdlib.Effect.t
  2. | GetTime : Eio.Time.clock Stdlib.Effect.t
val write : Level.t -> string -> unit
module Trans : sig ... end
val run : clock:Eio.Time.clock -> sw:Eio.Switch.t -> outputs:Eio.Flow.sink list -> level:Level.t -> ?trans:((unit -> 'r) -> 'r) -> (unit -> 'r) -> 'r0