package nloge

  1. Overview
  2. Docs
Non-blocking logger with eio

Install

Dune Dependency

Authors

Maintainers

Sources

nloge-0.0.2.tbz
sha256=3298aed3e46eaf255384285e96091eed9c62892258e37fa3c5c790b211b07ff5
sha512=7a927c23f94824fef3b09783af29b87c5e4de0c2b458a5571f3acbd30afdadaef14ac3fbb33daaa360f9b5a9ffe8162dbe92db319d9a24a678eac514dc9c1aa5

Description

Published: 12 Jun 2023

README

n log e

Nloge, no-blocking logger with eio

Logger emits JSON -{Emit} -> converts JSON to string -{Write}-> "log"s the string

Usage

See hello

let () =
  Eio_main.run
  @@ fun env ->
  Eio.Switch.run
  @@ fun sw ->
  Nloge.run ~sw ~outputs:[ env#stdout ] ~level:`Debug
  @@ fun () ->
  Nloge.debug
    ~__LOC__
    ~metadata:[ "now_posix", `Float (Eio.Time.now env#clock) ]
    (fun m -> m "hello")
;;

By default nloge logs with JSON format:

$ dune exec --display=quiet examples/hello.exe
{"log_level":"DEBUG","message":"hello","label":"File \"examples/hello.ml\", line 9, characters 5-12","now_posix":1683056241.957986}

custom writere

See custom writer

Dependencies (6)

  1. ptime
  2. yojson >= "1.6.0"
  3. ppx_deriving
  4. eio < "0.12"
  5. dune >= "3.7.0"
  6. ocaml >= "5.0"

Dev Dependencies (5)

  1. odig with-doc
  2. odoc with-doc
  3. alcotest with-test
  4. ppx_expect with-test
  5. eio_main with-test

Used by

None

Conflicts

None