The hu.dwim.logger Reference Manual

This is the hu.dwim.logger Reference Manual, generated automatically by Declt version 4.0 beta 2 "William Riker" on Fri May 15 12:26:55 2026 GMT+0.

Table of Contents


1 Introduction


2 Systems

The main system appears first, followed by any subsystem dependency.


2.1 hu.dwim.logger

Generic purpose logger utility.

Authors

Tamás Borbély <>
Attila Lendvai <>
Levente Mészáros <>

License

BSD or Bugroff

Defsystem Dependency

hu.dwim.asdf (system).

Dependencies
  • bordeaux-threads (system).
  • hu.dwim.def/namespace (system).
  • hu.dwim.def+hu.dwim.common (system).
  • hu.dwim.defclass-star+hu.dwim.def (system).
  • hu.dwim.util (system).
  • hu.dwim.util/threads (system).
  • local-time (system).
Source

hu.dwim.logger.asd.

Child Component

source (module).


3 Modules

Modules are listed depth-first from the system components tree.


3.1 hu.dwim.logger/source

Source

hu.dwim.logger.asd.

Parent Component

hu.dwim.logger (system).

Child Components

4 Files

Files are sorted by type and then listed depth-first from the systems components trees.


4.1 Lisp


4.1.1 hu.dwim.logger/hu.dwim.logger.asd

Source

hu.dwim.logger.asd.

Parent Component

hu.dwim.logger (system).

ASDF Systems

hu.dwim.logger.


4.1.2 hu.dwim.logger/source/api.lisp

Dependency

package.lisp (file).

Source

hu.dwim.logger.asd.

Parent Component

source (module).

Public Interface
Internals

4.1.3 hu.dwim.logger/source/appender.lisp

Dependencies
Source

hu.dwim.logger.asd.

Parent Component

source (module).

Public Interface
Internals

4.1.4 hu.dwim.logger/source/formatter.lisp

Dependencies
Source

hu.dwim.logger.asd.

Parent Component

source (module).

Public Interface
Internals

4.1.5 hu.dwim.logger/source/logger.lisp

Dependency

api.lisp (file).

Source

hu.dwim.logger.asd.

Parent Component

source (module).

Public Interface
Internals

4.1.6 hu.dwim.logger/source/package.lisp

Source

hu.dwim.logger.asd.

Parent Component

source (module).

Packages

hu.dwim.logger.


4.1.7 hu.dwim.logger/source/root-logger.lisp

Dependencies
Source

hu.dwim.logger.asd.

Parent Component

source (module).

Public Interface

5 Packages

Packages are listed by definition order.


5.1 hu.dwim.logger

Source

package.lisp.

Use List
  • hu.dwim.asdf.
  • hu.dwim.common.
  • hu.dwim.def.
  • hu.dwim.util.
Public Interface
Internals

6 Definitions

Definitions are sorted by export status, category, package, and then by lexicographic order.


6.1 Public Interface


6.1.1 Constants

Constant: +debug+
Package

hu.dwim.logger.

Source

logger.lisp.

Constant: +dribble+
Package

hu.dwim.logger.

Source

logger.lisp.

Constant: +error+
Package

hu.dwim.logger.

Source

logger.lisp.

Constant: +fatal+
Package

hu.dwim.logger.

Source

logger.lisp.

Constant: +info+
Package

hu.dwim.logger.

Source

logger.lisp.

Constant: +log-level-keywords+
Package

hu.dwim.logger.

Source

logger.lisp.

Constant: +log-level-names+
Package

hu.dwim.logger.

Source

logger.lisp.

Constant: +warn+
Package

hu.dwim.logger.

Source

logger.lisp.


6.1.2 Special variables

Special Variable: *log-directory*
Package

hu.dwim.logger.

Source

appender.lisp.


6.1.3 Macros

Macro: deflogger (name parents &key accessor-name-prefix compile-time-level runtime-level appender appenders documentation)
Package

hu.dwim.logger.

Source

logger.lisp.

Macro: root-logger.debug (message-control &rest message-args)
Package

hu.dwim.logger.

Source

root-logger.lisp.

Macro: root-logger.dribble (message-control &rest message-args)
Package

hu.dwim.logger.

Source

root-logger.lisp.

Macro: root-logger.error (message-control &rest message-args)
Package

hu.dwim.logger.

Source

root-logger.lisp.

Macro: root-logger.fatal (message-control &rest message-args)
Package

hu.dwim.logger.

Source

root-logger.lisp.

Macro: root-logger.info (message-control &rest message-args)
Package

hu.dwim.logger.

Source

root-logger.lisp.

Macro: root-logger.warn (message-control &rest message-args)
Package

hu.dwim.logger.

Source

root-logger.lisp.

Macro: with-logger-level ((logger-name new-level) &body body)

Set the runtime level of the listed logger(s) to NEW-LEVEL and restore the original value in an unwind-protect.

Package

hu.dwim.logger.

Source

logger.lisp.


6.1.4 Compiler macros

Compiler Macro: find-logger (name &key otherwise)
Package

hu.dwim.logger.

Source

logger.lisp.


6.1.5 Ordinary functions

Function: find-logger (name &key otherwise)
Package

hu.dwim.logger.

Source

logger.lisp.

Function: (setf find-logger) (name)
Package

hu.dwim.logger.

Source

logger.lisp.

Function: flush-caching-appender (appender)
Package

hu.dwim.logger.

Source

appender.lisp.

Function: flush-caching-appenders ()
Package

hu.dwim.logger.

Source

appender.lisp.

Function: log-level (logger)
Package

hu.dwim.logger.

Source

logger.lisp.

Function: (setf log-level) (logger)
Package

hu.dwim.logger.

Source

logger.lisp.

Function: log-level/compile-time (logger)
Package

hu.dwim.logger.

Source

logger.lisp.

Function: (setf log-level/compile-time) (logger &key recursive)
Package

hu.dwim.logger.

Source

logger.lisp.

Function: log-level/runtime (logger)
Package

hu.dwim.logger.

Source

logger.lisp.

Function: (setf log-level/runtime) (logger &key recursive)
Package

hu.dwim.logger.

Source

logger.lisp.

Function: log-to-console (format-control &rest format-arguments)
Package

hu.dwim.logger.

Source

api.lisp.

Function: make-file-appender (file-name &key formatter)
Package

hu.dwim.logger.

Source

appender.lisp.

Function: make-level-filtering-appender (minimum-level &rest chained-appenders)
Package

hu.dwim.logger.

Source

appender.lisp.

Function: make-stream-appender (&rest args &key stream verbosity &allow-other-keys)
Package

hu.dwim.logger.

Source

appender.lisp.

Function: make-thread-safe-file-appender (file-name &key formatter)
Package

hu.dwim.logger.

Source

appender.lisp.

Function: make-thread-safe-stream-appender (stream &key formatter lazy-flushing)
Package

hu.dwim.logger.

Source

appender.lisp.

Function: set-log-level (logger level)
Package

hu.dwim.logger.

Source

logger.lisp.

Function: setup-logging-for-production (log-directory)
Package

hu.dwim.logger.

Source

root-logger.lisp.


6.1.6 Generic functions

Generic Function: append-message (logger appender level message-control message-arguments)

The second line of the log message handling. Called for each logger-appender pair that receives this log message.

Package

hu.dwim.logger.

Source

api.lisp.

Methods
Method: append-message ((logger logger) (appender caching-appender) level message-control message-arguments)
Source

appender.lisp.

Method: append-message ((logger logger) (appender level-filtering-appender) level message-control message-arguments)
Source

appender.lisp.

Method: append-message ((logger logger) (appender file-appender) level message-control message-arguments)
Source

appender.lisp.

Method: append-message :around ((logger logger) (appender stream-appender) level message-control message-arguments)
Source

appender.lisp.

Method: append-message (logger (appender stream-appender) level message-control message-arguments)
Source

appender.lisp.

Generic Function: format-message (logger appender formatter level stream message-control message-arguments)

This method is a customization point where subclasses can customize how to format the log message. Subclasses of stream-appender call this method by default, but some other appenders may chose not to call it by customizing APPEND-MESSAGE.

Package

hu.dwim.logger.

Source

api.lisp.

Methods
Method: format-message ((logger logger) appender (formatter parsable-formatter) level stream message-control message-arguments)
Source

formatter.lisp.

Method: format-message ((logger logger) appender (formatter verbose-formatter) level stream message-control message-arguments)
Source

formatter.lisp.

Method: format-message ((logger logger) appender (formatter brief-formatter) level stream message-control message-arguments)
Source

formatter.lisp.

Method: format-message :around (logger appender formatter level (output-stream (eql nil)) message-control message-arguments)
Generic Function: handle-log-message (logger level message-control message-arguments)

The first line of the log message handling, called by the printer macros. The default implementation if this method delegates the call to all the parents of the logger.

Package

hu.dwim.logger.

Source

api.lisp.

Methods
Method: handle-log-message ((logger logger) level message-control message-arguments)
Source

logger.lisp.


6.1.7 Standalone methods

Method: initialize-instance :after ((-self- caching-appender) &key)
Source

appender.lisp.

Method: make-load-form ((self logger) &optional env)
Source

logger.lisp.

Method: print-object ((-self- file-appender) stream0)
Source

appender.lisp.

Method: print-object ((-self- logger) stream0)
Source

logger.lisp.

Method: print-object ((-self- stream-appender) stream0)
Source

appender.lisp.

Method: shared-initialize :after ((self logger) slot-names &key parents)
Source

logger.lisp.


6.1.8 Classes

Class: appender
Package

hu.dwim.logger.

Source

api.lisp.

Direct subclasses
Direct methods
Direct slots
Slot: formatter
Initargs

:formatter

Readers

formatter-of.

Writers

(setf formatter-of).

Class: brief-formatter

Minimal overhead text in messages. This amounts to: not printing the package names of loggers and log levels and a more compact printing of the current time.

Package

hu.dwim.logger.

Source

formatter.lisp.

Direct superclasses

formatter.

Direct methods
Direct slots
Slot: last-message-year
Initform

0

Initargs

:last-message-year

Readers

last-message-year-of.

Writers

(setf last-message-year-of).

Slot: last-message-month
Initform

0

Initargs

:last-message-month

Readers

last-message-month-of.

Writers

(setf last-message-month-of).

Slot: last-message-day
Initform

0

Initargs

:last-message-day

Readers

last-message-day-of.

Writers

(setf last-message-day-of).

Class: caching-appender
Package

hu.dwim.logger.

Source

appender.lisp.

Direct subclasses
Direct methods
Direct slots
Slot: lock
Initform

(bordeaux-threads:make-lock "a caching-appender of hu.dwim.logger")

Initargs

:lock

Readers

lock-of.

Writers

(setf lock-of).

Slot: last-flushed-at
Initform

(hu.dwim.util:get-monotonic-time)

Initargs

:last-flushed-at

Readers

last-flushed-at-of.

Writers

(setf last-flushed-at-of).

Slot: cache
Initform

(make-array hu.dwim.logger::+caching-appender/maximum-cache-size+ :adjustable nil :fill-pointer 0)

Initargs

:cache

Readers

cache-of.

Writers

(setf cache-of).

Slot: async-flushing

Is it ok to call FLUSH-CACHING-APPENDER-MESSAGES without holding the appender lock?

Type

boolean

Initargs

:async-flushing

Readers

async-flushing?.

Writers

(setf async-flushing?).

Slot: lazy-flushing

If an external entity regularly call FLUSH-CACHING-APPENDER on us, then we may be lazy flushing.

Type

boolean

Initform

t

Initargs

:lazy-flushing

Readers

lazy-flushing?.

Writers

(setf lazy-flushing?).

Class: file-appender

Logs to a file.

Package

hu.dwim.logger.

Source

appender.lisp.

Direct superclasses

appender.

