java - guardar - Aplicación web Tomcat6 utilizando log4j para el registro, no se puede iniciar sesión en syslog
log4j properties configuration (2)
Estoy intentando registrar mis registros de webapp en syslog a nivel local4. Entorno: Tomcat6, OpenSolaris, Struts2, log4j. El contenido de mi log4j.properties es el siguiente-
log4j.rootLogger=INFO, SYSLOG
log4j.appender.SYSLOG=org.apache.log4j.net.SyslogAppender
log4j.appender.SYSLOG.syslogHost=localhost
log4j.appender.SYSLOG.layout=org.apache.log4j.PatternLayout
log4j.appender.SYSLOG.layout.ConversionPattern=%d [%t] %-5p - %m%n
log4j.appender.SYSLOG.Facility=local4
He editado /etc/syslog.conf y añado las siguientes líneas al final:
local4.notice /var/log/mylog.log
Después de esto, he reiniciado el servicio syslog. Cuando ejecuto el siguiente comando desde el shell, se registra en el /var/log/mylog.log correctamente. Esto significa principalmente que el servicio syslog está funcionando correctamente-
logger -i -p local4.notice -t "check log" "test message"
Pero no puedo entender por qué los registros de la aplicación web nunca llegan a /var/log/mylog.log. ¿Mi configuración log4j es correcta para SysLogAppender?
Cuando pruebo appenders normales como "DailyRollingFileAppender" etc., el registro funciona bien ... pero no puedo hacer que SyslogAppender funcione.
¡Gracias! -Keshav
Normalmente, al agregar syslog falla porque el daemon syslog no está configurado para aceptar paquetes de la red. Su "logger -i -p" no dice si los paquetes están permitidos ...
Problema similar en Ubuntu 10.04, tuve que descomentar dos líneas en /etc/rsyslog.conf para recibir mensajes de SyslogAppender.
# provides UDP syslog reception
$ModLoad imudp
$UDPServerRun 514