Я работаю над внедрением операционной системы syslog-ng в своей среде. В конце концов, я хотел бы настроить центральный сервер регистрации, но, чтобы немного размочить, я начинаю с простой конфигурации. Я создал конфигурацию, содержащую один источник, одно место назначения и один журнал. Когда я выполняю syslog-ng -F
(как процесс переднего плана через cli) Я получаю ожидаемые результаты (все системные сообщения регистрируются в / var / log / messages). Однако, если я запускаю его как демон (через systemctl), я не получаю все ожидаемые системные сообщения. Странно то, что я все еще получаю сообщения от ядра. Вот моя простая конфигурация:
@version:3.5
@include "scl.conf"
source s_sys { system(); internal(); };
destination d_mesg { file("/var/log/messages"); };
log { source(s_sys); destination(d_mesg); };
Как видите, у меня не установлено никаких фильтров. Я подтвердил, что служба работает через systemctl status syslog-ng
и это. Я убедился, остановил и удалил всех остальных демонов ведения журнала.
syslog-ng.service - System Logger Daemon
Loaded: loaded (/usr/lib/systemd/system/syslog-ng.service; enabled; vendor preset: enabled)
Active: active (running) since Sun 2016-02-28 17:15:07 EST; 21min ago
Docs: man:syslog-ng(8)
Main PID: 3416 (syslog-ng)
CGroup: /system.slice/syslog-ng.service
└─3416 /usr/sbin/syslog-ng -F -p /var/run/syslogd.pid
Моя ОС - CentOS 7.2. Любая помощь будет принята с благодарностью.
Другое возможное решение - обновить syslog-ng до более поздней версии. Начиная с syslog-ng 3.7, он может читать журнал systemd напрямую.
NevDull, спасибо за ваш вклад. Это помогло мне решить следующую проблему, похожую на эту:
syslog-ng не может перехватить сообщения, выданные командой logger при работе под управлением systemctl. Но он работает так, как ожидалось, когда вы проходите через терминал, следующим образом:
systemctl stop syslog-nd
syslog-ng -Fevd
logger -p mail.info "I'm testing..." [need to open a new terminal session]
cat /var/log/maillog
В результате вы можете увидеть свое сообщение «Я тестирую ...» в файле / var / log / maillog.
Отредактировав файл "/etc/systemd/journald.conf", как вы рекомендовали, проблема была решена.
Спасибо, что поделился