Re: Beobachten von log-Files
Andreas Kretschmer <andreas_kretschmer@despammed.com> wrote:
> Ulrich Fürst <fuerst.ulrich@vr-web.de> schrieb:
> > Danke, das isses!
> > Genau zu dem Zeitpunkt wurde procmail.log rotiert.
> >
> > Dann müsste ich das ganze beheben können in dem ich
> > tail -F
> > statt
> > tail -f
>
> --follow=name wäre wohl besser...
Hab's jetzt noch mal gelesen (man und info-page)
"-F" bedeutet das gleiche wie "--retry --follow=name"
Der Fehler liegt also eher woanders.
Also ein Verfolgen mit
# # tail --retry --follow=name /var/log/mail/procmail.log | \
egrep "Folder| Subject:|Match"
tut was es soll.
Ebenso
# /bin/bash -c 'tail --retry --follow=name \
/var/log/mail/procmail.log | egrep "Folder| Subject:|Match"'
Weil cron ruft das offensichtlich mit "/bin/bash -c" auf. Da hat bei
meiner ersten Verbesserung wohl das richtige quoting gefehlt.
Sobald ich aber das ganze in ein File umleiten will:
# tail --retry --follow=name /var/log/mail/procmail.log | \
egrep "Folder| Subject:|Match" >> /var/log/mail/procmail.kurz.log
produziert der gleiche Ausdruck keinen Output mehr; oder zumindest
schreibt er nicht in das entsprechende File.
Das ganze läuft als root und
$ ls -l /var/log/mail/procmail.kurz.log
-rw-rw-r-- 1 root mail [...] /var/log/mail/procmail.kurz.log
Platz ist auf der Entsprechenden Partition genügend (2,2 GB).
So und jetzt ist was ganz komisches passiert:
Beim herumexperimentieren hab ich statt ">>" nur ">" eingegeben Und
plötzlich erschienen die letzten 29 Mails im Logfiel (obwohl zu dieser
Zeit keine neuen Mails eintrafen)?!?!
Der eingegebene Befehl lautete:
# tail --retry --follow=name /var/log/mail/procmail.log | \
egrep "Folder| Subject:|Match" 2>& 1> /var/log/mail/procmail.kurz.log
Kann mir *das* jemand erklären?
Ulrich
P.S. das der Befehl eigentlich ziemlich Zweckfrei ist (das "2>& 1>"
meine ich) ist mir schon klar. Also bitte nicht fragen warum ich das
so eingegeben habe.
Reply to: