Merge branch 'v5-stable-newstats' into v5-devel
authorRainer Gerhards <rgerhards@adiscon.com>
Mon, 12 Mar 2012 16:00:21 +0000 (17:00 +0100)
committerRainer Gerhards <rgerhards@adiscon.com>
Mon, 12 Mar 2012 16:00:21 +0000 (17:00 +0100)
Conflicts:
ChangeLog
action.c
configure.ac
doc/imuxsock.html
doc/manual.html
runtime/queue.c

1  2 
ChangeLog
action.c
doc/imuxsock.html
plugins/imklog/imklog.c
plugins/imptcp/imptcp.c
plugins/imuxsock/imuxsock.c
runtime/queue.c
runtime/wti.c
tools/syslogd.c

diff --cc ChangeLog
+++ b/ChangeLog
 -- added capability to use a local interface IP address as fromhost-ip for
 -  imuxsock imklog
 -  new config directives: $IMUXSockLocalIPIF, $klogLocalIPIF
 -- added configuration directives to customize queue light delay marks
 -  $MainMsgQueueLightDelayMark, $ActionQueueLightDelayMark; both
 -  specify number of messages starting at which a delay happens.
 +---------------------------------------------------------------------------
 +Version 5.9.6  [V5-DEVEL], 2012-03-??
 +- bugfix: imklog invalidly computed facility and severity
 +  closes: http://bugzilla.adiscon.com/show_bug.cgi?id=313
 +---------------------------------------------------------------------------
 +Version 5.9.5  [V5-DEVEL], 2012-01-27
 +- improved impstats subsystem, added many new counters
 +- enhanced module loader to not rely on PATH_MAX
 +- refactored imklog linux driver, now combined with BSD driver
 +  The Linux driver no longer supports outdated kernel symbol resolution,
 +  which was disabled by default for very long. Also overall cleanup,
 +  resulting in much smaller code. Linux and BSD are now covered by a
 +  single small driver.
 +- $IMUXSockRateLimitInterval DEFAULT CHANGED, was 5, now 0
 +  The new default turns off rate limiting. This was chosen as people
 +  experienced problems with rate-limiting activated by default. Now it
 +  needs an explicit opt-in by setting this parameter.
 +  Thanks to Chris Gaffney for suggesting to make it opt-in; thanks to
 +  many unnamed others who already had complained at the time Chris made
 +  the suggestion ;-)
 +---------------------------------------------------------------------------
 +Version 5.9.4  [V5-DEVEL], 2011-11-29
 +- imuxsock: added capability to "annotate" messages with "trusted
 +  information", which contains some properties obtained from the system
 +  and as such sure to not be faked. This is inspired by the similiar idea
 +  introduced in systemd.
 +- removed dependency on gcrypt for recently-enough GnuTLS
 +  see: http://bugzilla.adiscon.com/show_bug.cgi?id=289
 +- bugfix: imuxsock did no longer ignore message-provided timestamp, if
 +  so configured (the *default*). Lead to no longer sub-second timestamps.
 +  closes: http://bugzilla.adiscon.com/show_bug.cgi?id=281
 +- bugfix: omfile returns fatal error code for things that go really wrong
 +  previously, RS_RET_RESUME was returned, which lead to a loop inside the
 +  rule engine as omfile could not really recover.
 +- bugfix: rsyslogd -v always said 64 atomics were not present
 +  thanks to mono_matsuko for the patch
 +---------------------------------------------------------------------------
 +Version 5.9.3  [V5-DEVEL], 2011-09-01
 +- bugfix/security: off-by-two bug in legacy syslog parser, CVE-2011-3200
 +- bugfix: mark message processing did not work correctly
 +- added capability to emit config error location info for warnings 
 +  otherwise, omusrmsg's warning about new config format was not
 +  accompanied by problem location.
 +- bugfix: potential misadressing in property replacer
 +- bugfix: MSGID corruption in RFC5424 parser under some circumstances
 +  closes: http://bugzilla.adiscon.com/show_bug.cgi?id=275
 +- bugfix: The NUL-Byte for the syslogtag was not copied in MsgDup (msg.c)
 +---------------------------------------------------------------------------
 +Version 5.9.2  [V5-DEVEL] (rgerhards), 2011-07-11
 +- systemd support: set stdout/stderr to null - thx to Lennart for the patch
 +- added support for the ":omusrmsg:" syntax in configuring user messages
 +- added support for the ":omfile:" syntax in configuring user messages
 +---------------------------------------------------------------------------
 +Version 5.9.1  [V5-DEVEL] (rgerhards), 2011-06-30
 +- added support for obtaining timestamp for kernel message from message
 +  If the kernel time-stamps messages, time is now take from that
 +  timestamp instead of the system time when the message was read. This
 +  provides much better accuracy. Thanks to Lennart Poettering for
 +  suggesting this feature and his help during implementation.
 +- added support for obtaining timestamp from system for imuxsock
 +  This permits to read the time a message was submitted to the system
 +  log socket. Most importantly, this is provided in microsecond resolution.
 +  So we are able to obtain high precision timestampis even for messages
 +  that were - as is usual - not formatted with them. This also simplifies
 +  things in regard to local time calculation in chroot environments.
 +  Many thanks to Lennart Poettering for suggesting this feature,
 +  providing some guidance on implementing it and coordinating getting the
 +  necessary support into the Linux kernel.
 +- bugfix: timestamp was incorrectly calculated for timezones with minute
 +  offset
 +  closes: http://bugzilla.adiscon.com/show_bug.cgi?id=271
 +- bugfix: problems in failover action handling
 +  closes: http://bugzilla.adiscon.com/show_bug.cgi?id=270
 +  closes: http://bugzilla.adiscon.com/show_bug.cgi?id=254
 +- bugfix: mutex was invalidly left unlocked during action processing
 +  At least one case where this can occur is during thread shutdown, which
 +  may be initiated by lower activity. In most cases, this is quite
 +  unlikely to happen. However, if it does, data structures may be 
 +  corrupted which could lead to fatal failure and segfault. I detected
 +  this via a testbench test, not a user report. But I assume that some
 +  users may have had unreproducable aborts that were cause by this bug.
 +- bugfix: memory leak in imtcp & subsystems under some circumstances
 +  This leak is tied to error conditions which lead to incorrect cleanup
 +  of some data structures. [backport from v6]
 +- bugfix/improvement:$WorkDirectory now gracefully handles trailing slashes
 +---------------------------------------------------------------------------
 +Version 5.9.0  [V5-DEVEL] (rgerhards), 2011-06-08
 +- imfile: added $InputFileMaxLinesAtOnce directive
 +- enhanced imfile to support input batching
 +- added capability for imtcp and imptcp to activate keep-alive packets
 +  at the socket layer. This has not been added to imttcp, as the latter is
 +  only an experimental module, and one which did not prove to be useful.
 +  reference: http://kb.monitorware.com/post20791.html
 +- added support to control KEEPALIVE settings in imptcp
 +  this has not yet been added to imtcp, but could be done on request.
 +- $ActionName is now also used for naming of queues in impstats
 +  as well as in the debug output
 +- bugfix: do not open files with full privileges, if privs will be dropped
 +  This make the privilege drop code more bulletproof, but breaks Ubuntu's
 +  work-around for log files created by external programs with the wrong
 +  user and/or group. Note that it was long said that this "functionality"
 +  would break once we go for serious privilege drop code, so hopefully
 +  nobody still depends on it (and, if so, they lost...).
 +- bugfix: pipes not opened in full priv mode when privs are to be dropped
 +- this begins a new devel branch for v5
 +- better handling of queue i/o errors in disk queues. This is kind of a
 +  bugfix, but a very intrusive one, this it goes into the devel version
 +  first. Right now, "file not found" is handled and leads to the new
 +  emergency mode, in which disk action is stopped and the queue run
 +  in direct mode. An error message is emited if this happens.
 +- added support for user-level PRI provided via systemd
 +- added new config directive $InputTCPFlowControl to select if tcp
 +  received messages shall be flagged as light delayable or not.
 +- enhanced omhdfs to support batching mode. This permits to increase
 +  performance, as we now call the HDFS API with much larger message
 +  sizes and far more infrequently
 +- bugfix: failover did not work correctly if repeated msg reduction was on
 +  affected directive was: $ActionExecOnlyWhenPreviousIsSuspended on
 +  closes: http://bugzilla.adiscon.com/show_bug.cgi?id=236
  ---------------------------------------------------------------------------
- Version 5.8.8  [V5-stable] 2012-0?-??
+ Version 5.8.9  [V5-stable] 2012-03-??
+ - bugfix: stopped DA queue was never processed after a restart due to a
+   regression from statistics module
+ ---------------------------------------------------------------------------
+ Version 5.8.8  [V5-stable] 2012-03-05
++- added capability to use a local interface IP address as fromhost-ip for
++  imuxsock imklog
++  new config directives: $IMUXSockLocalIPIF, $klogLocalIPIF
++- added configuration directives to customize queue light delay marks
++  $MainMsgQueueLightDelayMark, $ActionQueueLightDelayMark; both
++  specify number of messages starting at which a delay happens.
  - bugfix: omprog made rsyslog abort on startup if not binary to
    execute was configured
  - bugfix: imklog invalidly computed facility and severity
diff --cc action.c
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
diff --cc runtime/queue.c
Simple merge
diff --cc runtime/wti.c
@@@ -312,12 -312,11 +312,14 @@@ wtiWorker(wti_t *pThis
                 */
                localRet = pWtp->pfDoWork(pWtp->pUsr, pThis);
  
 -              if(localRet == RS_RET_IDLE) {
 +              if(localRet == RS_RET_ERR_QUEUE_EMERGENCY) {
 +                      d_pthread_mutex_unlock(pWtp->pmutUsr);
 +                      break;  /* end of loop */
 +              } else if(localRet == RS_RET_IDLE) {
                        if(terminateRet == RS_RET_TERMINATE_WHEN_IDLE || bInactivityTOOccured) {
                                d_pthread_mutex_unlock(pWtp->pmutUsr);
+                               dbgoprint((obj_t*) pThis, "terminating worker terminateRet=%d, bInactivityTOOccured=%d\n",
+                                         terminateRet, bInactivityTOOccured);
                                break;  /* end of loop */
                        }
                        doIdleProcessing(pThis, pWtp, &bInactivityTOOccured);
diff --cc tools/syslogd.c
Simple merge