[Sysadmins] I: syslog-ng 3.20.1-alt4

Sergey a_s_y на sama.ru
Ср Мар 20 14:47:02 MSK 2019


Приветствую.

В Сизифе с неделю как появился syslog-ng 3.20.1. С точки зрения самого
syslog-ng всё примерно так же, как и раньше (и в Сизифе, и в p8 с
3.8.1-alt1), но вот в alt2-alt4 произошли некоторые изменения в плане
syslog-ng.conf и прочих конфигурационных файлов.

Для p8 этот syslog-ng лежит в задании 224120, попадёт ли в p8 - не знаю.

Далее суммарно, по alt4 включительно.

Изменения в syslog-ng.conf заключаются в добавлении '@include "scl*conf"'
в начало и переносе '@include "/etc/syslog-ng/conf.d/*.conf"' до описаний
log {}. Кроме того, убраны закомментированные части конфигурации. Что 
показалось интересным, перенесено в conf.d.example в %doc в виде отдельного
фрагмента (собственно, вариант настройки syslog-сервера). В конфигурации
по-умолчанию для пакета syslog-ng это ровным счётом ничего не меняет, однако
даёт возможность больше не лазить в syslog-ng.conf для добавления и/или
изменения чего-нибудь, о чём далее.

"*" в "scl*conf" использована с целью сделать scl.conf необязательным файлом,
он сейчас упакован в пакет syslog-ng-scl вместе с остальными плагинами Source
Configuration Library. Побочным эффектом получилось то, что в /etc/syslog-ng/
можно положить и какие-то свои sclXXXXconf, если вдруг захочется. Ранее
SCL-плагины паковались в основной пакет, но scl.conf был с неправильным
путём для их подключения и вовсе отсутствовал в syslog-ng.conf. На сайте
https://www.syslog-ng.com доступен 900 (ага) страничный pdf на тему, как всем
этим, включая SCL-плагины, пользоваться (кстати, может его упаковать? правда
там отстаёт, пока есть для 3.19). В конфигах в alt4 SCL-плагины не используются.

Перенос '@include "/etc/syslog-ng/conf.d/*.conf"' сделан для того, чтобы
можно было не допустить вывод в существующие по-умолчанию log {} каких-то
данных, перехватив их в собственных конфигурациях в conf.d/*.conf и
воспользовавшись флагом final (есть в примере 90-cyrus-imap.conf).
log {} - это единственное (кажется), что нельзя переопределить.

Добавлено несколько примеров в /usr/share/doc/syslog-ng-3.20.1/conf.d.example
Некоторые готовы к использованию в syslog-ng/conf.d как есть, некоторые надо
поправить под себя. 4 примера, думаю, следует прокомментировать дополнительно.

90-cyrus-imap.conf: примечателен использованием flags(final) для предотвращения
попадания сообщений от Cyrus-IMAP в /var/log/messages.

00-redefine-consoleall.conf: переопределяет destination consoleall, удобно
для контейнеров без /dev/tty12; в противном случае всё будет писаться
во внезапно появившийся файл, про который ещё и забыть можно. Здесь же
используется директива allow-config-dups, допускающая такое переопределение.
Так как изменение действует на дальнейший конфиг, директива используется
дважды.

90-openvpn.conf и 90-bind.conf: примеры использования dev/log из chroot.
В первом случае используется destination из тех, что по-умолчанию, причём
совпадающий с тем, куда сообщения попадают и при получении из через /dev/log,
так что на вариант с openvpn не распространяется ранее описанная в этой
рассылке проблема:
https://lists.altlinux.org/pipermail/sysadmins/2013-September/036379.html
https://lists.altlinux.org/pipermail/sysadmins/2019-March/038114.html

Собственно %changelog:

* Wed Mar 20 2019 Sergey Y. Afonin 3.20.1-alt4
- 00-redefine-consoleall.conf: use file("/dev/null") by default
- packaged syslog-ng-debun (as separated package)

* Tue Mar 19 2019 Sergey Y. Afonin 3.20.1-alt3
- updated examples for syslog-ng/conf.d
- syslog-ng.conf: included scl.conf, added comments
- packaged SCL as separated package, updated path in scl.conf

* Fri Mar 08 2019 Sergey Y. Afonin 3.20.1-alt2
- syslog-ng.conf: placed @include "/etc/syslog-ng/conf.d/*.conf"
  before all standard log statements
- added some examples for syslog-ng/conf.d to %%doc
- set _unpackaged_files_terminate_build to 1
- packed /usr/bin/persist-tool

* Tue Mar 05 2019 Sergey Y. Afonin 3.20.1-alt1
- 3.20.1

-- 
С уважением, Сергей.


Подробная информация о списке рассылки Sysadmins