[syslog-ng] RFC: An option to not warn when a module's not found.

Gergely Nagy algernon at balabit.hu
Tue Oct 4 11:42:09 CEST 2011


Hi!

Recently I stumbled upon an issue while packaging syslog-ng 3.3 modules
for Debian: for convenience's sake, whenever a module package gets
installed, it places a config file in /etc/syslog-ng/conf.d/, and all
files from that directory are included into the main configuration.

This makes it possible that one does not have to add explicit @module
options to his config when he wants to use a module he installed: it's
already there.

This works well, and there's no problem here. Except that when one
removes a module package, Debian leaves the config file on the
system. They get removed only when the package is purged. This is
understandable, and there's good reasons behind the distinction between
remove and purge.

However, this results in syslog-ng trying to load a removed module
whenever it starts up or is reloaded, which emits a warning, which will
result in a mail from cron after logrotates, among other things.

So I'd like to introduce a command-line option that would result in
these warnings NOT getting printed. So if a module is not found, even if
it was explicitly loaded, with the command-line option set, syslog-ng
wouldn't print a warning. This would mean I can use this flag in the
init script and in the logrotate config aswell: if the module is loaded,
but not used, there's no harm in ignoring its inexistence. If it would
be used, syslog-ng will throw an error later anyway.

I'll prepare a patch that adds this sometime this week, but I wanted to
give a heads up, and ask for opinions too. If there's anyone who sees a
problem with this approach, or has a better idea, please let me know!

-- 
|8]



More information about the syslog-ng mailing list