Legend:
Library
Module
Module type
Parameter
Class
Class type
Diagnostic event journaling (basis).
Overview
This module defines the core module types of a lightweight foundation for diagnostic event journaling, similar to the core Java classes in the Log4j project from the Apache Foundation.
The core interface of the
f_journal
module is functorial, and is intended for extensibility.
The basic prioritizer class, defining the priority codes and message tags for all of the basic priority levels: `Invalid, `Fail, `Error, `Warn, `Info and `Debug. Derive a subclass to define a prioritizer for additional priority levels corresponding to other integer codes.
The basic channel archiver. Use new basic_channel_archiver c to construct an archiver that emits each basic event e with a priority level less than `Fail to the channel c using Printf.fprintf c "%s: %s\n"
e#prioritizer#tag e#message.
The basic journaling agent. Derive a subclass to define an agent that can construct events derived from the basic event (which may also require archivers derived from the basic archiver that can format any additional required output). The class defines six public methods for output of diagnostic events, one for each basic priority level.