Re: Beobachten von log-Files
Andreas Kretschmer <andreas_kretschmer@despammed.com> wrote:
> Ulrich Fürst <fuerst.ulrich@vr-web.de> schrieb:
> > Danke, das isses!
Leider doch nicht!
> > 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...
>
Hilft leider auch nicht. Habe zur Zeit folgendes in der root-crontab:
# crontab -l | grep @reboot
@reboot tail --retry --follow=name /var/log/mail/procmail.log | \
egrep 'Folder| Subject:|Match' >> /var/log/mail/procmail.kurz.log
So jetzt wirds noch interessanter:
wie gesagt funktioniert folgendes nicht:
tail --retry --follow=name /var/log/mail/procmail.log | \
egrep "Folder| Subject:|: Match " >> /var/log/mail/procmail.kurz.log
tausche ich aber das tail gegen ein cat geht's (bloß halt nicht als
Weiterverfolgung):
cat /var/log/mail/procmail.log | \
egrep "Folder| Subject:|: Match " >> /var/log/mail/procmail.kurz.log
Sollte doch eigentlich kein Unterschied sein!?
Gerade noch ausprobiert:
Ebenfalls mit Erfolg geht
tail /var/log/mail/procmail.log | egrep "Folder| Subject:|Match" --\
>> /var/log/mail/procmail.kurz.log
Aber sobald ich das File verfolgen will schreibt er mir nichts mehr ins
log-File.
Ist das jetzt ein Fehler von bash oder von tail oder ....?
Ich habe jetzt mal versucht mit strace etwas heraus zu bekommen:
# strace -o strace.F.txt tail -F /var/log/mail/procmail.log | egrep \
"Folder| Subject:|Match" -- >> /var/log/mail/procmail.kurz.log
strace gibt so lange nichts kommt fortwährend folgendes aus:
| close(4) = 0
| clock_gettime(CLOCK_REALTIME, {1121955368, 78672000}) = 0
| nanosleep({1, 0},
Beim eintreffen von Mails:
| open("/var/log/mail/procmail.log", O_RDONLY|O_LARGEFILE) = 4
| fstat64(4, {st_mode=S_IFREG|0660, st_size=83732, ...}) = 0
| close(4) = 0
Da wird wohl das log neu geöffnet weil wieder was neues dazugekommen
ist?
Allerdins ist im Strace-output nichts von
/var/log/mail/procmail.kurz.log zu finden.
Weder eine positive Meldung noch ein Error
Allerdings ist im output von
strace -o strace.ohne_F.txt tail /var/log/mail/procmail.log | \
egrep "Folder| Subject:|Match" -- >> /var/log/mail/procmail.kurz.log
auch nichts von procmail.kurz.log zu finden und es wird trotzdem was
reingeschrieben.
So und wo (oder wie) kann ich jetzt weiter suchen?
Ulrich
execve("/usr/bin/tail", ["tail", "/var/log/mail/procmail.log"], [/* 39 vars */]) = 0
uname({sys="Linux", node="primus", ...}) = 0
brk(0) = 0x8052000
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40017000
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
open("/etc/ld.so.preload", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=48252, ...}) = 0
old_mmap(NULL, 48252, PROT_READ, MAP_PRIVATE, 3, 0) = 0x40018000
close(3) = 0
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
open("/lib/tls/libm.so.6", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\00005\0\000"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0644, st_size=134496, ...}) = 0
old_mmap(NULL, 136976, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x40024000
old_mmap(0x40045000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x20000) = 0x40045000
close(3) = 0
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
open("/lib/tls/librt.so.1", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\220\32"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0644, st_size=22940, ...}) = 0
old_mmap(NULL, 21588, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x40046000
old_mmap(0x4004b000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x5000) = 0x4004b000
close(3) = 0
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
open("/lib/tls/libc.so.6", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0`Z\1\000"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=1254468, ...}) = 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x4004c000
old_mmap(NULL, 1264780, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x4004d000
old_mmap(0x40177000, 36864, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0x129000) = 0x40177000
old_mmap(0x40180000, 7308, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x40180000
close(3) = 0
access("/etc/ld.so.nohwcap", F_OK) = -1 ENOENT (No such file or directory)
open("/lib/tls/libpthread.so.0", O_RDONLY) = 3
read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0pF\0\000"..., 512) = 512
fstat64(3, {st_mode=S_IFREG|0755, st_size=78233, ...}) = 0
old_mmap(NULL, 60772, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x40182000
old_mmap(0x4018e000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3, 0xc000) = 0x4018e000
old_mmap(0x4018f000, 7524, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x4018f000
close(3) = 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40191000
set_thread_area({entry_number:-1 -> 6, base_addr:0x40191080, limit:1048575, seg_32bit:1, contents:0, read_exec_only:0, limit_in_pages:1, seg_not_present:0, useable:1}) = 0
munmap(0x40018000, 48252) = 0
set_tid_address(0x401910c8) = 12113
rt_sigaction(SIGRTMIN, {0x401865d0, [], SA_SIGINFO}, NULL, 8) = 0
rt_sigprocmask(SIG_UNBLOCK, [RTMIN], NULL, 8) = 0
getrlimit(RLIMIT_STACK, {rlim_cur=8192*1024, rlim_max=RLIM_INFINITY}) = 0
brk(0) = 0x8052000
brk(0x8073000) = 0x8073000
brk(0) = 0x8073000
open("/usr/lib/locale/locale-archive", O_RDONLY|O_LARGEFILE) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=1837328, ...}) = 0
mmap2(NULL, 1837328, PROT_READ, MAP_PRIVATE, 3, 0) = 0x40192000
close(3) = 0
open("/var/log/mail/procmail.log", O_RDONLY|O_LARGEFILE) = 3
fstat64(3, {st_mode=S_IFREG|0660, st_size=89438, ...}) = 0
_llseek(3, 0, [0], SEEK_CUR) = 0
_llseek(3, 0, [89438], SEEK_END) = 0
_llseek(3, 81920, [81920], SEEK_SET) = 0
read(3, "tch on \"^Subject.*Ausencia / Abw"..., 7518) = 7518
fstat64(1, {st_mode=S_IFIFO|0600, st_size=0, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40353000
read(3, "", 0) = 0
close(3) = 0
write(1, "procmail: Match on \"^List-Id: <d"..., 459) = 459
close(1) = 0
munmap(0x40353000, 4096) = 0
exit_group(0) = ?
Reply to: