public static void initLogging(String location, long refreshInterval) throws FileNotFoundException {
    """
	Initialize log4j from the given location, with the given refresh interval
	for the config file. Assumes an XML file in case of a ".xml" file extension,
	and a properties file otherwise.
	<p>Log4j's watchdog thread will asynchronously check whether the timestamp
	of the config file has changed, using the given interval between checks.
	A refresh interval of 1000 milliseconds (one second), which allows to
	do on-demand log level changes with immediate effect, is not unfeasible.
	<p><b>WARNING:</b> Log4j's watchdog thread does not terminate until VM shutdown;
	in particular, it does not terminate on LogManager shutdown. Therefore, it is
	recommended to <i>not</i> use config file refreshing in a production J2EE
	environment; the watchdog thread would not stop on application shutdown there.
	
	@param location        the location of the config file: either a "classpath:" location
	(e.g. "classpath:myLog4j.properties"), an absolute file URL
	(e.g. "file:C:/log4j.properties), or a plain absolute path in the file system
	(e.g. "C:/log4j.properties")
	@param refreshInterval interval between config file refresh checks, in milliseconds
	@throws java.io.FileNotFoundException if the location specifies an invalid file path
    """
        String resolvedLocation = SystemPropertyUtils.resolvePlaceholders(location);
        File file = ResourceUtils.getFile(resolvedLocation);
        if (!file.exists()) {
            throw new FileNotFoundException("Log4j config file [" + resolvedLocation + "] not found");
        }
        if (resolvedLocation.toLowerCase().endsWith(XML_FILE_EXTENSION)) {
            DOMConfigurator.configureAndWatch(file.getAbsolutePath(), refreshInterval);
        } else {
            PropertyConfigurator.configureAndWatch(file.getAbsolutePath(), refreshInterval);
        }
    }
public static void initLogging(String location, long refreshInterval) throws FileNotFoundException {
        String resolvedLocation = SystemPropertyUtils.resolvePlaceholders(location);
        File file = ResourceUtils.getFile(resolvedLocation);
        if (!file.exists()) {
            throw new FileNotFoundException("Log4j config file [" + resolvedLocation + "] not found");
        }
        if (resolvedLocation.toLowerCase().endsWith(XML_FILE_EXTENSION)) {
            DOMConfigurator.configureAndWatch(file.getAbsolutePath(), refreshInterval);
        } else {
            PropertyConfigurator.configureAndWatch(file.getAbsolutePath(), refreshInterval);
        }
    }
public static void initLogging ( String location , long refreshInterval ) throws FileNotFoundException { String resolvedLocation = SystemPropertyUtils . resolvePlaceholders ( location ) ; File file = ResourceUtils . getFile ( resolvedLocation ) ; if ( ! file . exists ( ) ) { throw new FileNotFoundException ( "Log4j config file [" + resolvedLocation + "] not found" ) ; } if ( resolvedLocation . toLowerCase ( ) . endsWith ( XML_FILE_EXTENSION ) ) { DOMConfigurator . configureAndWatch ( file . getAbsolutePath ( ) , refreshInterval ) ; } else { PropertyConfigurator . configureAndWatch ( file . getAbsolutePath ( ) , refreshInterval ) ; } }
Initialize log4j from the given location, with the given refresh interval
for the config file. Assumes an XML file in case of a ".xml" file extension,
and a properties file otherwise.
<p>Log4j's watchdog thread will asynchronously check whether the timestamp
of the config file has changed, using the given interval between checks.
A refresh interval of 1000 milliseconds (one second), which allows to
do on-demand log level changes with immediate effect, is not unfeasible.
<p><b>WARNING:</b> Log4j's watchdog thread does not terminate until VM shutdown;
in particular, it does not terminate on LogManager shutdown. Therefore, it is
recommended to <i>not</i> use config file refreshing in a production J2EE
environment; the watchdog thread would not stop on application shutdown there.

@param location        the location of the config file: either a "classpath:" location
(e.g. "classpath:myLog4j.properties"), an absolute file URL
(e.g. "file:C:/log4j.properties), or a plain absolute path in the file system
(e.g. "C:/log4j.properties")
@param refreshInterval interval between config file refresh checks, in milliseconds
@throws java.io.FileNotFoundException if the location specifies an invalid file path
Initialize log4j from the given location with the given refresh interval for the config file . Assumes an XML file in case of a . xml file extension and a properties file otherwise . <p > Log4j s watchdog thread will asynchronously check whether the timestamp of the config file has changed using the given interval between checks . A refresh interval of 1000 milliseconds ( one second ) which allows to do on - demand log level changes with immediate effect is not unfeasible . <p > <b > WARNING : < / b > Log4j s watchdog thread does not terminate until VM shutdown ; in particular it does not terminate on LogManager shutdown . Therefore it is recommended to <i > not< / i > use config file refreshing in a production J2EE environment ; the watchdog thread would not stop on application shutdown there .