Я использую Ubuntu и Postgresql 9.
Я включил postgresql для входа в системный журнал и добавил в файл конфигурации следующую директиву:
syslog_facility = 'local0'".
Я попытался настроить системный журнал для записи их в отдельный файл, но это поле. Я обновил /etc/syslog.conf, чтобы он содержал (см. Последнюю строку для директивы postgresql)
auth,authpriv.* /var/log/auth.log
*.*;auth,authpriv.none -/var/log/syslog
daemon.* -/var/log/daemon.log
kern.* -/var/log/kern.log
lpr.* -/var/log/lpr.log
mail.* -/var/log/mail.log
user.* -/var/log/user.log
mail.info -/var/log/mail.info
mail.warn -/var/log/mail.warn
mail.err /var/log/mail.err
news.crit /var/log/news/news.crit
news.err /var/log/news/news.err
news.notice -/var/log/news/news.notice
*.=debug;\
auth,authpriv.none;\
news.none;mail.none -/var/log/debug
*.=info;*.=notice;*.=warn;\
auth,authpriv.none;\
cron,daemon.none;\
mail,news.none -/var/log/messages
*.emerg *
daemon.*;mail.*;\
news.err;\
*.=debug;*.=info;\
*.=notice;*.=warn |/dev/xconsole
local0.* -/var/log/pgsql
Я перезапустил системный журнал с помощью «/etc/init.d/sysklogd restart» и «перезапустить rsyslog».
Когда postgresql перезагружается, сообщения добавляются в / var / log / messages и / var / log / syslog ... а не в нужный файл, поскольку я настроил syslog для использования ...
То же самое отлично работает на другой машине Debian с той же версией Postgresql ...
Любые идеи?
Мне кажется, что у вас есть опечатка в postgresql.conf
файл. Убедитесь, что вы действительно используете
syslog_facility = 'local0'
Кроме того, старый syslogd требовал, чтобы в вашем файле конфигурации использовались жесткие вкладки вместо пробелов, поэтому убедитесь, что вы на самом деле не используете пробелы или что ваш редактор не конвертирует вкладки в пробелы (например, опция expandtab в vim) .
Вы также упомянули старые syslogd и rsyslog, поэтому проверьте, какой именно вы используете. Конфигурационный файл Rsyslog был разработан для обратной совместимости с syslogd, но делает используйте другой файл. Поэтому, если вы используете rsylog, добавьте свою строку журнала в /etc/rsyslog.conf
вместо.
Чтобы эти сообщения не появлялись в /var/log/messages
вам необходимо явно отфильтровать это средство. Для этого измените конфигурацию сообщений на это:
*.=info;*.=notice;*.=warn;\
auth,authpriv.none;\
cron,daemon.none;\
mail,news.none;\
local0.none -/var/log/messages
Это означает: «Не записывайте в этот файл какие-либо уровни серьезности из средства local0». Или, по сути, исключить что-нибудь local0.*
.