Apache Log4cxx Version 1.1.0
|
Configures the repository from environmental settings and files. More...
#include <defaultconfigurator.h>
Static Public Member Functions | |
static void | configure (spi::LoggerRepositoryPtr repository) |
Configure repository . | |
static void | setConfigurationFileName (const LogString &path) |
Make path the configuration file used by configure(). | |
static void | setConfigurationWatchSeconds (int seconds) |
Make seconds the time a background thread will delay before checking for a change to the configuration file used by configure(). | |
static std::tuple< log4cxx::spi::ConfigurationStatus, LogString > | configureFromFile (const std::vector< LogString > &directories, const std::vector< LogString > &filenames) |
Configure Log4cxx from a file. | |
Configures the repository from environmental settings and files.
|
static |
Configure repository
.
If the configuration file name has not been provided by a call to setConfigurationFileName(), the environment variables "LOG4CXX_CONFIGURATION" and "log4j.configuration" are examined. Unless a custom configurator is specified using the "LOG4CXX_CONFIGURATOR_CLASS" or "log4j.configuratorClass" environment variable, the PropertyConfigurator will be used to configure log4cxx unless the file name ends with the ".xml" extension, in which case the DOMConfigurator will be used. If a custom configurator is specified, the environment variable should contain a fully qualified class name of a class that implements the Configurator interface.
If the configuration file name is not found using any of the previous approaches, the current directory is examined for a file with extension ".xml" or ".properties" with a base name "log4cxx" or "log4j".
If a positive number has been provided by a call to setConfigurationWatchSeconds() or the environment variables "LOG4CXX_CONFIGURATION_WATCH_SECONDS" contains a positive number a background thread is started that will periodically check for a change to the configuration file and apply any configuration changes found.
|
static |
Configure Log4cxx from a file.
This method will attempt to load the configuration files in the directories given.
For example, if we want a configuration file named 'myapp-logging.xml' with the default location for this file in /etc/myapp, but to have this overriden by a file in /usr/local/etc/myapp, we would call this function as follows:
configureFromFile( { "/usr/local/etc/myapp", "/etc/myapp" }, { "myapp-logging.xml" );
This will then search for files in the following order:
/usr/local/etc/myapp/myapp-logging.xml /etc/myapp/myapp-logging.xml
The status of configuring Log4cxx as well as the eventual filename used is returned. If a file exists but it is not able to be used to configure Log4cxx, the next file in the list will be tried until a valid configuration file is found or the end of the list is reached.
directories | The directories to look in. |
filenames | The names of the files to look for |
|
static |
Make path
the configuration file used by configure().
|
static |
Make seconds
the time a background thread will delay before checking for a change to the configuration file used by configure().