URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 93825
[ Назад ]

Исходное сообщение
"logrotate"

Отправлено Slimm , 21-Сен-12 13:42 
Собираю логи с удаленных хостов с помощью rsyslog и укладываю их по шаблону:
/var/log/hosts/%FROMHOST%/%$YEAR%/%$MONTH%/syslog.log

Настроил logrotate

/var/log/hosts/*/*/*/syslog.log
{
daily
rotate 32
compress
compresscmd /usr/bin/bzip2
compressext .bz2
delaycompress
missingok
nocreate
notifempty
postrotate
    /usr/local/etc/rc.d/rsyslogd restart >/dev/null 2>&1
endscript
}

какое-то время работало все отлично, а сейчас не видит каталогов входящих в шаблон

rotating pattern: /var/log/hosts/*/*/*/syslog.log
forced from command line (32 rotations)
empty log files are not rotated, old logs are removed

если например конкретизировать путь, то срабатывает

rotating pattern: /var/log/hosts/*/2012/*/syslog.log
forced from command line (1 rotations)
empty log files are not rotated, old logs are removed
considering log /var/log/hosts/10.10.10.10/syslog.log
  log needs rotating


Содержание

Сообщения в этом обсуждении
"logrotate"
Отправлено ДорогойДрук , 22-Сен-12 00:57 
А почему именно 3 звезды используется?

почему не /var/log/hosts/*/syslog.log  ?


"logrotate"
Отправлено Slimm , 24-Сен-12 10:14 
> А почему именно 3 звезды используется?
> почему не /var/log/hosts/*/syslog.log  ?

Изначально я так и сделал, но оно не заработало, подобная же ошибка была,
а с */*/* завелось и месяц работало, и вот я решил добавить другие журналы на обработку у них кстати тоже шаблонный путь, они заработали, а 3 звезды перестали работать, откатывался к начальному виду конфига все равно не раскрывает путь

проверил еще раз - с одной звездой не работает


"logrotate"
Отправлено tux2002 , 24-Сен-12 11:21 
rotating pattern: /var/log/hosts/*/*/*/syslog.log
forced from command line (32 rotations)
Значит 32 файла было найдено по шаблону
empty log files are not rotated, old logs are removed
Скорее всего не смог доч=ступиться до этих файлов из-за разрешений на них
Проверяйте под кем запускается logrotate и какие разрешения на /var/log/hosts/*/*/*/syslog.log и на сами каталоги /var/log/hosts/*/*/*/



"logrotate"
Отправлено Slimm , 25-Сен-12 14:05 
> rotating pattern: /var/log/hosts/*/*/*/syslog.log
> forced from command line (32 rotations)
> Значит 32 файла было найдено по шаблону

Тут Вы не правы, 32 это заданное количество архивных файлов

> empty log files are not rotated, old logs are removed
> Скорее всего не смог доч=ступиться до этих файлов из-за разрешений на них
> Проверяйте под кем запускается logrotate и какие разрешения на /var/log/hosts/*/*/*/syslog.log
> и на сами каталоги /var/log/hosts/*/*/*/

Допустим, а почему тогда при более конкретном пути все работает:
/var/log/hosts/*/2012/*/ если указать путь так, то работает

Кстати а других инструментов нет для ротации логов? Хорошоб чтоб можно было имя файла менять и укладывать по заданому пути, хотя наверно проще свой скрипт написать


"logrotate"
Отправлено tux2002 , 25-Сен-12 18:07 
да что-то я набрехал тут.

Покажи вывод


#logrotate -v <твой конфиг с этим шаблоном>


"logrotate"
Отправлено tux2002 , 25-Сен-12 18:13 
удалил

"logrotate"
Отправлено Slimm , 26-Сен-12 09:24 
logrotate -v /usr/local/etc/logrotate.conf
reading config file /usr/local/etc/logrotate.conf
including /usr/local/etc/logrotate.d
reading config file hostslog
reading config info for /var/log/hosts/*/*/*/syslog.log

compress_prog is now /usr/bin/bzip2
compress_ext is now .bz2
reading config file curhostslog
reading config info for /var/log/hosts/*/cur.log


Handling 2 logs

rotating pattern: /var/log/hosts/*/*/*/syslog.log
after 1 days (32 rotations)
empty log files are not rotated, old logs are removed

rotating pattern: /var/log/hosts/*/cur.log
after 1 days (1 rotations)
empty log files are not rotated, old logs are removed
considering log /var/log/hosts/10.50.3.132/cur.log
  log does not need rotating
considering log /var/log/hosts/10.50.3.164/cur.log
  log does not need rotating
considering log /var/log/hosts/10.50.3.50/cur.log
  log does not need rotating
considering log /var/log/hosts/10.50.3.52/cur.log
  log does not need rotating
considering log /var/log/hosts/10.50.5.1/cur.log
  log does not need rotating
considering log /var/log/hosts/10.62.0.33/cur.log
  log does not need rotating
not running postrotate script, since no logs were rotated
not running postrotate script, since no logs were rotated
not running postrotate script, since no logs were rotated
not running postrotate script, since no logs were rotated
not running postrotate script, since no logs were rotated
not running postrotate script, since no logs were rotated