Direct subclasses

thread-safe-file-appender.

Direct methods
Direct slots
Slot: log-file

Name of the file to write log messages to.

Initargs

:log-file

Readers

log-file-of.

Writers

(setf log-file-of).

Class: level-filtering-appender

Drops messages below MINIMUM-LEVEL and forwards the others to CHAINED-APPENDERS.

Package

hu.dwim.logger.

Source

appender.lisp.

Direct superclasses

stream-appender.

Direct methods
Direct slots
Slot: minimum-level
Initform

hu.dwim.logger:+debug+

Initargs

:minimum-level

Readers

minimum-level-of.

Writers

(setf minimum-level-of).

Slot: chained-appenders
Initargs

:chained-appenders

Readers

chained-appenders-of.

Writers

(setf chained-appenders-of).

Class: logger
Package

hu.dwim.logger.

Source

logger.lisp.

Direct methods
Direct slots
Slot: parents

The parent logger this logger inherits from.

Initargs

:parents

Readers

parents-of.

Writers

(setf parents-of).

Slot: children

The loggers which inherit from this logger.

Initargs

:children

Readers

children-of.

Writers

(setf children-of).

Slot: appenders

A list of appender objects this logger should send messages to.

Initargs

:appenders

Readers

appenders-of.

Writers

(setf appenders-of).

Slot: runtime-level

The runtime log level determines whether an actual log message shows up at runtime.

Type

(or null integer)

Initargs

:runtime-level

Readers

runtime-level-of.

Writers

(setf runtime-level-of).

Slot: compile-time-level

The compile time log level is a compile time filter. Log expressions below this level will macro-expand to NIL at compile time.

Type

(or null integer)

Initargs

:compile-time-level

Readers

compile-time-level-of.

Writers

(setf compile-time-level-of).

Slot: name
Initargs

:name

Readers

name-of.

Writers

(setf name-of).

Slot: documentation
Package

common-lisp.

Initargs

:documentation

Readers

documentation-of.

Writers

(setf documentation-of).

Class: parsable-formatter

The output of the file logger is not meant to be read directly by a human.

Package

hu.dwim.logger.

Source

formatter.lisp.

Direct superclasses

formatter.

Direct methods

format-message.

Class: stream-appender

Human readable logger.

Package

hu.dwim.logger.

Source

appender.lisp.

Direct superclasses

appender.

Direct subclasses
Direct methods
Direct slots
Slot: stream
Package

common-lisp.

Initform

(quote *standard-output*)

Initargs

:stream

Readers

stream-of.

Writers

(setf stream-of).

Class: thread-safe-file-appender
Package

hu.dwim.logger.

Source

appender.lisp.

Direct superclasses
Direct methods

flush-caching-appender-messages.

Class: thread-safe-stream-appender
Package

hu.dwim.logger.

Source

appender.lisp.

Direct superclasses
Direct methods

flush-caching-appender-messages.

Class: verbose-formatter

Attempts to be as precise as possible, logger names and log level names are printed with a package prefix and the time is printed in long format.

Package

hu.dwim.logger.

Source

formatter.lisp.

Direct superclasses

formatter.

Direct methods

format-message.


6.1.9 Types

Type: log-level ()
Package

hu.dwim.logger.

Source

logger.lisp.


6.2 Internals


6.2.1 Constants

Constant: +caching-appender/maximum-cache-size+
Package

hu.dwim.logger.

Source

appender.lisp.

Constant: +max-logger-name-length+
Package

hu.dwim.logger.

Source

formatter.lisp.


6.2.2 Special variables

Special Variable: *toplevel-logger*

While inside HANDLE-LOG-MESSAGE, this variable is bound to the logger on which HANDLE-LOG-MESSAGE was called first, ignoring logger inheritance and handler delegation.

Package

hu.dwim.logger.

Source

logger.lisp.


6.2.3 Macros

Macro: with-lock-held-on-caching-appender (appender &body with-body1)
Package

hu.dwim.logger.

Source

appender.lisp.

Macro: with-logging-io (&body with-body1)
Package

hu.dwim.logger.

Source

logger.lisp.

Macro: with-output-to-file-appender-file ((stream-var-name appender) &body with-body1)
Package

hu.dwim.logger.

Source

appender.lisp.


6.2.4 Ordinary functions

Function: %find-logger (name &key otherwise)
Package

hu.dwim.logger.

Source

logger.lisp.

Function: (setf %find-logger) (name)
Package

hu.dwim.logger.

Source

logger.lisp.

Function: appenderp (object)
Package

hu.dwim.logger.

Source

api.lisp.

Function: at-compile-time-enabled? (logger level)
Package

hu.dwim.logger.

Source

logger.lisp.

Function: at-runtime-enabled? (logger level)
Package

hu.dwim.logger.

Source

logger.lisp.

Function: brief-formatter-p (object)
Package

hu.dwim.logger.

Source

formatter.lisp.

Function: caching-appender-p (object)
Package

hu.dwim.logger.

Source

appender.lisp.

Function: call-handle-log-message (logger level message-control message-arguments)
Package

hu.dwim.logger.

Source

logger.lisp.

Function: call-with-lock-held-on-caching-appender (fn0 appender)
Package

hu.dwim.logger.

Source

appender.lisp.

Function: call-with-logging-io (fn0)
Package

hu.dwim.logger.

Source

logger.lisp.

Function: call-with-output-to-file-appender-file (fn0 appender)
Package

hu.dwim.logger.

Source

appender.lisp.

Function: collect-helper-names (loggern-name)
Package

hu.dwim.logger.

Source

logger.lisp.

Function: file-appender-output-file (appender)
Package

hu.dwim.logger.

Source

appender.lisp.

Function: file-appender-p (object)
Package

hu.dwim.logger.

Source

appender.lisp.

Function: find-caching-appender (name &key otherwise)
Package

hu.dwim.logger.

Source

appender.lisp.

Function: (setf find-caching-appender) (name)
Package

hu.dwim.logger.

Source

