bueno, podrías ir y ver qué descriptores de archivo ha abierto el proceso ... ¿Quizás intentar explicar qué problema exacto tienes? ¿Estás tratando de depurar tus propios scripts? Rendimiento de los scripts predeterminados / de terceros?
Hubert Kario
Respuestas:
55
cat /var/lib/logrotate/status
Para verificar si un registro en particular está rotando o no y para verificar la última fecha y hora de su rotación, revise el archivo / var / lib / logrotate / status. Este es un archivo perfectamente formateado que contiene el nombre del archivo de registro y la fecha en la que se giró por última vez.
Considerando Ubuntu, cat /var/lib/logrotate/status solo muestra la actividad logrotate iniciada por el usuario root . Los cronjobs de otros usuarios pueden desencadenar su propia actividad logrotate, por ejemplo, cuando su crontab incluye una entrada como 0 0 * * * /usr/sbin/logrotate $HOME/logrotate/logrotate.conf --state $HOME/logrotate/logrotate-state. Esa actividad de rotación de registros se escribiría en un archivo $HOME/logrotate/logrotate-state, $HOMEsiendo el directorio de inicio de ese usuario.
Abdull
En sistemas RedHat aún más recientes (al menos en RHEL 7.6) el archivo de estado ahora está en /var/lib/logrotate/logrotate.status.
Richlv
13
Puede intentar ejecutar logrotate en modo de depuración o detallado:
-d Turns on debug mode and implies -v. In debug mode, no changes
will be made to the logs or to the logrotate state file.
-v, --verbose
Display messages during rotation.
¿Ayuda esto cuando logrotate se inicia como cron? Quiero decir, ¿existe la posibilidad de registrar el comportamiento de logrotate en un archivo de registro?
@dude: si está intentando hacerlo desde la línea de comandos y obtiene ese error, deberá hacerlo así: sudo logrotate -v /etc/logrotate.conf 2>&1 | sudo tee -a /var/log/logrotate.log >/dev/null( asegúrese de tener el -a).
Dennis Williamson
@Dennis cuando intento eso, aunque crea el logrotate.log pero tiene 0 KB y el proceso no se detiene en la terminal y espera con un cursor parpadeante.
AWS AMI Linux tiene la misma estructura de estado de logrotate
Victor Perov
5
Varios registros se rotan en varias frecuencias según el archivo de configuración (/etc/logrotate.conf) y / o el directorio (/etc/logrotate.d). Los nombres pueden variar en diferentes distribuciones. La configuración puede especificar acciones previas y / o posteriores a la rotación. Los nombres de los archivos rotados y la última fecha de rotación están en el archivo de estado (/ var / lib / logrotate / state).
Logrotate no tiene instalaciones de registro. Las acciones de recarga / reinicio que inicia se registrarán de acuerdo con el registro del programa en el que se está actuando.
La forma más fácil de hacerlo sería editar /etc/cron.daily/logrotatepara incluir la -vopción. Los detalles sobre la configuración de logrotate y las opciones se pueden encontrar con el comando man logrotate.
Respuestas:
Tomado de:
https://www.digitalocean.com/community/articles/how-to-manage-log-files-with-logrotate-on-ubuntu-12-10
fuente
/var/lib/logrotate.status
en los sistemas Red Hat.cat /var/lib/logrotate/status
solo muestra la actividad logrotate iniciada por el usuario root . Los cronjobs de otros usuarios pueden desencadenar su propia actividad logrotate, por ejemplo, cuando su crontab incluye una entrada como0 0 * * * /usr/sbin/logrotate $HOME/logrotate/logrotate.conf --state $HOME/logrotate/logrotate-state
. Esa actividad de rotación de registros se escribiría en un archivo$HOME/logrotate/logrotate-state
,$HOME
siendo el directorio de inicio de ese usuario./var/lib/logrotate/logrotate.status
.Puede intentar ejecutar logrotate en modo de depuración o detallado:
fuente
sudo logrotate -v /etc/logrotate.conf 2>&1 | sudo tee -a /var/log/logrotate.log >/dev/null
( asegúrese de tener el-a
).En Suse, las distribuciones de Linux son así:
fuente
Varios registros se rotan en varias frecuencias según el archivo de configuración (/etc/logrotate.conf) y / o el directorio (/etc/logrotate.d). Los nombres pueden variar en diferentes distribuciones. La configuración puede especificar acciones previas y / o posteriores a la rotación. Los nombres de los archivos rotados y la última fecha de rotación están en el archivo de estado (/ var / lib / logrotate / state).
Logrotate no tiene instalaciones de registro. Las acciones de recarga / reinicio que inicia se registrarán de acuerdo con el registro del programa en el que se está actuando.
La forma más fácil de hacerlo sería editar
/etc/cron.daily/logrotate
para incluir la-v
opción. Los detalles sobre la configuración de logrotate y las opciones se pueden encontrar con el comandoman logrotate
.fuente
Amigo, puedes verificar la configuración de
logrotate
, generalmente en/etc/logrotate.conf
.Las distribuciones modernas tienen un
logrotate
archivo de configuración específico en el/etc/logrotate.d
directorio.por ejemplo para
nginx
Mantendrá el archivo durante 52 semanas (un año). La rotación es semanal.
Nota: user56548 solía ser "Amigo"
fuente
rotate 365
oweekly
. La rotación diaria conrotate 52
mantendrá 52 días de registros, obviamente.weekly