Version 2 (modified by 14 years ago) ( diff ) | ,
---|
Logging support
Ariba uses an internal logging system that you are free to use. Depending on the platform, logging goes through log4cxx or directly to std::cout. The Ariba configure
script will check for availability of log4cxx on your system and use it if available.
All important definitions can be found in "ariba/utility/logging/Logging.h" To use logging in your application on a per-class basis, perform the following steps:
- If you want to use colors for the different logging-levels you can use the option
--enable-logcolors=yes
- Include the logging header
#include "ariba/utility/logging/Logging.h"
in the header of your class where you want to use logging.
- Right inside the class definition of your
.h
classTestClass
to use the following:use_logging_h(TestClass)
. In the.cpp
source file useuse_logging_cpp(TestClass)
.
- The order of log-level is "debug", "info", "warning", "error". The default log-level is "info".
- To change the default log-level you can use the functions
logging_rootlevel_debug();
logging_rootlevel_info();
logging_rootlevel_warn();
logging_rootlevel_error();
- To change the individual log-level of a class you can e.g. first set the global level to "warn" and then for your test-class to "debug". This feature is only available when you have log4cxx installed
logging_rootlevel_warn(); logging_classlevel_debug("TestClass");
- The log-level functions for individual classes are
logging_classlevel_debug("TestClass")
logging_classlevel_info("TestClass")
logging_classlevel_warn("TestClass")
logging_classlevel_error("TestClass")
- Finally, the functions to actually perform logging at the different levels are ("fatal" will kill the program)
logging_debug("this is a log message")
logging_info("this is a log message")
logging_warn("this is a log message")
logging_error("this is a log message")
logging_fatal("this is a log message")
Note:
See TracWiki
for help on using the wiki.