appender.lisp.

Function: format-or-write-string (stream message-control &optional message-arguments)
Package

hu.dwim.logger.

Source

appender.lisp.

Function: formatterp (object)
Package

hu.dwim.logger.

Source

api.lisp.

Function: level-filtering-appender-p (object)
Package

hu.dwim.logger.

Source

appender.lisp.

Function: logger-name-for-output (logger)
Package

hu.dwim.logger.

Source

appender.lisp.

Function: loggerp (object)
Package

hu.dwim.logger.

Source

logger.lisp.

Function: note-logging-error (error &key context message-control message-arguments)
Package

hu.dwim.logger.

Source

logger.lisp.

Function: parsable-formatter-p (object)
Package

hu.dwim.logger.

Source

formatter.lisp.

Function: stream-appender-p (object)
Package

hu.dwim.logger.

Source

appender.lisp.

Function: thread-safe-file-appender-p (object)
Package

hu.dwim.logger.

Source

appender.lisp.

Function: thread-safe-stream-appender-p (object)
Package

hu.dwim.logger.

Source

appender.lisp.

Function: validate-log-level (value)
Package

hu.dwim.logger.

Source

logger.lisp.

Function: verbose-formatter-p (object)
Package

hu.dwim.logger.

Source

formatter.lisp.


6.2.5 Generic functions

Generic Reader: appenders-of (object)
Generic Writer: (setf appenders-of) (object)
Package

hu.dwim.logger.

Methods
Reader Method: appenders-of ((logger logger))
Writer Method: (setf appenders-of) ((logger logger))

A list of appender objects this logger should send messages to.

Source

logger.lisp.

Target Slot

appenders.

Generic Reader: async-flushing? (object)
Generic Writer: (setf async-flushing?) (object)
Package

hu.dwim.logger.

Methods
Reader Method: async-flushing? ((caching-appender caching-appender))
Writer Method: (setf async-flushing?) ((caching-appender caching-appender))

Is it ok to call FLUSH-CACHING-APPENDER-MESSAGES without holding the appender lock?

Source

appender.lisp.

Target Slot

async-flushing.

Generic Reader: cache-of (object)
Package

hu.dwim.logger.

Methods
Reader Method: cache-of ((caching-appender caching-appender))

automatically generated reader method

Source

appender.lisp.

Target Slot

cache.

Generic Writer: (setf cache-of) (object)
Package

hu.dwim.logger.

Methods
Writer Method: (setf cache-of) ((caching-appender caching-appender))

automatically generated writer method

Source

appender.lisp.

Target Slot

cache.

Generic Reader: chained-appenders-of (object)
Package

hu.dwim.logger.

Methods
Reader Method: chained-appenders-of ((level-filtering-appender level-filtering-appender))

automatically generated reader method

Source

appender.lisp.

Target Slot

chained-appenders.

Generic Writer: (setf chained-appenders-of) (object)
Package

hu.dwim.logger.

Methods
Writer Method: (setf chained-appenders-of) ((level-filtering-appender level-filtering-appender))

automatically generated writer method

Source

appender.lisp.

Target Slot

chained-appenders.

Generic Reader: children-of (object)
Generic Writer: (setf children-of) (object)
Package

hu.dwim.logger.

Methods
Reader Method: children-of ((logger logger))
Writer Method: (setf children-of) ((logger logger))

The loggers which inherit from this logger.

Source

logger.lisp.

Target Slot

children.

Generic Reader: compile-time-level-of (object)
Generic Writer: (setf compile-time-level-of) (object)
Package

hu.dwim.logger.

Methods
Reader Method: compile-time-level-of ((logger logger))
Writer Method: (setf compile-time-level-of) ((logger logger))

The compile time log level is a compile time filter. Log expressions below this level will macro-expand to NIL at compile time.

Source

logger.lisp.

Target Slot

compile-time-level.

Generic Reader: documentation-of (object)
Package

hu.dwim.logger.

Methods
Reader Method: documentation-of ((logger logger))

automatically generated reader method

Source

logger.lisp.

Target Slot

documentation.

Generic Writer: (setf documentation-of) (object)
Package

hu.dwim.logger.

Methods
Writer Method: (setf documentation-of) ((logger logger))

automatically generated writer method

Source

logger.lisp.

Target Slot

documentation.

Generic Function: flush-caching-appender-messages (appender lines)
Package

hu.dwim.logger.

Source

appender.lisp.

Methods
Method: flush-caching-appender-messages ((appender thread-safe-file-appender) lines)
Method: flush-caching-appender-messages ((appender thread-safe-stream-appender) lines)
Method: flush-caching-appender-messages :after ((appender caching-appender) lines)
Generic Reader: formatter-of (object)
Package

hu.dwim.logger.

Methods
Reader Method: formatter-of ((appender appender))

automatically generated reader method

Source

api.lisp.

Target Slot

formatter.

Generic Writer: (setf formatter-of) (object)
Package

hu.dwim.logger.

Methods
Writer Method: (setf formatter-of) ((appender appender))

automatically generated writer method

Source

api.lisp.

Target Slot

formatter.

Generic Reader: last-flushed-at-of (object)
Package

hu.dwim.logger.

Methods
Reader Method: last-flushed-at-of ((caching-appender caching-appender))

automatically generated reader method

Source

appender.lisp.

Target Slot

last-flushed-at.

Generic Writer: (setf last-flushed-at-of) (object)
Package

hu.dwim.logger.

Methods
Writer Method: (setf last-flushed-at-of) ((caching-appender caching-appender))

automatically generated writer method

Source

appender.lisp.

Target Slot

last-flushed-at.

Generic Reader: last-message-day-of (object)
Package

hu.dwim.logger.

Methods
Reader Method: last-message-day-of ((brief-formatter brief-formatter))

automatically generated reader method

Source

formatter.lisp.

Target Slot

last-message-day.

Generic Writer: (setf last-message-day-of) (object)
Package

hu.dwim.logger.

Methods
Writer Method: (setf last-message-day-of) ((brief-formatter brief-formatter))

