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 classPropertyConfigurator.NameValue(package private) static classPropertyConfigurator.PropertyWatchdog(package private) classPropertyConfigurator.SortedKeyEnumeration
-
Field Summary
Fields Modifier and Type Field Description (package private) static java.lang.StringADDITIVITY_PREFIX(package private) static java.lang.StringAPPENDER_PREFIXprivate static java.lang.StringAPPENDER_REF_TAG(package private) static java.lang.StringCATEGORY_PREFIX(package private) static java.lang.StringFACTORY_PREFIXprivate static java.lang.StringINTERNAL_ROOT_NAMEstatic java.lang.StringLOGGER_FACTORY_KEYKey for specifying theLoggerFactory.(package private) static java.lang.StringLOGGER_PREFIXprivate static java.lang.StringLOGGER_REFprotected LoggerFactoryloggerFactoryprotected java.util.HashtableregistryUsed internally to keep track of configured appenders.(package private) static java.lang.StringRENDERER_PREFIXprivate LoggerRepositoryrepositoryprivate static java.lang.StringRESET_KEYIf property set to true, then hierarchy will be reset before configuration.(package private) static java.lang.StringROOT_CATEGORY_PREFIX(package private) static java.lang.StringROOT_LOGGER_PREFIXprivate static java.lang.StringROOT_REF(package private) static java.lang.StringTHRESHOLD_PREFIXprivate static java.lang.StringTHROWABLE_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 voidconfigure(java.io.InputStream inputStream)Reads configuration options from an InputStream.static voidconfigure(java.lang.String fileName)Reads configuration options from configuration file.static voidconfigure(java.net.URL configURL)Reads configuration options from urlconfigURL.static voidconfigure(java.util.Properties properties)Reads configuration options fromproperties.static voidconfigureAndWatch(java.lang.String configFilename)LikeconfigureAndWatch(String, long)except that the default delay as defined by FileWatchdog.DEFAULT_DELAY is used.static voidconfigureAndWatch(java.lang.String configFilename, long delayMillis)Reads the configuration fileconfigFilenameif it exists.(package private) static voidconfigureAndWatch(java.lang.String configFilename, long delay, java.lang.ClassLoader classLoader)protected voidconfigureLoggerFactory(java.util.Properties properties)(package private) voidconfigureRootCategory(java.util.Properties properties, LoggerRepository loggerRepository)voiddoConfigure(java.io.InputStream inputStream, LoggerRepository loggerRepository)Reads configuration options from an InputStream.(package private) ConfigurationdoConfigure(java.io.InputStream inputStream, LoggerRepository loggerRepository, java.lang.ClassLoader classLoader)voiddoConfigure(java.lang.String fileName, LoggerRepository loggerRepository)Reads configuration options from configuration file.(package private) ConfigurationdoConfigure(java.lang.String fileName, LoggerRepository loggerRepository, java.lang.ClassLoader classLoader)Reads configuration options from configuration file.voiddoConfigure(java.net.URL url, LoggerRepository loggerRepository)Read configuration options from urlconfigURL.(package private) ConfigurationdoConfigure(java.net.URL url, LoggerRepository loggerRepository, java.lang.ClassLoader classLoader)voiddoConfigure(java.util.Properties properties, LoggerRepository loggerRepository)Reads configuration options fromproperties.(package private) ConfigurationdoConfigure(java.util.Properties properties, LoggerRepository loggerRepository, java.lang.ClassLoader classLoader)Reads configuration options fromproperties.private java.util.PropertiesloadProperties(java.io.InputStream inputStream)(package private) voidparseAdditivityForLogger(java.util.Properties properties, Logger logger, java.lang.String loggerName)Parse the additivity option for a non-root category.(package private) AppenderparseAppender(java.util.Properties properties, java.lang.String appenderName)(package private) voidparseAppenderFilters(java.util.Properties properties, java.lang.String appenderName, Appender appender)(package private) voidparseCategory(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 voidparseCatsAndRenderers(java.util.Properties properties, LoggerRepository loggerRepository)Parse non-root elements, such non-root categories and renderers.private voidparseErrorHandler(ErrorHandler errorHandler, java.lang.String errorHandlerPrefix, java.util.Properties props, LoggerRepository loggerRepository)private static Configurationreconfigure(Configuration configuration)(package private) AppenderregistryGet(java.lang.String name)(package private) voidregistryPut(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 fileconfigFilenameif it exists. Moreover, a thread will be created that will periodically check ifconfigFilenamehas been created or modified. The period is determined by thedelayargument. If a change or file creation is detected, thenconfigFilenameis 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 providedPropertiesobject for aLoggerFactoryentry 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:
doConfigurein 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:
doConfigurein 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)
-
-