package tezos-stdlib-unix

  1. Overview
  2. Docs

An implementation of Tezos_base.Internal_event.SINK which writes the events as JSON into a single file-descriptor.

It is registered with the URI scheme "file-descriptor-path" to output to a file or "file-descriptor-stdout"/"file-descriptor-stderr" for stdout and stderr respectively.

Available options are

Options available only for "file-descriptor-path://":

  • "with-pid=true" adds the current process id to the file path provided.
  • "fresh=true" smashes the content of the file if it already exists instead of appending to it.
  • "chmod=<INT>" sets the access-rights of the file at creation time (default is 0o600, provided umask allows it).

Examples:

  • "export TEZOS_EVENTS_CONFIG=file-descriptor-path:///the/path/to/write.log?format=one-per-line&level-at-least=notice&with-pid=true&chmod=0o640": Executables will write all log events of level at least Notice to a file "/the/path/to/write-XXXX.log" where "XXXX" is the process ID, the file will be also readable by the user's group (0o640).
  • "export TEZOS_EVENTS_CONFIG=file-descriptor-stderr://?format=netstring" Executables will write to stderr.
  • "export TEZOS_EVENTS_CONFIG=file-descriptor-path:///dev/fd/4?format=netstring" Executables will write to the 4 file-descriptor likely opened by a parent monitoring process (non-standard feature available on mainstream UNIX hosts, e.g. Linux and MacOSX).
  • "export TEZOS_NODE_HOSTNAME=hostname" The hostname will be used in the JSON representation of the event. By default, it is the hostname given by Unix.gethostname ().
type t
OCaml

Innovation. Community. Security.