Package org.apache.log4j
Class PropertyConfigurator
- java.lang.Object
-
- org.apache.log4j.PropertyConfigurator
-
- All Implemented Interfaces:
Configurator
public class PropertyConfigurator extends java.lang.Object implements Configurator
Configures Log4j from properties.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description (package private) static class
PropertyConfigurator.NameValue
(package private) static class
PropertyConfigurator.PropertyWatchdog
(package private) class
PropertyConfigurator.SortedKeyEnumeration
-
Field Summary
Fields Modifier and Type Field Description (package private) static java.lang.String
ADDITIVITY_PREFIX
(package private) static java.lang.String
APPENDER_PREFIX
private static java.lang.String
APPENDER_REF_TAG
(package private) static java.lang.String
CATEGORY_PREFIX
(package private) static java.lang.String
FACTORY_PREFIX
private static java.lang.String
INTERNAL_ROOT_NAME
static java.lang.String
LOGGER_FACTORY_KEY
Key for specifying theLoggerFactory
.(package private) static java.lang.String
LOGGER_PREFIX
private static java.lang.String
LOGGER_REF
protected LoggerFactory
loggerFactory
protected java.util.Hashtable
registry
Used internally to keep track of configured appenders.(package private) static java.lang.String
RENDERER_PREFIX
private LoggerRepository
repository
private static java.lang.String
RESET_KEY
If property set to true, then hierarchy will be reset before configuration.(package private) static java.lang.String
ROOT_CATEGORY_PREFIX
(package private) static java.lang.String
ROOT_LOGGER_PREFIX
private static java.lang.String
ROOT_REF
(package private) static java.lang.String
THRESHOLD_PREFIX
private static java.lang.String
THROWABLE_RENDERER_PREFIX
-
Fields inherited from interface org.apache.log4j.spi.Configurator
INHERITED, NULL
-
-
Constructor Summary
Constructors Constructor Description PropertyConfigurator()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static void
configure(java.io.InputStream inputStream)
Reads configuration options from an InputStream.static void
configure(java.lang.String fileName)
Reads configuration options from configuration file.static void
configure(java.net.URL configURL)
Reads configuration options from urlconfigURL
.static void
configure(java.util.Properties properties)
Reads configuration options fromproperties
.static void
configureAndWatch(java.lang.String configFilename)
LikeconfigureAndWatch(String, long)
except that the default delay as defined by FileWatchdog.DEFAULT_DELAY is used.static void
configureAndWatch(java.lang.String configFilename, long delayMillis)
Reads the configuration fileconfigFilename
if it exists.(package private) static void
configureAndWatch(java.lang.String configFilename, long delay, java.lang.ClassLoader classLoader)
protected void
configureLoggerFactory(java.util.Properties properties)
(package private) void
configureRootCategory(java.util.Properties properties, LoggerRepository loggerRepository)
void
doConfigure(java.io.InputStream inputStream, LoggerRepository loggerRepository)
Reads configuration options from an InputStream.(package private) Configuration
doConfigure(java.io.InputStream inputStream, LoggerRepository loggerRepository, java.lang.ClassLoader classLoader)
void
doConfigure(java.lang.String fileName, LoggerRepository loggerRepository)
Reads configuration options from configuration file.(package private) Configuration
doConfigure(java.lang.String fileName, LoggerRepository loggerRepository, java.lang.ClassLoader classLoader)
Reads configuration options from configuration file.void
doConfigure(java.net.URL url, LoggerRepository loggerRepository)
Read configuration options from urlconfigURL
.(package private) Configuration
doConfigure(java.net.URL url, LoggerRepository loggerRepository, java.lang.ClassLoader classLoader)
void
doConfigure(java.util.Properties properties, LoggerRepository loggerRepository)
Reads configuration options fromproperties
.(package private) Configuration
doConfigure(java.util.Properties properties, LoggerRepository loggerRepository, java.lang.ClassLoader classLoader)
Reads configuration options fromproperties
.private java.util.Properties
loadProperties(java.io.InputStream inputStream)
(package private) void
parseAdditivityForLogger(java.util.Properties properties, Logger logger, java.lang.String loggerName)
Parse the additivity option for a non-root category.(package private) Appender
parseAppender(java.util.Properties properties, java.lang.String appenderName)
(package private) void
parseAppenderFilters(java.util.Properties properties, java.lang.String appenderName, Appender appender)
(package private) void
parseCategory(java.util.Properties properties, Logger logger, java.lang.String optionKey, java.lang.String loggerName, java.lang.String value)
This method must work for the root category as well.protected void
parseCatsAndRenderers(java.util.Properties properties, LoggerRepository loggerRepository)
Parse non-root elements, such non-root categories and renderers.private void
parseErrorHandler(ErrorHandler errorHandler, java.lang.String errorHandlerPrefix, java.util.Properties props, LoggerRepository loggerRepository)
private static Configuration
reconfigure(Configuration configuration)
(package private) Appender
registryGet(java.lang.String name)
(package private) void
registryPut(Appender appender)
-
-
-
Field Detail
-
CATEGORY_PREFIX
static final java.lang.String CATEGORY_PREFIX
- See Also:
- Constant Field Values
-
LOGGER_PREFIX
static final java.lang.String LOGGER_PREFIX
- See Also:
- Constant Field Values
-
FACTORY_PREFIX
static final java.lang.String FACTORY_PREFIX
- See Also:
- Constant Field Values
-
ADDITIVITY_PREFIX
static final java.lang.String ADDITIVITY_PREFIX
- See Also:
- Constant Field Values
-
ROOT_CATEGORY_PREFIX
static final java.lang.String ROOT_CATEGORY_PREFIX
- See Also:
- Constant Field Values
-
ROOT_LOGGER_PREFIX
static final java.lang.String ROOT_LOGGER_PREFIX
- See Also:
- Constant Field Values
-
APPENDER_PREFIX
static final java.lang.String APPENDER_PREFIX
- See Also:
- Constant Field Values
-
RENDERER_PREFIX
static final java.lang.String RENDERER_PREFIX
- See Also:
- Constant Field Values
-
THRESHOLD_PREFIX
static final java.lang.String THRESHOLD_PREFIX
- See Also:
- Constant Field Values
-
THROWABLE_RENDERER_PREFIX
private static final java.lang.String THROWABLE_RENDERER_PREFIX
- See Also:
- Constant Field Values
-
LOGGER_REF
private static final java.lang.String LOGGER_REF
- See Also:
- Constant Field Values
-
ROOT_REF
private static final java.lang.String ROOT_REF
- See Also:
- Constant Field Values
-
APPENDER_REF_TAG
private static final java.lang.String APPENDER_REF_TAG
- See Also:
- Constant Field Values
-
LOGGER_FACTORY_KEY
public static final java.lang.String LOGGER_FACTORY_KEY
Key for specifying theLoggerFactory
. Currently set to "log4j.loggerFactory
".- See Also:
- Constant Field Values
-
RESET_KEY
private static final java.lang.String RESET_KEY
If property set to true, then hierarchy will be reset before configuration.- See Also:
- Constant Field Values
-
INTERNAL_ROOT_NAME
private static final java.lang.String INTERNAL_ROOT_NAME
- See Also:
- Constant Field Values
-
registry
protected java.util.Hashtable registry
Used internally to keep track of configured appenders.
-
repository
private LoggerRepository repository
-
loggerFactory
protected LoggerFactory loggerFactory
-
-
Method Detail
-
configure
public static void configure(java.io.InputStream inputStream)
Reads configuration options from an InputStream.- Parameters:
inputStream
- The input stream
-
configure
public static void configure(java.util.Properties properties)
Reads configuration options fromproperties
. SeedoConfigure(String, LoggerRepository)
for the expected format.- Parameters:
properties
- The properties
-
configure
public static void configure(java.lang.String fileName)
Reads configuration options from configuration file.- Parameters:
fileName
- The configuration file.
-
configure
public static void configure(java.net.URL configURL)
Reads configuration options from urlconfigURL
.- Parameters:
configURL
- The configuration URL
-
configureAndWatch
public static void configureAndWatch(java.lang.String configFilename)
LikeconfigureAndWatch(String, long)
except that the default delay as defined by FileWatchdog.DEFAULT_DELAY is used.- Parameters:
configFilename
- A file in key=value format.
-
configureAndWatch
public static void configureAndWatch(java.lang.String configFilename, long delayMillis)
Reads the configuration fileconfigFilename
if it exists. Moreover, a thread will be created that will periodically check ifconfigFilename
has been created or modified. The period is determined by thedelay
argument. If a change or file creation is detected, thenconfigFilename
is read to configure log4j.- Parameters:
configFilename
- A file in key=value format.delayMillis
- The delay in milliseconds to wait between each check.
-
configureAndWatch
static void configureAndWatch(java.lang.String configFilename, long delay, java.lang.ClassLoader classLoader)
-
reconfigure
private static Configuration reconfigure(Configuration configuration)
-
configureLoggerFactory
protected void configureLoggerFactory(java.util.Properties properties)
Checks the providedProperties
object for aLoggerFactory
entry specified byLOGGER_FACTORY_KEY
. If such an entry exists, an attempt is made to create an instance using the default constructor. This instance is used for subsequent Category creations within this configurator.
-
configureRootCategory
void configureRootCategory(java.util.Properties properties, LoggerRepository loggerRepository)
-
doConfigure
public void doConfigure(java.io.InputStream inputStream, LoggerRepository loggerRepository)
Reads configuration options from an InputStream.- Specified by:
doConfigure
in interfaceConfigurator
- Parameters:
inputStream
- The input streamloggerRepository
- The hierarchy
-
doConfigure
Configuration doConfigure(java.io.InputStream inputStream, LoggerRepository loggerRepository, java.lang.ClassLoader classLoader)
-
doConfigure
public void doConfigure(java.util.Properties properties, LoggerRepository loggerRepository)
Reads configuration options fromproperties
. SeedoConfigure(String, LoggerRepository)
for the expected format.- Parameters:
properties
- The propertiesloggerRepository
- The hierarchy
-
doConfigure
Configuration doConfigure(java.util.Properties properties, LoggerRepository loggerRepository, java.lang.ClassLoader classLoader)
Reads configuration options fromproperties
. SeedoConfigure(String, LoggerRepository)
for the expected format.- Parameters:
properties
- The propertiesloggerRepository
- The hierarchy
-
doConfigure
public void doConfigure(java.lang.String fileName, LoggerRepository loggerRepository)
Reads configuration options from configuration file.- Parameters:
fileName
- The configuration fileloggerRepository
- The hierarchy
-
doConfigure
Configuration doConfigure(java.lang.String fileName, LoggerRepository loggerRepository, java.lang.ClassLoader classLoader)
Reads configuration options from configuration file.- Parameters:
fileName
- The configuration fileloggerRepository
- The hierarchy
-
doConfigure
public void doConfigure(java.net.URL url, LoggerRepository loggerRepository)
Read configuration options from urlconfigURL
.- Specified by:
doConfigure
in interfaceConfigurator
- Parameters:
url
- The configuration URLloggerRepository
- The hierarchy
-
doConfigure
Configuration doConfigure(java.net.URL url, LoggerRepository loggerRepository, java.lang.ClassLoader classLoader)
-
loadProperties
private java.util.Properties loadProperties(java.io.InputStream inputStream)
-
parseAdditivityForLogger
void parseAdditivityForLogger(java.util.Properties properties, Logger logger, java.lang.String loggerName)
Parse the additivity option for a non-root category.
-
parseAppender
Appender parseAppender(java.util.Properties properties, java.lang.String appenderName)
-
parseAppenderFilters
void parseAppenderFilters(java.util.Properties properties, java.lang.String appenderName, Appender appender)
-
parseCategory
void parseCategory(java.util.Properties properties, Logger logger, java.lang.String optionKey, java.lang.String loggerName, java.lang.String value)
This method must work for the root category as well.
-
parseCatsAndRenderers
protected void parseCatsAndRenderers(java.util.Properties properties, LoggerRepository loggerRepository)
Parse non-root elements, such non-root categories and renderers.
-
parseErrorHandler
private void parseErrorHandler(ErrorHandler errorHandler, java.lang.String errorHandlerPrefix, java.util.Properties props, LoggerRepository loggerRepository)
-
registryGet
Appender registryGet(java.lang.String name)
-
registryPut
void registryPut(Appender appender)
-
-