Changelog for 7.6.0 (v7-stable)

Version 7.6.0 [v7.6-stable] 2014-01-??
This starts a new stable branch based on 7.5.8 plus the following changes:

  • bugfix: imuxsock input parameters were not accepted due to copy&paste error.
    Thanks to Andy Goldstein for the fix.
  • added ProcessInternalMessages global system parameter
    This permits to inject rsyslog status messages into *another* main syslogd or the journal.
  • new dependency: liblogging-stdlog (for submitting to external logger)
  • bugfix: json templates are improperly created
    Strings miss the terminating NUL character, which obviously can lead to all sorts of problems.
    See also: https://github.com/rsyslog/rsyslog/issues/27
    Thanks to Alain for the analysis and the patch.
  • ompgsql bugfix: improper handling of auto-backgrounding mode
    If rsyslog was set to auto-background itself (default code behaviour, but many distros now turn it off for good reason), ompgsql could not properly connect. This could even lead to a segfault. The core reason was that a PG session handle was kept open over a fork, something that is explicitely forbidden in the PG API.
    Thanks to Alain for the analysis and the patch.

Changelog for 7.4.10 (v7-stable)

Version 7.4.10 [v7.4-stable] 2014-02-12

  • bugfix: json templates are improperly created
    Strings miss the terminating NUL character, which obviously can lead to all sorts of problems.
    See also: https://github.com/rsyslog/rsyslog/issues/27
    Thanks to Alain for the analysis and the patch.
  • ompgsql bugfix: improper handling of auto-backgrounding mode
    If rsyslog was set to auto-background itself (default code behaviour, but many distros now turn it off for good reason), ompgsql could not properly connect. This could even lead to a segfault. The core reason was that a PG session handle was kept open over a fork, something that is explicitely forbidden in the PG API.
    Thanks to Alain for the analysis and the patch.

LibLogging 1.0.1 released

liblogging 1.0.1 [download]

This version primarily clarifies the licensing and fixes some packaging issues. Otherwise, it is identical to 1.0.0.

Changelog:
v1.0.1 2014-02-10
– rfc3195 component now 2-clause BSD licensed
  This means the complete liblogging is now under 2-clause BSD
– new component names:
  * liblogging-stdlog
  * liblogging-rfc3195
  made some necessary name adjustments
  See also: https://github.com/rsyslog/liblogging/issues/2

sha256sum: 99d09101cc3c22e2388fe2a817bb1c6f5fe2275623aadb94a49d1c2259102bfa

How to use a parser module

A recent occurence initiated this small article. The question was about how to use a specific parser module.

First off, most parser modules, except those that are built-in, are only available in the git repository and the tarball releases. They cannot be used with RPMs and packages.

The specific parser module I want to use now is pmaixforwardedfrom and was contributed by David Lang. The module parses a message from AIX and strips the string “Message forwarded from ” from the message, because else the message cannot be parsed properly. So the original message that looks like this

Jan 25 23:09:48 Message forwarded from hostname: syslog: /usr/sbin/ifconfig -a

looks like this afterwards

Jan 25 23:09:48 hostname syslog: /usr/sbin/ifconfig -a

The problem is, that AIX adds this string by default, but ultimately this corrupts the hostname from the default format. A configuration to tackle the problem will look like this:

module(load=" imuxsock")
module(load="imtcp")
$modload pmaixforwardedfrom

$ruleset stripaix
$rulesetcreatemainqueue on
$rulesetparser rsyslog.aixforwardedfrom
$rulesetparser rsyslog.rfc5424
$rulesetparser rsyslog.rfc3164
*.* /var/log/aixlog

$ruleset RSYSLOG_DefaultRuleset

input(type="imtcp"
        port="514"
        ruleset="stripaix"
)

Please note, that we need to mix up config styles in this case. The new RainerScript config style cannot be applied for the entire configuration here.

Basically, we need a ruleset and bind a listener to the ruleset. The listener can be configured with RainerScript. The ruleset needs legacy parameters. In this ruleset, we first configure the additional parser, followed by the default parsers. As a final step, we write everything to a file.

It is strongly suggested to have a specific listener and ruleset for AIX log mesages.

More information about parser modules can be found here:
Doc – Rulesetparser
Doc – Messageparser

Scroll to top