[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Logrotate no funciona / ha dejado de funcionar.



El 29 de junio de 2016 20:04:02 CEST, Ramses <ramses.sevilla@gmail.com> escribió:
>El 29 de junio de 2016 19:47:55 CEST, fernando sainz
><fernandojose.sainz@gmail.com> escribió:
>>El día 29 de junio de 2016, 19:19, Ramses <ramses.sevilla@gmail.com>
>>escribió:
>>> El 29 de junio de 2016 18:28:44 CEST, fernando sainz
>><fernandojose.sainz@gmail.com> escribió:
>>>>El día 29 de junio de 2016, 18:08, Ramses <ramses.sevilla@gmail.com>
>>>>escribió:
>>>>> El 29 de junio de 2016 16:11:16 CEST, fernando sainz
>>>><fernandojose.sainz@gmail.com> escribió:
>>>>>>El día 29 de junio de 2016, 15:53, Ramses
>><ramses.sevilla@gmail.com>
>>>>>>escribió:
>>>>>>> El 29 de junio de 2016 15:22:15 CEST, fernando sainz
>>>>>><fernandojose.sainz@gmail.com> escribió:
>>>>>>>>El día 29 de junio de 2016, 15:18, fernando sainz
>>>>>>>><fernandojose.sainz@gmail.com> escribió:
>>>>>>>>> El día 29 de junio de 2016, 15:01, Ramses
>>>>>><ramses.sevilla@gmail.com>
>>>>>>>>escribió:
>>>>>>>>>> Hola a tod@s,
>>>>>>>>>>
>>>>>>>>>> Tengo un problema en un servidor en el que no funciona, o más
>>>>>>bien,
>>>>>>>>en algún momento ha dejado de funcionar el Logrotate.
>>>>>>>>>>
>>>>>>>>>> Por ejemplo, tengo un fichero "/etc/logrotate.d/pruebas" con
>>el
>>>>>>>>siguiente contenido:
>>>>>>>>>>
>>>>>>>>>> ------------------
>>>>>>>>>> /var/log/asterisk/messages {
>>>>>>>>>> missingok
>>>>>>>>>> rotate 7
>>>>>>>>>> daily
>>>>>>>>>> create 0640 root root
>>>>>>>>>> postrotate
>>>>>>>>>> /usr/sbin/asterisk -rx 'logger reload' > /dev/null 2>
>>/dev/null
>>>>>>>>>> echo "Se ha ejecutado Logrotate" | mail -s "PRUEBAS:
>Ejecucion
>>>>de
>>>>>>>>Log Rotate por Dias" manolo@manolo.es
>>>>>>>>>> endscript
>>>>>>>>>> }
>>>>>>>>>> ------------------
>>>>>>>>>>
>>>>>>>>>> Si lo ejecuto con /usr/sbin/logrotate /etc/logrotate.conf, no
>>me
>>>>>>>>hace la rotación y tampoco me manda el mail que tengo puesto en
>>el
>>>>>>>>postrotate.
>>>>>>>>>>
>>>>>>>>>> Pero si lo ejecuto con la opción -f, se realiza la rotación y
>>>>>>>>también me manda el mail.
>>>>>>>>>>
>>>>>>>>>> Es algo como si no detectara al ejecutar el logrotate que es
>>>>>>>>necesario rotar los ficheros.
>>>>>>>>>>
>>>>>>>>>> En el /etc/logrotate.conf tengo el include  de
>>/etc/logrotate.d
>>>>>>>>>>
>>>>>>>>>> ¿Le suena a alguien este tema o por dónde podría tirar?
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> Saludos,
>>>>>>>>>>
>>>>>>>>>> Ramses
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> Prueba a ejecutar con la opción -d (debug) a ver qué te dice.
>>>>>>>>>
>>>>>>>>> No se si es conveniente usar root, ¿no se ejecuta con usuario
>>>>>>>>asterix?
>>>>>>>>> En algunos casos es necesaria la opción copytruncate.
>>>>>>>>>
>>>>>>>>> S2.
>>>>>>>>
>>>>>>>>
>>>>>>>>Lo olvidaba,  revisa el fichero /var/lib/logratate/status
>>>>>>>>ahí veras los que se han ejecutado.
>>>>>>>>
>>>>>>>>S2.
>>>>>>>
>>>>>>> Debieran de ejecutarlo con el usuario "asterisk", pero lo están
>>>>>>ejecutando con "root", de todas firmas, no rota ningún fichero, ni
>>>>los
>>>>>>de ssh, ni apache, ni syslog, ni... El caso es que veo que hace un
>>>>>>tiempo sí rotaba bien.
>>>>>>>
>>>>>>> En el " status" aparecen los últimos que se rotaron, cuando dejo
>>de
>>>>>>funcionar, claro, y los que han rotado cuando uso la opción -f.
>>>>>>>
>>>>>>>
>>>>>>> Saludos,
>>>>>>>
>>>>>>> Ramses
>>>>>>>
>>>>>>
>>>>>>Pues entonces no será problema de logrotate, sino del cron. Revisa
>>>>que
>>>>>>esta funcionando.
>>>>>>
>>>>>>S2.
>>>>>
>>>>> También lo pensé, pero he metido el logrotate cada 5 minutos con
>la
>>>>opción -f y rota los ficheros sin problema, pero si le quito la
>>opción
>>>>-f, nada.
>>>>>
>>>>>
>>>>> Saludos,
>>>>>
>>>>> Ramses
>>>>>
>>>>
>>>>Me desconciertas...
>>>>A ver ¿has creado un cron normal (fuera de cron.daily) cada 5
>minutos
>>?
>>>>
>>>>Pero logrotate solo va a rotar un fichero en función de la
>>>>configuración (weekly, daily, hourly) cuando el log anterior cumpla
>>>>esa condición, tener más de una semana, día u hora. Salvo que lo
>>>>invoques con -f que lo hará incondicionalmente.
>>>>
>>>>lee detenidamente el man de logrotate.
>>>>
>>>>S2.
>>>
>>> Fernando, sí, pero a modo de prueba.
>>>
>>> El logrotate está en cron.daily.
>>>
>>> También, a modo de prueba, he borrado los ficheros de log y he
>puesto
>>el logrotate en cron.hourly, a ver si creaba los ficheros. Pero nada,
>>como no ponga la opción -f, no los crea.
>>>
>>>
>>> Saludos,
>>>
>>> Ramses
>>>
>>
>>
>>Lo que tienes que mirar es el fichero este:
>>/etc/logrotate.d/pruebas
>>si pone daily solo rotará si el fichero de log que exista tiene más de
>>un día, ahí tienes que poner hourly para probar, quitar el -f  y
>>esperar a que el fichero tenga más de una hora y se ejecute el cron.
>>(Para ver que funciona puedes ejecutarlo a mano en cuanto el fichero
>>de log tenga mas de una hora...)
>>
>>
>>yo probaría así:
>>Hacer una rotación con lorgrotate -f /etc/logrtotate.conf
>>quitar el -f
>>Esperar una hora y volver a ejecutar.
>>
>>Si funciona ya dejar que el cron siga su curso.
>>
>>S2.
>
>Fernando, me temo que el logrotate no tiene la opción "hourly" y hay
>que esperar todo un día para probar o cambiarle las fechas a los
>ficheros de log.
>
>
>Saludos,
>
>Ramses

Estoy yo pensando solo conmigo mismo.

¿Tendrá algo que ver con el formato de la fecha y hora con que se guardan los logs y el formato en el lis busca logrotate que se haya cambiado por cualquier motivo?

¿Se puede ver en el que espera encontrárselos logrotate?


Saludos,

Ramses


Reply to: