Es un sistema de log que trabaja en conjunto con runit y se encarga de rotar los logs automáticamente. Para utilizar socklog es necesario que el programa svlogd esté instalado, ya que es parte runit.
Documentación:
Instalando socklog
apt-get install socklog socklog-run
Configurando sistema de logs
Es necesario que socklog-unix escuche en el socket local de unix /dev/log. Se crean los directorios del servicio y de los logs, a través de la herramienta socklog-conf:
socklog-conf unix nobody log
Hacer un stop del syslogd/syslog-ng, en el caso de que éste se encuentre corriendo. No rebootear antes de finalizar la configuración de socklog.
Avisarle al supervisor de servicios, runsvdir, para que comience a supervisar socklog.
ln -s /etc/sv/socklog-unix /var/service/
Verificar que socklog-unix esté siendo supervisado por runit. sv status socklog-unix
run: socklog-unix: (pid 27461) 3086s; run: log: (pid 1338) 254110s
Ver que socklog esté logueando
less /var/log/socklog/main/current
Modificar parámetros de rotación
Vi /var/log/socklog/$SERVICIO
#Tamaño del archivo en bytes, antes de ser rotado.s999999
#Cant. de archivos de logs que deberían mantenerse
n5
#Opcionalmente, se le especifica que sean compresos.
!/bin/bzip2
Remoto a través de UDP
La idea es transmitir logs a un host remoto, dentro de una red interna, a través de UDP. No es fiable, y tampoco provee autenticación entre las partes.
Lado cliente
Puede especificarse el envío de logs por servicio o decirle que envíe directamente todo.
Para el primer caso debe crearse el archivo /var/log/$SERVICIO/config.
Para el segundo caso, se especifica debajo.
vi /var/log/socklog/main/config
s9999
n2
# '+*': se toman todos los datos. '-*': se descartan todos los datos
+*
# 'U'= se realizan logs locales, además de enviarse a un server de logs remoto. 'u'= solo se realizan logs locales.
U10.0.0.16:514
sv restart socklog-unix
sv hup socklog-unix/log
Lado servidor
Remoto a traves de TCP
No hay comentarios.:
Publicar un comentario