Stephen Webb created LOGCXX-560:
-----------------------------------
Summary: Logging in a static initializer
Key: LOGCXX-560
URL: https://issues.apache.org/jira/browse/LOGCXX-560
Project: Log4cxx
Issue Type: Improvement
Reporter: Stephen Webb
Logging need to be configured before the first log call. To log in a static
initializer code, configuration must be executed during static initialization.
The log4cxx documentation and examples suggest calling the configure method of
the selected configurator in the main routine. It does not currently describe
automatic configuration.
Automatic configuration currently requires either a special name (log4cxx.xxx
or log4j.xxx) for the config file or an environment variable
(LOG4CXX_CONFIGURATION or log4j.configuration) set with the name of the config
file.
It would be nice to be able to plug in user specified configuration logic that
is invoked by log4cxx.
One possible approach would be to override autoConfigure() (added in
[[#135|https://github.com/apache/logging-log4cxx/pull/135]
title|https://github.com/apache/logging-log4cxx/pull/135] in a class that
inherits from log4cxx::Hierarchy.
Calling LogManager::setRepositorySelector static before other static
initialisations is difficult as static initialization order is not easily
controller.
A LogManager::getLogger("name", MyRepository::Instance()) would prevent static
initialization order issues.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)