Rotado de logs – logadm daemon SUN Solaris

Hoy vamos a hablar de la configuración del sistema de rotado de logs de UNIX Sun Solaris. Aunque considero obsoletas estas configuraciones todavía se encuentran en muchos sistemas. Pero las hay más sencillas e intuitivas, y hablaré en posteriores posts de ellas, en las distribuciones de Linux.

El demonio logadm ejecutable a través de crontab en el sistema, tiene el archivo de configuración logadm.conf:

#
#ident  “@(#)logadm.conf        1.6     04/08/13 SMI”
#
# logadm.conf
#
# Default settings for system log file management.
# The -w option to logadm(1M) is the preferred way to write to this file,
# but if you do edit it by hand, use “logadm -V” to check it for errors.
#
# The format of lines in this file is:
#       <logname> <options>
# For each logname listed here, the default options to logadm
# are given.  Options given on the logadm command line override
# the defaults contained in this file.
#
# logadm typically runs early every morning via an entry in
# root’s crontab (see crontab(1)).
#

Al final de la configuración por defecto de este archivo tenemos que meter los archivos que queremos rotar, según la sintaxis que nos indican los comentarios.

Aquí tenemos diferentes ejemplos de rotado de logs usando las opciones que nos brinda logadm, y que podemos explorar con “man”:

Rotar Logs de Apache utilizando <logadm>
Vamos a rotar los logs de Apache HTTP, queremos que rote diariamente, guarde 7 copias y que comprima las 6 últimas. Vamos a asumir que nuestro $APACHE_HOME=/opt/www/apache-1.3.41

# logadm -w /opt/www/apache-1.3.41/logs/www.sfchildren.com-error_log -C 7 -p 1d -z 1 -a ‘/opt/www/apache-1.3.41/bin/apachectl graceful’
# tail -1 /etc/logadm.conf
/opt/www/apache-1.3.41/logs/www.sfchildren.com-error_log -C 7 -a ‘/opt/www/apache-1.3.41/bin/apachectl graceful’ -p 1d -z 1

Rotar Log de PostgreSQL con <copy and truncate>

# logadm -w /var/log/postgres/server.log -C 5 -c -p 1d -z 0
# tail -1 /etc/logadm.conf
/var/log/postgres/server.log -C 5 -c -p 1d -z 0

Si ejecutamos el comando <logadm> con la opción <-v> -para ver que procesa-, y comprobamos que al utilizar la opción <-c> ha hecho un <cp y truncate>

# logadm -v
# cargando /etc/logadm.conf
# procesando nombre de registro: /var/log/postgres/server.log
#     usando plantilla predeterminada: $archivo.$n
mkdir -p /var/log/postgres # verify directory exists
cp -fp /var/log/postgres/server.log /var/log/postgres/server.log.0 # rotate log file via copy (-c flag)
cp -f /dev/null /var/log/postgres/server.log # truncate log file (-c flag)
touch /var/log/postgres/server.log
chown 101:90 /var/log/postgres/server.log
chmod 600 /var/log/postgres/server.log
#     registrando fecha de rotación Thu May  6 07:54:49 2010 para /var/log/postgres/server.log
# escribiendo cambios en /etc/logadm.conf
# ls -l /var/log/postgres/server.log*
-rw——-   1 postgres postgres       0 may  6 09:54 /var/log/postgres/server.log
-rw——-   1 postgres postgres 10160774 may  6 09:24 /var/log/postgres/server.log.0

One thought on “Rotado de logs – logadm daemon SUN Solaris

  • febrero 7, 2013 at 10:08 pm
    Permalink

    He estado navegando por tu web… Y oye! Está muy bien! Te gustaría colaborar con nosotros? (Joomzap.wordpress.com)

    Si quieres nos podemos poner en contato mediante joomzap@gmail.com o puedes visitar la página (joomzap.wordpress.com/colabora)

    Saludos!

    Reply

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *