Author : adisconteam

ChangeLog for 4.5.0 (devel)

Version 4.5.0 [DEVEL] (rgerhards), 2009-07-02

  • activation order of inputs changed, they are now activated only after privileges are dropped. Thanks to Michael Terry for the patch.
  • greatly improved performance
  • greatly reduced memory requirements of msg object to around half of the previous demand. This means that more messages can be stored in core! Due to fewer cache misses, this also means some performance improvement.
  • improved config error messages: now contain a copy of the config line that (most likely) caused the error
  • reduced max value for $DynaFileCacheSize to 1,000 (the former maximum of 10,000 really made no sense, even 1,000 is very high, but we like to keep the user in control ;)).
  • added capability to fsync() queue disk files for enhanced reliability (also add’s speed, because you do no longer need to run the whole file system in sync mode)
  • more strict parsing of the hostname in rfc3164 mode, hopefully removes false positives (but may cause some trouble with hostname parsing). For details, see this bug tracker: http://bugzilla.adiscon.com/show_bug.cgi?id=126
  • added configuration commands (see doc for explanations)
    * $OMFileZipLevel
    * $OMFileIOBufferSize
    * $OMFileFlushOnTXEnd
    * $MainMsgQueueSyncQueueFiles
    * $ActionQueueSyncQueueFiles

  • done some memory accesses explicitely atomic
  • bugfix: subtle (and usually irrelevant) issue in timout processing timeout could be one second too early if nanoseconds wrapped
  • set a more sensible timeout for shutdow, now 1.5 seconds to complete processing (this also removes those cases where the shutdown message was not written because the termination happened before it)
  • internal bugfix: object pointer was only reset to NULL when an object was actually destructed. This most likely had no effect to existing code, but it may also have caused trouble in remote cases. Similarly, the fix may also cause trouble…

ChangeLog for 3.22.1 (v3-stable)

Version 3.22.1 [v3-stable] (rgerhards), 2009-07-02

  • bugfix: invalid error message issued if $inlcudeConfig was on an empty set of files (e.g. *.conf, where none such files existed) thanks to Michael Biebl for reporting this bug
  • bugfix: when run in foreground (but not in debug mode), a debug message (“DoDie called”) was emitted at shutdown. Removed. thanks to Michael Biebl for reporting this bug
  • bugfix: some garbagge was emitted to stderr on shutdown. This garbage consisted of file names, which were written during startup (key point: not a pointer error) thanks to Michael Biebl for reporting this bug
  • bugfix: startup and shutdown message were emitted to stdout thanks to Michael Biebl for reporting this bug
  • bugfix: error messages were not emitted to stderr in forked mode
    (stderr and stdo are now kept open across forks)

  • bugfix: internal messages were emitted to whatever file had fd2 when rsyslogd ran in forked mode (as usual!) Thanks to varmojfekoj for the patch
  • small enhancement: config validation run now exits with code 1 if an error is detected. This change is considered important but small enough to apply it directly to the stable version. [But it is a border case, the change requires more code than I had hoped. Thus I have NOT tried to actually catch all cases, this is left for the current devel releases, if necessary]
  • bugfix: light and full delay watermarks had invalid values, badly affecting performance for delayable inputs
  • bugfix: potential segfault issue when multiple $UDPServerRun directives are specified. Thanks to Michael Biebl for helping to debug this one.
  • relaxed GnuTLS version requirement to 1.4.0 after confirmation from the field that this version is sufficient
  • bugfix: parser did not properly handle empty structured data
  • bugfix: invalid mutex release in msg.c (detected under thread debugger, seems not to have any impact on actual deployments)

ChangeLog for 4.3.2 (beta)

Version 4.3.2 [beta] (rgerhards), 2009-06-24

  • removed long-obsoleted property UxTradMsg
  • added a generic network stream server (in addition to rather specific syslog tcp server)
  • added ability for the UDP output action to rebind its send socket after sending n messages. New config directive $ActionSendUDPRebindInterval added for the purpose. By default, rebinding is disabled. This is considered useful for load balancers.
  • bugfix: imdiag/imtcp had a race condition
  • improved testbench (now much better code design and reuse)
  • added config switch –enable-testbench=no to turn off testbench

ChangeLog for 4.2.0 (v4-stable)

Version 4.2.0 [v4-stable] (rgerhards), 2009-06-23

  • bugfix: light and full delay watermarks had invalid values, badly affecting performance for delayable inputs
  • bugfix: compile problems in im3195
  • imported all patches from 3.22.1 as of today (see below):
    • bugfix: invalid error message issued if $inlcudeConfig was on an empty set of files (e.g. *.conf, where none such files existed) thanks to Michael Biebl for reporting this bug
    • bugfix: when run in foreground (but not in debug mode), a debug message (“DoDie called”) was emitted at shutdown. Removed. thanks to Michael Biebl for reporting this bug
    • bugfix: some garbagge was emitted to stderr on shutdown. This garbage consisted of file names, which were written during startup (key point: not a pointer error) thanks to Michael Biebl for reporting this bug
    • bugfix: startup and shutdown message were emitted to stdout
      thanks to Michael Biebl for reporting this bug
    • bugfix: error messages were not emitted to stderr in forked mode (stderr and stdo are now kept open across forks)
    • bugfix: internal messages were emitted to whatever file had fd2 when rsyslogd ran in forked mode (as usual!) Thanks to varmojfekoj for the patch
    • small enhancement: config validation run now exits with code 1 if an error is detected. This change is considered important but small enough to apply it directly to the stable version. [But it is a border case, the change requires more code than I had hoped. Thus I have NOT tried to actually catch all cases, this is left for the current devel releases, if necessary]
    • bugfix: light and full delay watermarks had invalid values, badly affecting performance for delayable inputs
    • bugfix: potential segfault issue when multiple $UDPServerRun directives are specified. Thanks to Michael Biebl for helping to debug this one.
    • relaxed GnuTLS version requirement to 1.4.0 after confirmation from the field that this version is sufficient
    • bugfix: parser did not properly handle empty structured data

As a reminder:

Version 4.1.0 [DEVEL] (rgerhards), 2008-11-18

********************************* WARNING *********************************
This version has a slightly different on-disk format for message entries.
As a consequence, old queue files being read by this version may have
an invalid output timestamp, which could result to some malfunction inside
the output driver. It is recommended to drain queues with the previous
version before switching to this one.
********************************* WARNING *********************************
  • greatly enhanced performance when compared to v3.
  • added configuration directive “HUPisRestart” which enables to configure
    HUP to be either a full restart or “just” a leightweight way to
    close open files.
  • enhanced legacy syslog parser to detect year if part of the timestamp
    the format is based on what Cisco devices seem to emit.
  • added a setting “$OptimizeForUniprocessor” to enable users to turn off
    pthread_yield calls which are counter-productive on multiprocessor
    machines (but have been shown to be useful on uniprocessors)
  • reordered imudp processing. Message parsing is now done as part of main
    message queue worker processing (was part of the input thread)
    This should also improve performance, as potentially more work is
    done in parallel.
  • bugfix: compressed syslog messages could be slightly mis-uncompressed
    if the last byte of the compressed record was a NUL
  • added $UDPServerTimeRequery option which enables to work with
    less acurate timestamps in favor of performance. This enables querying
    of the time only every n-th time if imudp is running in the tight
    receive loop (aka receiving messsages at a high rate)
  • doc bugfix: queue doc had wrong parameter name for setting controlling
    worker thread shutdown period
  • restructured rsyslog.conf documentation
  • bugfix: memory leak in ompgsql
    Thanks to Ken for providing the patch

ChangeLog for 5.1.0 (devel)

Version 5.1.0 [DEVEL] (rgerhards), 2009-05-29

  • redesigned queue engine so that it supports ultra-reliable operations. This resulted in a rewrite of large parts. The new capability can be used to build audit-grade systems on the basis of rsyslog.
  • added $MainMsgQueueDequeueBatchSize and $ActionQueueDequeueBatchSize configuration directives
  • implemented a new transactional output module interface which provides superior performance (for databases potentially far superior performance)
  • increased ompgsql performance by adapting to new transactional output module interface

ChangeLog for 4.3.1 (devel)

Version 4.3.1 [DEVEL] (rgerhards), 2009-05-25

  • added capability to run multiple tcp listeners (on different ports)
  • performance enhancement: imtcp calls parser no longer on input thread but rather inside on of the potentially many main msg queue worker threads (an enhancement scheduled for all input plugins where this is possible)
  • added $GenerateConfigGraph configuration command which can be used to generate nice-looking (and very informative) rsyslog configuration graphs.
  • added $ActionName configuration directive (currently only used for graph generation, but may find other uses)
  • improved doc
    * added (hopefully) easier to grasp queue explanation

  • improved testbench
    * added tests for queue disk-only mode (checks disk queue logic)

  • bugfix: light and full delay watermarks had invalid values, badly affecting performance for delayable inputs
  • build system improvements – thanks to Michael Biebl
  • added new testing module imdiag, which enables to talk to the rsyslog core at runtime. The current implementation is only a beginning, but can be expanded over time

ChangeLog for 4.1.7 (beta)

Version 4.1.7 [BETA] (rgerhards), 2009-04-22

  • bugfix: $InputTCPMaxSessions config directive was accepted, but not honored. This resulted in a fixed upper limit of 200 connections.
  • bugfix: the default for $DirCreateMode was 0644, and as such wrong. It has now been changed to 0700. For some background, please see http://lists.adiscon.net/pipermail/rsyslog/2009-April/001986.html
  • bugfix: ompgsql did not detect problems in sql command execution this could cause loss of messages. The handling was correct if the connection broke, but not if there was a problem with statement execution. The most probable case for such a case would be invalid sql inside the template, and this is now much easier to diagnose.

ChangeLog for 3.22.0 (v3-stable)

Version 3.22.0 [v3-stable] (rgerhards), 2009-04-21 This is the first stable release that includes the full functionality of the 3.21.x version tree.

  • bugfix: $InputTCPMaxSessions config directive was accepted, but not honored. This resulted in a fixed upper limit of 200 connections.
  • bugfix: the default for $DirCreateMode was 0644, and as such wrong. It has now been changed to 0700. For some background, please see http://lists.adiscon.net/pipermail/rsyslog/2009-April/001986.html
  • bugfix: ompgsql did not detect problems in sql command execution this could cause loss of messages. The handling was correct if the connection broke, but not if there was a problem with statement execution. The most probable case for such a case would be invalid sql inside the template, and this is now much easier to diagnose.

ChangeLog for 4.3.0 (devel)

Version 4.3.0 [DEVEL] (rgerhards), 2009-04-17

  • new feature: new output plugin omprog, which permits to start program and feed it (via its stdin) with syslog messages. If the program terminates, it is restarted.
  • improved internal handling of RainerScript functions, building the necessary plumbing to support more functions with decent runtime performance. This is also necessary towards the long-term goal of loadable library modules.
  • added new RainerScript function “tolower”
  • improved testbench
    • added tests for tcp-based reception
    • added tcp-load test (1000 connections, 20,000 messages)
  • added $MaxOpenFiles configuration directive
  • bugfix: solved potential memory leak in msg processing, could manifest itself in imtcp
  • bugfix: ompgsql did not detect problems in sql command execution this could cause loss of messages. The handling was correct if the connection broke, but not if there was a problem with statement execution. The most probable case for such a case would be invalid sql inside the template, and this is now much easier to diagnose.

ChangeLog for 3.20.6 (v3-stable)

Version 3.20.6 [v3-stable] (rgerhards), 2009-04-16

  • this is the last v3-stable for the 3.20.x series
  • bugfix: $InputTCPMaxSessions config directive was accepted, but not honored. This resulted in a fixed upper limit of 200 connections.
  • bugfix: the default for $DirCreateMode was 0644, and as such wrong. It has now been changed to 0700. For some background, please see http://lists.adiscon.net/pipermail/rsyslog/2009-April/001986.html
Scroll to top