Utilizo rsyslog para guardar registros de hosts remotos en un servidor de esta manera:
Servidor:
# Logfile for each host
$template DynaFile,"/var/log/rsyslog/%HOSTNAME%.log"
*.* -?DynaFile
Clientela:
*.* @servername
Esto crea archivos de registro para cada host cliente en los servidores, /var/log/rsyslog/
pero también registra cada mensaje en los servidores /var/log/syslog
. Entonces se hincha mucho. ¿Cómo puedo evitarlo para que /var/log/syslog
solo contenga mensajes del propio servidor?
/var/log/syslog
Respuestas:
Esto es lo que funciona para mí:
fuente
TempAuth
yTempMsg
?He estado trabajando mucho en esto y creo que he encontrado una solución. Animo a otros a probar esto y buscar posibles consecuencias adversas. Sugiero que esto se implemente primero en laboratorio / pruebas y máquinas no críticas.
Las 4 líneas anteriores se encuentran en la sección superior de mi archivo /etc/rsyslog.conf
Actualmente estoy viendo 2 archivos de registro:
/var/log/net-hosts/10.1.1.1
y / var / log / syslog
mientras veo ambos, veo registros llenarse en el archivo de host remoto, pero no en el syslog . Reinicié Apache y vi entradas de registro en syslog para esta tarea.
fuente
Debe asegurarse de que sus nuevas reglas se evalúen antes que la que se registra en / var / log / syslog.
Por ejemplo, en Ubuntu Trusty (rsyslog 7.4.4) /etc/rsyslog.conf contiene,
$IncludeConfig /etc/rsyslog.d/*.conf
por lo que se cargan las reglas predeterminadas
/etc/rsyslog.d/50-default.conf
, incluida la de / var / log / syslog.En este caso, puede agregar un nuevo archivo para cargar antes de ese, como
00-remote.conf
. Para completar, aquí está su contenido para un sistema que estoy administrando:fuente