Public Variables and Functions
var
Overrides the default rules for choosing between logging directly or via an
agent. Defaults to nil. See log* for details.
Source
var
An instance satisfying the impl/LoggerFactory protocol. Used internally to
obtain an impl/Logger. Defaults to the value returned from impl/find-factory.
Source
var
The default agent used for performing logging when direct logging is
disabled. See log* for details.
Source
var
The set of levels that will require using an agent when logging from within a
running transaction. Defaults to #{:info :warn}. See log* for details.
Source
macro
Usage: (debug message & more)
(debug throwable message & more)
Debug level logging using print-style args.
Source
macro
Usage: (debugf fmt & fmt-args)
(debugf throwable fmt & fmt-args)
Debug level logging using format.
Source
macro
Usage: (enabled? level)
(enabled? level logger-ns)
Returns true if the specific logging level is enabled. Use of this macro
should only be necessary if one needs to execute alternate code paths beyond
whether the log should be written to.
Source
macro
Usage: (error message & more)
(error throwable message & more)
Error level logging using print-style args.
Source
macro
Usage: (errorf fmt & fmt-args)
(errorf throwable fmt & fmt-args)
Error level logging using format.
Source
macro
Usage: (fatal message & more)
(fatal throwable message & more)
Fatal level logging using print-style args.
Source
macro
Usage: (fatalf fmt & fmt-args)
(fatalf throwable fmt & fmt-args)
Fatal level logging using format.
Source
macro
Usage: (info message & more)
(info throwable message & more)
Info level logging using print-style args.
Source
macro
Usage: (infof fmt & fmt-args)
(infof throwable fmt & fmt-args)
Info level logging using format.
Source
macro
Usage: (log level message)
(log level throwable message)
(log logger-ns level throwable message)
(log logger-factory logger-ns level throwable message)
Evaluates and logs a message only if the specified level is enabled. See log*
for more details.
Source
function
Usage: (log* logger level throwable message)
Attempts to log a message, either directly or via an agent; does not check if
the level is enabled.
For performance reasons, an agent will only be used when invoked within a
running transaction, and only for logging levels specified by
*tx-agent-levels*. This allows those entries to only be written once the
transaction commits, and are discarded if it is retried or aborted. As
corollary, other levels (e.g., :debug, :error) will be written even from
failed transactions though at the cost of repeat messages during retries.
One can override the above by setting *force* to :direct or :agent; all
subsequent writes will be direct or via an agent, respectively.
Source
function
Usage: (log-capture! logger-ns)
(log-capture! logger-ns out-level err-level)
Captures System.out and System.err, piping all writes of those streams to
the log. If unspecified, levels default to :info and :error, respectively.
The specified logger-ns value will be used to namespace all log entries.
Note: use with-logs to redirect output of *out* or *err*.
Warning: if the logging implementation is configured to output to System.out
(as is the default with java.util.logging) then using this function will
result in StackOverflowException when writing to the log.
Source
function
Usage: (log-stream level logger-ns)
Creates a PrintStream that will output to the log at the specified level.
Source
function
Usage: (log-uncapture!)
Restores System.out and System.err to their original values.
Source
macro
Usage: (logf level fmt & fmt-args)
(logf level throwable fmt & fmt-args)
Logs a message using a format string and args. Can optionally take a
throwable as its second arg. See level-specific macros, e.g., debugf.
Source
macro
Usage: (logp level message & more)
(logp level throwable message & more)
Logs a message using print style args. Can optionally take a throwable as its
second arg. See level-specific macros, e.g., debug.
Source
macro
Usage: (spy expr)
(spy level expr)
Evaluates expr and may write the form and its result to the log. Returns the
result of expr. Defaults to :debug log level.
Source
macro
Usage: (trace message & more)
(trace throwable message & more)
Trace level logging using print-style args.
Source
macro
Usage: (tracef fmt & fmt-args)
(tracef throwable fmt & fmt-args)
Trace level logging using format.
Source
macro
Usage: (warn message & more)
(warn throwable message & more)
Warn level logging using print-style args.
Source
macro
Usage: (warnf fmt & fmt-args)
(warnf throwable fmt & fmt-args)
Warn level logging using format.
Source
macro
Usage: (with-logs logger-ns & body)
(with-logs [logger-ns out-level err-level] & body)
Evaluates exprs in a context in which *out* and *err* write to the log. The
specified logger-ns value will be used to namespace all log entries.
By default *out* and *err* write to :info and :error, respectively.
Source