Журнал документация говорит LogFile
команда может обрабатывать абсолютные пути. Соответственно, у меня есть файл celery.conf в / etc / logwatch / conf / services следующим образом:
Title = "Watchdog Celery worker errors"
LogFile = /var/log/208-celery.log
LogFile = /var/log/234-celery.log
LogFile = /var/log/403-celery.log
LogFile = /var/log/dev-celery.log
(Намерение состоит в том, чтобы четыре указанных файла журнала были объединены в одну группу для logwatch.)
Я получаю такую ошибку:
*** Error: There is no logfile defined. Do you have a /etc/logwatch/conf/logfiles//var/log/208-celery.log.conf file ?
*** Error: There is no logfile defined. Do you have a /etc/logwatch/conf/logfiles//var/log/234-celery.log.conf file ?
*** Error: There is no logfile defined. Do you have a /etc/logwatch/conf/logfiles//var/log/403-celery.log.conf file ?
*** Error: There is no logfile defined. Do you have a /etc/logwatch/conf/logfiles//var/log/dev-celery.log.conf file ?
Can't open: /usr/share/logwatch/scripts/services/celery at /usr/sbin/logwatch line 1329.
Похоже, что logwatch не интерпретирует LogFile
по какой-то причине команды как абсолютные пути. Я подтвердил, что эти файлы журналов определенно существуют по этим путям. Что касается ошибки «Не удается открыть ...» - я предполагаю, что logwatch ищет конфигурацию по умолчанию из-за отсутствия рабочих команд LogFile.
Итак: как мне заставить logwatch правильно просматривать эти конкретные файлы журналов?
ПРИМЕЧАНИЕ. Я использую logwatch v7.4.0, работающий в Ubuntu 12.04.4 LTS.
В LogFile
записи в файлах конфигурации в services
обратитесь к группам файлов журнала, которые определены в соответствующем файле конфигурации в разделе logfiles
. См. Раздел A документа, на который вы ссылаетесь, для получения информации о настройке группы файлов журнала ...
# Это будет файл журнала с именем 'messages' в каталоге # файлов журнала по умолчанию (вероятно, / var / log). LogFile = сообщения
# Вы также можете указать эту команду с абсолютным путем, например: LogFile = / var / log / messages
И раздел B для ссылки на эти группы в файле конфигурации под services
...
Для служебного фильтра, которому нужны сообщения из / var / log / messages, вы должны добавить эту строку:
LogFile = сообщения
ПРИМЕЧАНИЕ. Это не потому что имя файла журнала - «сообщения», но это потому, что имя группы файлов журнала, которая была определена, - «сообщения».
Ошибка /usr/share/logwatch/scripts/services/celery
происходит потому, что вы не создали исполняемый файл служебного фильтра, как описано в разделе C документа. Вы должны создать это (используя пример скрипта) под /etc/logwatch/scripts/services
убедившись, что он исполняемый. Я только что пробовал это (logwatch 7.4.0 на CentOS 7.2, и он работает должным образом.