Starting with syslog-ng OSE 3.2, syslog-ng became plugin based, which has some consequences that even experienced syslog-ng users may stumble into.
The most obvious one, is that syslog-ng now produces a series of .so files loaded at runtime, instead of being a monolithic executable. If a given .so is not not or not loaded, some of the functionality may be missing. This usually manifests itself by a syntax error when parsing the configuration file.
Second: if you compile syslog-ng from source, the unit/functional test programs also want to load plugins, and they try to do that from the install directory. This means that you first have to install syslog-ng using "make install" before running the testsuite. This is not an ideal solution, but should work for now.
Plugins are loaded from $prefix/lib/syslog-ng by default, however this can be changed using the `module-path` global, which contains the list of directories where syslog-ng should look for modules. You can change this using the syntax:
@define module-path `module-path`:/usr/local/lib/syslog-ng-plugins
I think that's it for now.
The most obvious one, is that syslog-ng now produces a series of .so files loaded at runtime, instead of being a monolithic executable. If a given .so is not not or not loaded, some of the functionality may be missing. This usually manifests itself by a syntax error when parsing the configuration file.
Second: if you compile syslog-ng from source, the unit/functional test programs also want to load plugins, and they try to do that from the install directory. This means that you first have to install syslog-ng using "make install" before running the testsuite. This is not an ideal solution, but should work for now.
Plugins are loaded from $prefix/lib/syslog-ng by default, however this can be changed using the `module-path` global, which contains the list of directories where syslog-ng should look for modules. You can change this using the syntax:
@define module-path `module-path`:/usr/local/lib/syslog-ng-plugins
I think that's it for now.
Comments
I am trying to compile under cygwin environment.
It compiles but when i try to start syslog-ng it shows me a list of errors:
Plugin module not found in 'module-path'; module-path='/usr/local/lib/syslog-ng'
, module='syslogformat'
Plugin module not found in 'module-path'; module-path='/usr/local/lib/syslog-ng'
, module='basicfuncs'
Plugin module not found in 'module-path'; module-path='/usr/local/lib/syslog-ng'
, module='afsocket'
Plugin module not found in 'module-path'; module-path='/usr/local/lib/syslog-ng'
, module='affile'
Plugin module not found in 'module-path'; module-path='/usr/local/lib/syslog-ng'
, module='afprog'
Plugin module not found in 'module-path'; module-path='/usr/local/lib/syslog-ng'
, module='afuser'
Plugin module not found in 'module-path'; module-path='/usr/local/lib/syslog-ng'
, module='dbparser'
Plugin module not found in 'module-path'; module-path='/usr/local/lib/syslog-ng'
, module='csvparser'
Plugin module not found in 'module-path'; module-path='/usr/local/lib/syslog-ng'
, module='syslogformat'
Plugin module not found in 'module-path'; module-path='/usr/local/lib/syslog-ng'
, module='basicfuncs'
Plugin module not found in 'module-path'; module-path='/usr/local/lib/syslog-ng'
, module='afsocket'
Plugin module not found in 'module-path'; module-path='/usr/local/lib/syslog-ng'
, module='affile'
Plugin module not found in 'module-path'; module-path='/usr/local/lib/syslog-ng'
, module='afprog'
Plugin module not found in 'module-path'; module-path='/usr/local/lib/syslog-ng'
, module='afuser'
Plugin module not found in 'module-path'; module-path='/usr/local/lib/syslog-ng'
, module='dbparser'
Plugin module not found in 'module-path'; module-path='/usr/local/lib/syslog-ng'
, module='csvparser'
Plugin module not found in 'module-path'; module-path='/usr/local/lib/syslog-ng'
, module='confgen'
Plugin module not found in 'module-path'; module-path='/usr/local/lib/syslog-ng'
, module='confgen'
Do you know something about it?.
Regards
I think there's a binary package for cygwin, have you tried using that?