6 votos

¿Por qué es Syslog No la Escritura de los Registros A Los Designados Archivos?

He estado tratando de ruta de Apache registros a través de Syslog (por alguna razón de rotación de registros se había detenido, y el uso de Syslog y logrotate parecía una solución razonable).

He enviado Apache registros de errores para local7 y transfiere los registros de acceso a local6 a través del programa logger.

Quiero Syslog para escribir el error y los registros de acceso a /var/log/apache2/error.log y /var/log/apache2/access.log respectivamente.

Para ello he añadido lo siguiente a /etc/syslog.conf:

# Logging for Apache using local7 facility for error messages
# and local6 for access log
# Added 20/06/2010 by Chris Bunney
local7.*                        /var/log/apache2/error.log
local6.*                        /var/log/apache2/access.log

Sé que el error y los registros de acceso están siendo enviados a Syslog correctamente porque están apareciendo en /var/log/syslog, sin embargo se que no ha sido escrito para los archivos que desee.

El original de los permisos de archivo de los archivos de destino:

-rw-r----- 1 root adm       0 2010-06-20 23:01 access.log

Los actuales permisos de archivo de los archivos de destino que he estado usando para probar y descartar cosas que causan problemas:

-rw-rw-rw- 1 syslog adm       0 2010-06-20 23:01 access.log

Todo se ve bien para mí, así que por qué no los mensajes de Syslog es la recepción que se escriben en los archivos que quiero? He perdido algo simple?


Salida completa de cat /etc/syslog.conf:

#  /etc/syslog.conf     Configuration file for syslogd.
#
#                       For more information see syslog.conf(5)
#                       manpage.

#
# First some standard logfiles.  Log by facility.
#

auth,authpriv.*                 /var/log/auth.log
*.*;auth,authpriv.none          -/var/log/syslog
cron.*                          /var/log/cron.log
daemon.*                        -/var/log/daemon.log
kern.*                          -/var/log/kern.log
lpr.*                           -/var/log/lpr.log
mail.*                          -/var/log/mail.log
user.*                          -/var/log/user.log

#
# Logging for the mail system.  Split it up so that
# it is easy to write scripts to parse these files.
#
mail.info                       -/var/log/mail.info
mail.warn                       -/var/log/mail.warn
mail.err                        /var/log/mail.err

# Logging for INN news system
#
news.crit                       /var/log/news/news.crit
news.err                        /var/log/news/news.err
news.notice                     -/var/log/news/news.notice

# Logging for Apache using local7 facility for error messages
# and local6 for access log
# Added 20/06/2010 by Chris Bunney
local7.*                        /var/log/apache2/error.log
local6.*                        /var/log/apache2/access.log

#
# Some `catch-all' logfiles.
#
*.=debug;\
        auth,authpriv.none;\
        news.none;mail.none     -/var/log/debug
*.=info;*.=notice;*.=warn;\
        auth,authpriv.none;\
        cron,daemon.none;\
        mail,news.none          -/var/log/messages

#
# Emergencies are sent to everybody logged in.
#
*.emerg                         *

#
# I like to have messages displayed on the console, but only on a virtual
# console I usually leave idle.
#
#daemon,mail.*;\
#       news.=crit;news.=err;news.=notice;\
#       *.=debug;*.=info;\
#       *.=notice;*.=warn       /dev/tty8

# The named pipe /dev/xconsole is for the `xconsole' utility.  To use it,
# you must invoke `xconsole' with the `-file' option:
#
#    $ xconsole -file /dev/xconsole [...]
#
# NOTE: adjust the list below, or you'll go crazy if you have a reasonably
#      busy site..
#
daemon.*;mail.*;\
        news.err;\
        *.=debug;*.=info;\
        *.=notice;*.=warn       |/dev/xconsole

17voto

delimiter69 Puntos 399

¿Reiniciar syslogd? También puede utilizar lsof -f -p <pid-of-syslogd> para ver qué archivos de registro que se ha abierto. El syslog.conf mira a la derecha, usted puede publicar tu configuración de apache.

5voto

h0ru5 Puntos 21

Para los que se perdieron en google con síntomas similares después de una actualización de Ubuntu 12.04 LTS para 14.04.1: syslog fue reemplazado por rsyslog, que es por alguna razón no se instala por la distribución de la actualización.

la solución es apt-get install rsyslog

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: