Michael Eriksen wrote:
> Jeg kører en række overvågningsprogrammer på min apache webserver, og det
> fungerer fint. Problemet er bare at disse drukner access.log med ca. 1 MB
> i timen og det er utåleligt. Jeg har lavet dette lille brutale script til
> at rydde op:
>
> #!/bin/bash
> grep -v monitor/ /var/log/apache/access.log > /var/log/apache/tmp
> grep -v bb/ /var/log/apache/tmp > /var/log/apache/tmp2
> mv /var/log/apache/tmp2 /var/log/apache/access.log
> rm -f /var/log/apache/tmp
> /etc/init.d/apache restart
>
> Sidste linie er nødvendig for at få genoptaget logningen - sikkert fordi
> jeg volder apaches lock på access.log.
>
> Dette fungerer fint, når jeg som root kører scriptet. Men installerer jeg
> det i roots crontab, bliver apache IKKE genstartet og logningen stopper.
>
> Hvorfor? Og/eller kan dette gøre mere elegant?
Får root ikke en mail fra cron, hvor du kan se, hvad der går galt?
Det er heller ikke pænt at pille i logfilerne imens apache kører,
du kan risikere at miste nogle entries på den måde.
Kan du ikke sætte logrotate til at køre dagligt, og så fjerne
monitor/bb linierne fra de gamle logfiler?
Mogens
--
Mogens Kjær, Dataarkæolog
Email: mk@datamuseum.dk
Homepage:
http://www.datamuseum.dk