← Back to team overview

sslug-teknik team mailing list archive

Re: Stort CPU-forbrug af logrotate.

 

Tomas Pedersen wrote:

> On Mon, 16 Feb 2004 16:02:57 +0100, Mogens Kjaer wrote:
>
> > Tomas Pedersen wrote:
> > ...
> >> Der er over 150000 filer i det hele. Der er nok en sammenhæng.
> >> Jeg ville slette filerne med "rm vgetty.log.ttyS0*", men bash beklager sig: argument list too long.
> >
> > For at slette disse filer:
> >
> > cd /var/log
> > find . -name vgetty.log.ttyS0.\* | xargs rm -f
> Jeg fik slettet filerne og det tog en god halv time.
>
> > Men hvorfor der er så mange af dem, det er et godt
> > spørgsmål...
> Og ikke mindst: Hvem har lavet dem?
>
> Efter at have slettet filerne startede jeg logrotate, men den genererede
> ikke nye filer på de par minutter jeg lod den køre. Det kan dårligt være
> vgetty, for jeg kan ikke finde noget sted den bliver startet, hverken i
> inittab, /etc/rc* eller /etc/cron*.
>
> Efter filerne var slettet åd logrotate stadig meget cpu. Jeg ledte lidt og
> fandt /var/lib/logrotate.status som fyldte omkring 5MB og indeholdt en
> mængde filnavne, /var/log/vgetty.log.ttyS01......., samme stil dem jeg slettede.
> Den fil slettede jeg og nu afslutter logrotate på under et sekund.
>
> Problemet er tilsyneladende løst, men jeg vil stadig gerne vide hvordan
> det opstod.
>
> Tomas

Jeg får en fæl mistanke her, baseret på de oplysninger du har givet :

Min(e) /var/lib/logrotate.status indeholder en linie for hver log-fil der roteres, med angivelse af
filnavn og dato for sidste rotation:
"/sti/til/log-fil" 2004-02-15
Log-filerne får så automatisk påhæftet endelsen .1 - .2 - .3 op til .n hvor n er det antal rotationer der
er angivet i /etc/logrotate.conf - default n=4.
Dvs efter 4 rotationer har du
  log-fil
  log-fil.1
  log-fil.2
  log-fil.3
  log-fil.4
Hvis hver af disse ved en fejl _også_  roteres får du
 log-fil.1.1
 ...
 log-fil.2.1
 ...
Og så videre - eksponentiel vækst af antal logfiler... not a Good Thing [tm]

Kan du se mønstret ?

Men hvorfor har logrotate så gjort det med dine vgetty.log ? Prøv at studere
  /etc/logrotate.conf  og
  /etc/logrotate.d/vgetty hvis du har en sådan (jeg har ikke, da vgetty ikke er installeret).

Systemet er enkelt i virkemåde - så du kan forhåbentlig gennemskue en evt. fejl (har du ændret noget
indenfor de sidste måneder ? (med ugentlig rotate og eksp. vækst er det nok horizonten :-)
Du må hellere finde fejlen - den kommer nok igen så snart der kommer en vgetty.log !

Best regards
Preben
--
Solis Sacerdotibus - Preben Bille Brahe
http://www.pbb.dk    mailto:pbb@xxxxxx

"I'm not out to destroy Microsoft. That will just be a completely unintentional side effect."
-- Linus Torvalds




Follow ups

References