blob: 9f260af3183cbebd9c22b46e69edb02e3d38c2bc [file] [log] [blame]
Introduction
============
Log4cxx is a port to C++ of the log4j project.
The goal is have the same functionnalities and interfaces of log4j.
Features
========
It's a flexible and highly configurable logging framework
Main features :
- Configurable logging destinations (appenders)
- Configurable logging format (layouts)
- Categorized logging statements through a hierarchy (loggers)
- Advanced filtering (filters)
- Thread safe library
- UTF-16 Unicode support
* Appenders:
AsyncAppender, ConsoleAppender, DailyRollingFileAppender, FileAppender,
NTEventLogAppender, ODBCAppender, RollingFileAppender, SMTPAppender,
SocketAppender, SocketHubAappender, SyslogAppender, TelnetAppender,
XMLSocketAppender
* Layouts:
HTMLLayout, PatternLayout, SimpleLayout, TTCCLayout, XMLLayout
* Filters:
DenyAllFilter, LevelMatchFilter, LevelRangeFilter, StringMatchFilter
* Configurators:
BasicConfigurator, DOMConfigurator, PropertyConfigurator
* Java like objects with dynamic cast and instanciation. Custom objects can
be configured through the DOMConfigurator and PropertyConfigurator classes
Supported OS
============
* Linux (tested on Linux Mandrake 10.0)
* FreeBSD
* Windows (MSVC 6.0, MSVC 7.1 or Cygwin)
* Other POSIX OS should be supported but were not tested
Installation
============
./autogen.sh
./configure
make
make check
make install
See INSTALL file for further details.
Visual Studio .Net 2003 and Visual Studio 6.0 considerations
============================================================
For projects linking with log4cxx static library, the macro LOG4CXX_STATIC must
be defined (tab C++, textbox Preprocessor in the project properties) and
"log4cxxs.lib" must be passed to the linker (tab Link,textbox Object/Library
Modules in the project settings).
For projects linking with log4cxx dynamic library (dll), "log4cxx.lib" must be
passed to the linker (tab Link,textbox Object/Library Modules in the project
settings).
Unitary Tests
=============
You will need to install
* cppunit (http://cppunit.sourceforge.net/)
* boost regex (http://www.boost.org/)
Unix : run "make check"
Windows : run msvc/tests/runtests.bat
Performance Tests
=================
Just run performance/logging.sh.
The result are expressed in micro-seconds.
Links
=====
http://logging.apache.org/log4cxx
Log4cxx project page
http://logging.apache.org/log4j
Log4j project page
Contacts
========
See AUTHORS file
License
=======
This library is licensed under the Apache Public License. Please read the
included license.apl for details.