Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion src/site/markdown/configuration-samples.md
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,7 @@ The variable names are [documented here](@ref log4cxx.spi.Configurator.propertie
To check the correct values are used when your configuration file is loaded,
use [Log4cxx internal debugging].

# Configuring a logger to use asynchronous output
# Configuring a logger to use asynchronous output {#asynch-output}

Log4cxx 1.6 allows you to more easily attach an [AsyncAppender](@ref log4cxx.AsyncAppender)
to a logger using a configuration file.
Expand Down
12 changes: 12 additions & 0 deletions src/site/markdown/performance.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,17 @@ One important question with a logging library is: is it fast enough?
While Log4cxx may not be the fastest logging implementation, it is more than fast
enough for the vast majority of cases.

Using Log4cxx 1.6 you can even use microsecond timestamps
in TRACE level logging messages to quickly get a sense of
where your application's workload is concentrated.
The LOG4CXX_XXXX_ASYNC macros in Log4cxx 1.6
just capture values in a buffer
and by adding the new [asynchronous output setting] to your configuration file,
the values are converted to text in a background thread.
That combination prevents TRACE level logging being the dominate CPU load
of your application's thread and
provides the lowest overhead logging in the history of Log4cxx.

While Log4cxx can generate 2,000,000 log messages/second,
skipping a disabled logging request requires only a few nano-seconds,
so application performance is not affected when
Expand Down Expand Up @@ -142,3 +153,4 @@ When logging floating point values from a high priority thread,
and you cannot use a background thread to format and write the log data,
the LOG4CXX_[level]_FMT series of macros impose the least overhead.

[asynchronous output setting]:configuration-files.html#asynch-output