En un proyecto que he lo siguiente en la ruta de clase:Logback FileAppender - archivo de registro está vacío?
Bundle-ClassPath: .,
lib/logback-classic.jar,
lib/logback-core.jar,
lib/slf4j-api.jar
y la siguiente en los build.properties:
bin.includes = META-INF/,\
.,\
plugin.xml,\
lib/logback-classic.jar,\
lib/logback-core.jar,\
lib/slf4j-api.jar,\
logback.xml
En la raíz también tengo un archivo que contiene logback.xml:
<!-- <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> -->
<!-- <layout class="ch.qos.logback.classic.PatternLayout"> -->
<!-- <Pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n -->
<!-- </Pattern> -->
<!-- </layout> -->
<!-- </appender> -->
<root level="debug">
<appender-ref ref="STDOUT" />
</root>
<appender name="FILE" class="ch.qos.logback.core.FileAppender">
<File>logs\\logfile.log</File>
<Append>true</Append>
<layout class="ch.qos.logback.classic.PatternLayout">
<Pattern>%-4relative [%thread] %-5level %logger{35} - %msg%n
</Pattern>
</layout>
</appender>
</configuration>
en una clase que se ejecuta en Tengo inicio:
private static final Logger logger = LoggerFactory.getLogger(Application.class.getName());
public Object start(IApplicationContext context) {
logger.debug("debug string");
logger.warn("warn string");
logger.error("error string");
Cuando generar y ejecutar mi aplicación de un archivo de registros \ logfile.log se crea en la raíz de mi solicitud pero su vacío. Si utilizo ConsoleAppender y habilito la consola, funciona bien.
¿Por qué el logback no escribe en el archivo de registro cuando se utiliza FileAppender?
Excelente respuesta Gracias Girish! – sunleo