two women looking at the code at laptop
COMPARTE ESTE ARTÍCULO

La rotación de logs es una práctica esencial para garantizar que los archivos de log no consuman todo el espacio disponible en el sistema. Apache2 por sí mismo no tiene una funcionalidad interna completa de rotación de logs, pero en la mayoría de los sistemas, puedes usar logrotate para lograrlo.

Aquí hay un procedimiento básico sobre cómo configurar la rotación de logs para Apache2 cada 24 horas usando logrotate:

  1. Instalación de logrotate: Si aún no tienes instalado logrotate, puedes hacerlo usando el gestor de paquetes de tu sistema operativo. Por ejemplo, en un sistema basado en Debian/Ubuntu:
   sudo apt update
   sudo apt install logrotate
  1. Configuración de logrotate para Apache2: Por lo general, hay una configuración de logrotate específica para Apache2 ya presente en /etc/logrotate.d/apache2. Sin embargo, si no existe, puedes crear uno. Para configurar la rotación de logs cada 24 horas, deberías editar o crear el archivo /etc/logrotate.d/apache2:
   sudo nano /etc/logrotate.d/apache2

Y luego, agregar o editar el contenido para que se vea más o menos así:

   /var/log/apache2/*.log {
       daily
       missingok
       rotate 14
       compress
       delaycompress
       notifempty
       create 640 root adm
       sharedscripts
       postrotate
           if /etc/init.d/apache2 status > /dev/null ; then \
               /etc/init.d/apache2 reload > /dev/null; \
           fi;
       endscript
   }

Explicación de las directivas:

  • daily: Rota los logs diariamente.
  • missingok: No produce un error si falta un archivo de log.
  • rotate 14: Guarda 14 copias de archivos de respaldo.
  • compress: Comprime las copias de seguridad (excepto la más reciente) con gzip.
  • delaycompress: Retrasa la compresión de la última copia de seguridad para facilitar la lectura.
  • notifempty: No rota el archivo si está vacío.
  • create: Crea un archivo nuevo con los permisos especificados después de la rotación.
  • sharedscripts: Ejecuta postrotate y endscript una vez, no por cada archivo de log.
  • postrotateendscript: Estos scripts se ejecutan después de que se ha llevado a cabo la rotación. En este caso, estamos verificando el estado de Apache2 y, si está en ejecución, recargándolo para que comience a escribir en los nuevos archivos de log.
  1. Verifica la configuración de logrotate: Una vez que hayas configurado logrotate, es una buena idea probar la configuración para asegurarte de que funcione correctamente:
   sudo logrotate -d /etc/logrotate.d/apache2

La opción -d o --debug muestra lo que haría el programa sin realmente cambiar ningún archivo o ejecutar ningún script.

  1. Ejecución Automática: logrotate se ejecuta automáticamente a través de cron o systemd-timer en la mayoría de los sistemas. Si configuraste la rotación para que sea diaria, se encargará automáticamente de rotar tus logs cada 24 horas.

Espero que esto te ayude a configurar la rotación de logs para Apache2. ¡Buena suerte!

two women looking at the code at laptop
Photo by Christina Morillo on Pexels.com

Contenido restringido

Acceso de usuarios existentes
   
Registro de un nuevo usuario
*Campo necesario

Tags:

Comments are closed

Estado de acceso
ESTADO DE ACCESO
TRADUCTORES
COMPARTENOS
error: CONTENIDO PROTEGIDO