Module Handlers.FileHandler

Module to create handlers that output to a file.

type config = {
logs_folder : string;

Path in which logs files will be written.

truncate : bool;

Truncate/append if file already exists.

file_perms : int;

Unix file permissions.

date_prefix : string option;

Optional date prefix format string.

versioning : int option;

Optionaly generate new file name.

suffix : string;

Constant suffix.


Configuration when creating a file handler.

  • The date_prefix value is an optional Calender Printer String (as specified in the Calendar documentation), that will format the time at which the handler is created, and used as a prefix.
  • If the versioning value is not None, a versionning number is appended to the filename, based on already existing files. The integer gives the padding of versionning numbers. THIS OPTION MIGHT DISAPPEAR IN FUTURE RELEASES.
val default_config : config
val generate_prefix : config -> string
val generate_filename : config -> string -> string
val create_file : config -> string -> Stdlib.out_channel
val make : ?⁠config:config -> Easy_logging__.Logging_types.level -> string -> t

make ~config level filename_base creates a Handler that will output logs to the file created from filename_base and config

val make_rotating : ?⁠config:config -> Easy_logging__.Logging_types.level -> string -> int -> int -> t

make_rotating ~config level filename_base max_kbytes backup_count creates a Handler that will output logs to a rotating set of files. The files are from filename_base and config. When the size of a log file is about to exceed max_kbytes kb, a new file is created, and older log files are renamed. See the python RotatingFileHandler.