rolling example appenders java logging log4j

java - example - configuración log4j a través de argumento(s) JVM



log4j2 json configuration example (6)

¿Qué variables debo establecer / pasar como argumentos a la JVM para que Log4j se ejecute correctamente? Y de manera adecuada quiero decir que no me quejo e imprimo en la consola. ¿Puedo ver un ejemplo típico?

Nota: Necesito evitar crear un archivo log4j.properties en la aplicación.


¿Tienes un archivo de configuración log4j? Solo haz referencia usando

-Dlog4j.configuration={path to file}

donde {ruta al archivo} debe estar precedido de un file:


En general, siempre que su archivo log4j.properties esté en classpath, Log4j debería simplemente recogerlo automáticamente en el arranque de JVM.



La solución está usando el siguiente argumento de JVM:

-Dlog4j.configuration={path to file}

Si el archivo NO está en el classpath (en WEB-INF/classes en el caso de Tomcat) pero en algún lugar de su disco, use file: como

-Dlog4j.configuration=file:C:/Users/me/log4j.xml

Más información y ejemplos aquí: http://logging.apache.org/log4j/1.2/manual.html


Sé que esto ya está respondido, pero como dijo, esto no es exactamente lo que está buscando, me gustaría señalar la siguiente alternativa:

También puede usar una clase de configuración en lugar de las propiedades o el archivo xml.

-Dlog4j.configuratorClass=com.foo.BarConfigurator

Ver http://logging.apache.org/log4j/1.2/manual.html para más detalles.


Tarde en la fiesta ya que desde 2015, Log4J 1.x ha llegado a http://logging.apache.org/log4j/1.2/manual.html .

Log4J 2.x en adelante, la opción de JVM debería ser -Dlog4j.configurationFile=<filename>

PS <filename> podría ser un archivo relativo a la ruta de clase sin el file: como se sugiere en las otras respuestas.