Назад | Перейти на главную страницу

глобальная конфигурация rsyslog с помощью RainerScript как?

Прямо сейчас у меня это в моем rsyslog.conf файл.

/* GLOBAL DIRECTIVES */

# Global umask for all actions
$umask 0022

# Set the default permissions for all log files.
module(load="buildin:omfile"
        # To enable high precision timestamps, use the following line:
        # template="RSYSLOG_FileFormat"
        template="RSYSLOG_TraditionalFileFormat"
        # Set the default permissions for all log files.
        dirCreateMode="0700"
        dirOwner="syslog"
        dirGroup="adm"
        fileCreateMode="0640"
        fileOwner="syslog"
        fileGroup="adm"
)

$PrivDropToUser syslog
$PrivDropToGroup syslog

global(workDirectory="/var/spool/rsyslog")

/* INCLUDED FILES */

# Include all config files in /etc/rsyslog.d/
$IncludeConfig /etc/rsyslog.d/*.conf

Похоже, это "последний" стабильный способ настройки rsyslog согласно v8-стабильная документация

Но здесь все еще используются директивы старого типа, например $IncludeConfig не должно быть global(includeConfig="/etc/rsyslog.d/*") ?

И в целом моя конфигурация не должна выглядеть так?

global(unmask=0022
       privDropToUser="syslog"
       privDropToGroup="syslog"
       workDirectory="/var/spool/rsyslog"
       includeConfig="/etc/rsyslog.d/*")

# Set the default permissions for all log files.
module(load="buildin:omfile"
        # To enable high precision timestamps, use the following line:
        # template="RSYSLOG_FileFormat"
        template="RSYSLOG_TraditionalFileFormat"
        # Set the default permissions for all log files.
        dirCreateMode="0700"
        dirOwner="syslog"
        dirGroup="adm"
        fileCreateMode="0640"
        fileOwner="syslog"
        fileGroup="adm"
)

мы будем очень признательны за любые дополнительные материалы для чтения, специально предназначенные для RainerScript. Пока искал, нашел эти ресурсы (кроме документов):

Прежде всего, есть нет Трудно преобразовать все старые стили - некоторые из них по-прежнему остаются лучшим способом делать простые вещи. Посмотри на форматы конфигурации rsyslog чтобы понять эту часть.

Основная идея, по которой мы ввели новый формат, заключалась в том, чтобы сделать сложность управляемой. Устаревший устаревший формат чрезвычайно усложнял правильную настройку, даже для меня как автора rsyslog.

Тем не менее, $IncludeConfig до недавнего времени не привлекали внимания просто потому, что не было реальной выгоды в предоставлении альтернативы новому стилю (а у нас есть много вещей в списке TODO ...). Начиная с версии 8.33.0, включение может выполняться через include () объект - это не глобальная настройка, поэтому у нее есть собственный объект.

Альтернатива нового стиля для PrivDropTo... еще не был добавлен по той же причине: очень небольшая польза от его предоставления (чисто косметическая, поскольку с ним не связано никаких сложностей), и пока нет времени для этого. Мы все еще работаем над предоставлением альтернатив для этих типов устаревших операторов, если позволяет время: так что они, вероятно, появятся когда-нибудь в будущем. Но опять же, нет ничего плохого в том, чтобы продолжать им пользоваться.

Если говорить как о разработчике, все операторы конфигурации работают с общим набором объектов конфигурации. Rsyslog действительно не волнует, как был создан объект.

Основная политика проекта rsyslog - никогда не нарушать существующую конфигурацию без крайней необходимости: чтобы вы могли быть уверены, что то, что работало много лет назад, все еще работает. Тем не менее, использование устаревшего устаревшего формата для новых конфигураций вызывает проблемы, поскольку, как мы знаем, это, как известно, сложно и подвержено ошибкам. Это была единственная причина для введения нового стиля ;-)