Rotación de logs personalizados
jueves, 16 de septiembre de 2010Acuerdense, no hagan como yo: si personalizan los nombres de los archivos log de apache (ó cualquier otro programa que genere registros a un archivo) ó si simplemente quieren periódicamente rotar un documento personal cuando llegue a XX megas tienen que actualizar la configuración de logrotate. Este programa, cada dia, examina los archivos indicados y cuando cumplen unas condiciones dadas (edad ó tamaño) los elimina (rota), los enviar por correo, los guarda ó los borra definitivamente.
En Opensuse, en el directorio /etc/logrotate.d teneis una lista de archivos con el nombre de aplicaciones que habitualmente se instalan un GNU/Linux y que generan archivos que deben ser rotados. Cada uno de estos archivos incluye en su interior uno ó más archivos que deben ser rotados y las condiciones que esta rotación, algo como:
/ruta/completa/mi_archivo.txt {
compress
dateext
maxage 365
rotate 12
size=+4096k
notifempty
missingok
create 644 root root
postrotate
/etc/init.d/apache2 reload
endscript
}
Las opciones más habituales que puedes incluir:
compress, la copia de seguridad generada debe ser una archivo comprimido (gzip)
dataext, añadir al archivo comprimido la fecha actual (por defecto YYYYMMDD)
maxage 365, tiempo máximo que se debe conservar un archivo rotado. Mas antiguos se eliminarán.
rotate 12, número máximo de archivos rotados a conservar
size=+4096k, tamaño que debe tener un archivo para rotarlo
notifempty, si está vacio lo ignoras
missingok, si no existe el archivo no pasa nada
create 644 root root, crea un archivo rotado con estos permisos de lectura+escritura
postrotate /etc/init.d/apache2 reload, despues de rotar un archivo ejecuta esto (recargar apache).
endscript, fin de las opciones
21 de December, 2024 @ 12:20