automatically generated writer method

Source

formatter.lisp.

Target Slot

last-message-day.

Generic Reader: last-message-month-of (object)
Package

hu.dwim.logger.

Methods
Reader Method: last-message-month-of ((brief-formatter brief-formatter))

automatically generated reader method

Source

formatter.lisp.

Target Slot

last-message-month.

Generic Writer: (setf last-message-month-of) (object)
Package

hu.dwim.logger.

Methods
Writer Method: (setf last-message-month-of) ((brief-formatter brief-formatter))

automatically generated writer method

Source

formatter.lisp.

Target Slot

last-message-month.

Generic Reader: last-message-year-of (object)
Package

hu.dwim.logger.

Methods
Reader Method: last-message-year-of ((brief-formatter brief-formatter))

automatically generated reader method

Source

formatter.lisp.

Target Slot

last-message-year.

Generic Writer: (setf last-message-year-of) (object)
Package

hu.dwim.logger.

Methods
Writer Method: (setf last-message-year-of) ((brief-formatter brief-formatter))

automatically generated writer method

Source

formatter.lisp.

Target Slot

last-message-year.

Generic Reader: lazy-flushing? (object)
Generic Writer: (setf lazy-flushing?) (object)
Package

hu.dwim.logger.

Methods
Reader Method: lazy-flushing? ((caching-appender caching-appender))
Writer Method: (setf lazy-flushing?) ((caching-appender caching-appender))

If an external entity regularly call FLUSH-CACHING-APPENDER on us, then we may be lazy flushing.

Source

appender.lisp.

Target Slot

lazy-flushing.

Generic Reader: lock-of (object)
Package

hu.dwim.logger.

Methods
Reader Method: lock-of ((caching-appender caching-appender))

automatically generated reader method

Source

appender.lisp.

Target Slot

lock.

Generic Writer: (setf lock-of) (object)
Package

hu.dwim.logger.

Methods
Writer Method: (setf lock-of) ((caching-appender caching-appender))

automatically generated writer method

Source

appender.lisp.

Target Slot

lock.

Generic Reader: log-file-of (object)
Generic Writer: (setf log-file-of) (object)
Package

hu.dwim.logger.

Methods
Reader Method: log-file-of ((file-appender file-appender))
Writer Method: (setf log-file-of) ((file-appender file-appender))

Name of the file to write log messages to.

Source

appender.lisp.

Target Slot

log-file.

Generic Reader: minimum-level-of (object)
Package

hu.dwim.logger.

Methods
Reader Method: minimum-level-of ((level-filtering-appender level-filtering-appender))

automatically generated reader method

Source

appender.lisp.

Target Slot

minimum-level.

Generic Writer: (setf minimum-level-of) (object)
Package

hu.dwim.logger.

Methods
Writer Method: (setf minimum-level-of) ((level-filtering-appender level-filtering-appender))

automatically generated writer method

Source

appender.lisp.

Target Slot

minimum-level.

Generic Reader: name-of (object)
Package

hu.dwim.logger.

Methods
Reader Method: name-of ((logger logger))

automatically generated reader method

Source

logger.lisp.

Target Slot

name.

Generic Writer: (setf name-of) (object)
Package

hu.dwim.logger.

Methods
Writer Method: (setf name-of) ((logger logger))

automatically generated writer method

Source

logger.lisp.

Target Slot

name.

Generic Reader: parents-of (object)
Generic Writer: (setf parents-of) (object)
Package

hu.dwim.logger.

Methods
Reader Method: parents-of ((logger logger))
Writer Method: (setf parents-of) ((logger logger))

The parent logger this logger inherits from.

Source

logger.lisp.

Target Slot

parents.

Generic Reader: runtime-level-of (object)
Generic Writer: (setf runtime-level-of) (object)
Package

hu.dwim.logger.

Methods
Reader Method: runtime-level-of ((logger logger))
Writer Method: (setf runtime-level-of) ((logger logger))

The runtime log level determines whether an actual log message shows up at runtime.

Source

logger.lisp.

Target Slot

runtime-level.

Generic Function: stream-of (object)
Package

hu.dwim.logger.

Methods
Method: stream-of :around ((self appender))
Source

appender.lisp.

Reader Method: stream-of ((stream-appender stream-appender))

automatically generated reader method

Source

appender.lisp.

Target Slot

stream.

Generic Writer: (setf stream-of) (object)
Package

hu.dwim.logger.

Methods
Writer Method: (setf stream-of) ((stream-appender stream-appender))

automatically generated writer method

Source

appender.lisp.

Target Slot

stream.


6.2.6 Classes

Class: formatter
Package

hu.dwim.logger.

Source

api.lisp.

Direct subclasses

6.2.7 Types

Type: logger-name ()
Package

hu.dwim.logger.

Source

logger.lisp.


Appendix A Indexes


A.1 Concepts


A.2 Functions

Jump to:   %   (  
A   B   C   D   F   G   H   I   L   M   N   P   R   S   T   V   W  
Index Entry  Section

%
%find-logger: Private ordinary functions

(
(setf %find-logger): Private ordinary functions
(setf appenders-of): Private generic functions
(setf appenders-of): Private generic functions
(setf async-flushing?): Private generic functions
(setf async-flushing?): Private generic functions
(setf cache-of): Private generic functions
(setf cache-of): Private generic functions
(setf chained-appenders-of): Private generic functions
(setf chained-appenders-of): Private generic functions
(setf children-of): Private generic functions
(setf children-of): Private generic functions
(setf compile-time-level-of): Private generic functions
(setf compile-time-level-of): Private generic functions
(setf documentation-of): Private generic functions
(setf documentation-of): Private generic functions
(setf find-caching-appender): Private ordinary functions
(setf find-logger): Public ordinary functions
(setf formatter-of): Private generic functions
(setf formatter-of): Private generic functions
(setf last-flushed-at-of): Private generic functions
(setf last-flushed-at-of): Private generic functions
(setf last-message-day-of): Private generic functions
(setf last-message-day-of): Private generic functions
(setf last-message-month-of): Private generic functions
(setf last-message-month-of): Private generic functions
(setf last-message-year-of): Private generic functions
(setf last-message-year-of): Private generic functions
(setf lazy-flushing?): Private generic functions
(setf lazy-flushing?): Private generic functions
(setf lock-of): Private generic functions
(setf lock-of): Private generic functions
(setf log-file-of): Private generic functions
(setf log-file-of): Private generic functions
(setf log-level): Public ordinary functions
(setf log-level/compile-time): Public ordinary functions
(setf log-level/runtime): Public ordinary functions
(setf minimum-level-of): Private generic functions
(setf minimum-level-of): Private generic functions
(setf name-of): Private generic functions
(setf name-of): Private generic functions
(setf parents-of): Private generic functions
(setf parents-of): Private generic functions
(setf runtime-level-of): Private generic functions
(setf runtime-level-of): Private generic functions
(setf stream-of): Private generic functions
(setf stream-of): Private generic functions

A
append-message: Public generic functions
append-message: Public generic functions
append-message: Public generic functions
append-message: Public generic functions
append-message: Public generic functions
append-message: Public generic functions
appenderp: Private ordinary functions
appenders-of: Private generic functions
appenders-of: Private generic functions
async-flushing?: Private generic functions
async-flushing?: Private generic functions
at-compile-time-enabled?: Private ordinary functions
at-runtime-enabled?: Private ordinary functions

B
brief-formatter-p: Private ordinary functions

C
cache-of: Private generic functions
cache-of: Private generic functions
caching-appender-p: Private ordinary functions
call-handle-log-message: Private ordinary functions
call-with-lock-held-on-caching-appender: Private ordinary functions
call-with-logging-io: Private ordinary functions
call-with-output-to-file-appender-file: Private ordinary functions
chained-appenders-of: Private generic functions
chained-appenders-of: Private generic functions
children-of: Private generic functions
children-of: Private generic functions
collect-helper-names: Private ordinary functions
compile-time-level-of: Private generic functions
compile-time-level-of: Private generic functions
Compiler Macro, find-logger: Public compiler macros

D
deflogger: Public macros
documentation-of: Private generic functions
documentation-of: Private generic functions

F
file-appender-output-file: Private ordinary functions
file-appender-p: Private ordinary functions
find-caching-appender: Private ordinary functions
find-logger: Public compiler macros
find-logger: Public ordinary functions
flush-caching-appender: Public ordinary functions
flush-caching-appender-messages: Private generic functions
flush-caching-appender-messages: Private generic functions
flush-caching-appender-messages: Private generic functions
flush-caching-appender-messages: Private generic functions
flush-caching-appenders: Public ordinary functions
format-message: Public generic functions
format-message: Public generic functions
format-message: Public generic functions
format-message: Public generic functions
format-message: Public generic functions
format-or-write-string: Private ordinary functions
formatter-of: Private generic functions
formatter-of: Private generic functions
formatterp: Private ordinary functions
Function, %find-logger: Private ordinary functions
Function, (setf %find-logger): Private ordinary functions
Function, (setf find-caching-appender): Private ordinary functions
Function, (setf find-logger): Public ordinary functions
Function, (setf log-level): Public ordinary functions
Function, (setf log-level/compile-time): Public ordinary functions
Function, (setf log-level/runtime): Public ordinary functions
Function, appenderp: Private ordinary functions
Function, at-compile-time-enabled?: Private ordinary functions
Function, at-runtime-enabled?: Private ordinary functions
Function, brief-formatter-p: Private ordinary functions
Function, caching-appender-p: Private ordinary functions
Function, call-handle-log-message: Private ordinary functions
Function, call-with-lock-held-on-caching-appender: Private ordinary functions
Function, call-with-logging-io: Private ordinary functions
Function, call-with-output-to-file-appender-file: Private ordinary functions
Function, collect-helper-names: Private ordinary functions
Function, file-appender-output-file: Private ordinary functions
Function, file-appender-p: Private ordinary functions
Function, find-caching-appender: Private ordinary functions
Function, find-logger: Public ordinary functions
Function, flush-caching-appender: Public ordinary functions
Function, flush-caching-appenders: Public ordinary functions
Function, format-or-write-string: Private ordinary functions
Function, formatterp: Private ordinary functions
Function, level-filtering-appender-p: Private ordinary functions
Function, log-level: Public ordinary functions
Function, log-level/compile-time: Public ordinary functions
Function, log-level/runtime: Public ordinary functions
Function, log-to-console: Public ordinary functions
Function, logger-name-for-output: Private ordinary functions
Function, loggerp: Private ordinary functions
Function, make-file-appender: Public ordinary functions
Function, make-level-filtering-appender: Public ordinary functions
Function, make-stream-appender: Public ordinary functions
Function, make-thread-safe-file-appender: Public ordinary functions
Function, make-thread-safe-stream-appender: Public ordinary functions
Function, note-logging-error: Private ordinary functions
Function, parsable-formatter-p: Private ordinary functions
Function, set-log-level: Public ordinary functions
Function, setup-logging-for-production: Public ordinary functions
Function, stream-appender-p: Private ordinary functions
Function, thread-safe-file-appender-p: Private ordinary functions
Function, thread-safe-stream-appender-p: Private ordinary functions
Function, validate-log-level: Private ordinary functions
Function, verbose-formatter-p: Private ordinary functions

G
Generic Function, (setf appenders-of): Private generic functions
Generic Function, (setf async-flushing?): Private generic functions
Generic Function, (setf cache-of): Private generic functions
Generic Function, (setf chained-appenders-of): Private generic functions
Generic Function, (setf children-of): Private generic functions
Generic Function, (setf compile-time-level-of): Private generic functions
Generic Function, (setf documentation-of): Private generic functions
Generic Function, (setf formatter-of): Private generic functions
Generic Function, (setf last-flushed-at-of): Private generic functions
Generic Function, (setf last-message-day-of): Private generic functions
Generic Function, (setf last-message-month-of): Private generic functions
Generic Function, (setf last-message-year-of): Private generic functions
Generic Function, (setf lazy-flushing?): Private generic functions
Generic Function, (setf lock-of): Private generic functions
Generic Function, (setf log-file-of): Private generic functions
Generic Function, (setf minimum-level-of): Private generic functions
Generic Function, (setf name-of): Private generic functions
Generic Function, (setf parents-of): Private generic functions
Generic Function, (setf runtime-level-of): Private generic functions
Generic Function, (setf stream-of): Private generic functions
Generic Function, append-message: Public generic functions
Generic Function, appenders-of: Private generic functions
Generic Function, async-flushing?: Private generic functions
Generic Function, cache-of: Private generic functions
Generic Function, chained-appenders-of: Private generic functions
Generic Function, children-of: Private generic functions
Generic Function, compile-time-level-of: Private generic functions
Generic Function, documentation-of: Private generic functions
Generic Function, flush-caching-appender-messages: Private generic functions
Generic Function, format-message: Public generic functions
Generic Function, formatter-of: Private generic functions
Generic Function, handle-log-message: Public generic functions
Generic Function, last-flushed-at-of: Private generic functions
Generic Function, last-message-day-of: Private generic functions
Generic Function, last-message-month-of: Private generic functions
Generic Function, last-message-year-of: Private generic functions
Generic Function, lazy-flushing?: Private generic functions
Generic Function, lock-of: Private generic functions
Generic Function, log-file-of: Private generic functions
Generic Function, minimum-level-of: Private generic functions
Generic Function, name-of: Private generic functions
Generic Function, parents-of: Private generic functions
Generic Function, runtime-level-of: Private generic functions
Generic Function, stream-of: Private generic functions

H
handle-log-message: Public generic functions
handle-log-message: Public generic functions

I
initialize-instance: Public standalone methods

L
last-flushed-at-of: Private generic functions
last-flushed-at-of: Private generic functions
last-message-day-of: Private generic functions
last-message-day-of: Private generic functions
last-message-month-of: Private generic functions
last-message-month-of: Private generic functions
last-message-year-of: Private generic functions
last-message-year-of: Private generic functions
lazy-flushing?: Private generic functions
lazy-flushing?: Private generic functions
level-filtering-appender-p: Private ordinary functions
lock-of: Private generic functions
lock-of: Private generic functions
log-file-of: Private generic functions
log-file-of: Private generic functions
log-level: Public ordinary functions
log-level/compile-time: Public ordinary functions
log-level/runtime: Public ordinary functions
log-to-console: Public ordinary functions
logger-name-for-output: Private ordinary functions
loggerp: Private ordinary functions

M
Macro, deflogger: Public macros
Macro, root-logger.debug: Public macros
Macro, root-logger.dribble: Public macros
Macro, root-logger.error: Public macros
Macro, root-logger.fatal: Public macros
Macro, root-logger.info: Public macros
Macro, root-logger.warn: Public macros
Macro, with-lock-held-on-caching-appender: Private macros
Macro, with-logger-level: Public macros
Macro, with-logging-io: Private macros
Macro, with-output-to-file-appender-file: Private macros
make-file-appender: Public ordinary functions
make-level-filtering-appender: Public ordinary functions
make-load-form: Public standalone methods
make-stream-appender: Public ordinary functions
make-thread-safe-file-appender: Public ordinary functions
make-thread-safe-stream-appender: Public ordinary functions
Method, (setf appenders-of): Private generic functions
Method, (setf async-flushing?): Private generic functions
Method, (setf cache-of): Private generic functions
Method, (setf chained-appenders-of): Private generic functions
Method, (setf children-of): Private generic functions
Method, (setf compile-time-level-of): Private generic functions
Method, (setf documentation-of): Private generic functions
Method, (setf formatter-of): Private generic functions
Method, (setf last-flushed-at-of): Private generic functions
Method, (setf last-message-day-of): Private generic functions
Method, (setf last-message-month-of): Private generic functions
Method, (setf last-message-year-of): Private generic functions
Method, (setf lazy-flushing?): Private generic functions
Method, (setf lock-of): Private generic functions
Method, (setf log-file-of): Private generic functions
Method, (setf minimum-level-of): Private generic functions
Method, (setf name-of): Private generic functions
Method, (setf parents-of): Private generic functions
Method, (setf runtime-level-of): Private generic functions
Method, (setf stream-of): Private generic functions
Method, append-message: Public generic functions
Method, append-message: Public generic functions
Method, append-message: Public generic functions
Method, append-message: Public generic functions
Method, append-message: Public generic functions
Method, appenders-of: Private generic functions
Method, async-flushing?: Private generic functions
Method, cache-of: Private generic functions
Method, chained-appenders-of: Private generic functions
Method, children-of: Private generic functions
Method, compile-time-level-of: Private generic functions
Method, documentation-of: Private generic functions
Method, flush-caching-appender-messages: Private generic functions
Method, flush-caching-appender-messages: Private generic functions
Method, flush-caching-appender-messages: Private generic functions
Method, format-message: Public generic functions
Method, format-message: Public generic functions
Method, format-message: Public generic functions
Method, format-message: Public generic functions
Method, formatter-of: Private generic functions
Method, handle-log-message: Public generic functions
Method, initialize-instance: Public standalone methods
Method, last-flushed-at-of: Private generic functions
Method, last-message-day-of: Private generic functions
Method, last-message-month-of: Private generic functions
Method, last-message-year-of: Private generic functions
Method, lazy-flushing?: Private generic functions
Method, lock-of: Private generic functions
Method, log-file-of: Private generic functions
Method, make-load-form: Public standalone methods
Method, minimum-level-of: Private generic functions
Method, name-of: Private generic functions
Method, parents-of: Private generic functions
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, runtime-level-of: Private generic functions
Method, shared-initialize: Public standalone methods
Method, stream-of: Private generic functions
Method, stream-of: Private generic functions
minimum-level-of: Private generic functions
minimum-level-of: Private generic functions

N
name-of: Private generic functions
name-of: Private generic functions
note-logging-error: Private ordinary functions

P
parents-of: Private generic functions
parents-of: Private generic functions
parsable-formatter-p: Private ordinary functions
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods

R
root-logger.debug: Public macros
root-logger.dribble: Public macros
root-logger.error: Public macros
root-logger.fatal: Public macros
root-logger.info: Public macros
root-logger.warn: Public macros
runtime-level-of: Private generic functions
runtime-level-of: Private generic functions

S
set-log-level: Public ordinary functions
setup-logging-for-production: Public ordinary functions
shared-initialize: Public standalone methods
stream-appender-p: Private ordinary functions
stream-of: Private generic functions
stream-of: Private generic functions
stream-of: Private generic functions

T
thread-safe-file-appender-p: Private ordinary functions
thread-safe-stream-appender-p: Private ordinary functions

V
validate-log-level: Private ordinary functions
verbose-formatter-p: Private ordinary functions

W
with-lock-held-on-caching-appender: Private macros
with-logger-level: Public macros
with-logging-io: Private macros
with-output-to-file-appender-file: Private macros


A.3 Variables

Jump to:   *   +  
A   C   D   F   L   M   N   P   R   S  
Index Entry  Section

*
*log-directory*: Public special variables
*toplevel-logger*: Private special variables

+
+caching-appender/maximum-cache-size+: Private constants
+debug+: Public constants
+dribble+: Public constants
+error+: Public constants
+fatal+: Public constants
+info+: Public constants
+log-level-keywords+: Public constants
+log-level-names+: Public constants
+max-logger-name-length+: Private constants
+warn+: Public constants

A
appenders: Public classes
async-flushing: Public classes

C
cache: Public classes
chained-appenders: Public classes
children: Public classes
compile-time-level: Public classes
Constant, +caching-appender/maximum-cache-size+: Private constants
Constant, +debug+: Public constants
Constant, +dribble+: Public constants
Constant, +error+: Public constants
Constant, +fatal+: Public constants
Constant, +info+: Public constants
Constant, +log-level-keywords+: Public constants
Constant, +log-level-names+: Public constants
Constant, +max-logger-name-length+: Private constants
Constant, +warn+: Public constants

D
documentation: Public classes

F
formatter: Public classes

L
last-flushed-at: Public classes
last-message-day: Public classes
last-message-month: Public classes
last-message-year: Public classes
lazy-flushing: Public classes
lock: Public classes
log-file: Public classes

M
minimum-level: Public classes

N
name: Public classes

P
parents: Public classes

R
runtime-level: Public classes

S
Slot, appenders: Public classes
Slot, async-flushing: Public classes
Slot, cache: Public classes
Slot, chained-appenders: Public classes
Slot, children: Public classes
Slot, compile-time-level: Public classes
Slot, documentation: Public classes
Slot, formatter: Public classes
Slot, last-flushed-at: Public classes
Slot, last-message-day: Public classes
Slot, last-message-month: Public classes
Slot, last-message-year: Public classes
Slot, lazy-flushing: Public classes
Slot, lock: Public classes
Slot, log-file: Public classes
Slot, minimum-level: Public classes
Slot, name: Public classes
Slot, parents: Public classes
Slot, runtime-level: Public classes
Slot, stream: Public classes
Special Variable, *log-directory*: Public special variables
Special Variable, *toplevel-logger*: Private special variables
stream: Public classes


A.4 Data types

Jump to:   A   B   C   F   H   L   M   P   R   S   T   V  
Index Entry  Section

A
api.lisp: The hu․dwim․logger/source/api․lisp file
appender: Public classes
appender.lisp: The hu․dwim․logger/source/appender․lisp file

B
brief-formatter: Public classes

C
caching-appender: Public classes
Class, appender: Public classes
Class, brief-formatter: Public classes
Class, caching-appender: Public classes
Class, file-appender: Public classes
Class, formatter: Private classes
Class, level-filtering-appender: Public classes
Class, logger: Public classes
Class, parsable-formatter: Public classes
Class, stream-appender: Public classes
Class, thread-safe-file-appender: Public classes
Class, thread-safe-stream-appender: Public classes
Class, verbose-formatter: Public classes

F
File, api.lisp: The hu․dwim․logger/source/api․lisp file
File, appender.lisp: The hu․dwim․logger/source/appender․lisp file
File, formatter.lisp: The hu․dwim․logger/source/formatter․lisp file
File, hu.dwim.logger.asd: The hu․dwim․logger/hu․dwim․logger․asd file
File, logger.lisp: The hu․dwim․logger/source/logger․lisp file
File, package.lisp: The hu․dwim․logger/source/package․lisp file
File, root-logger.lisp: The hu․dwim․logger/source/root-logger․lisp file
file-appender: Public classes
formatter: Private classes
formatter.lisp: The hu․dwim․logger/source/formatter․lisp file

H
hu.dwim.logger: The hu․dwim․logger system
hu.dwim.logger: The hu․dwim․logger package
hu.dwim.logger.asd: The hu․dwim․logger/hu․dwim․logger․asd file

L
level-filtering-appender: Public classes
log-level: Public types
logger: Public classes
logger-name: Private types
logger.lisp: The hu․dwim․logger/source/logger․lisp file

M
Module, source: The hu․dwim․logger/source module

P
Package, hu.dwim.logger: The hu․dwim․logger package
package.lisp: The hu․dwim․logger/source/package․lisp file
parsable-formatter: Public classes

R
root-logger.lisp: The hu․dwim․logger/source/root-logger․lisp file

S
source: The hu․dwim․logger/source module
stream-appender: Public classes
System, hu.dwim.logger: The hu․dwim․logger system

T
thread-safe-file-appender: Public classes
thread-safe-stream-appender: Public classes
Type, log-level: Public types
Type, logger-name: Private types

V
verbose-formatter: Public classes