From 49fb431e0ce15da6a1e72cb541eadea3a3096ab6 Mon Sep 17 00:00:00 2001 From: Rainer Gerhards Date: Mon, 15 Oct 2012 08:41:04 +0200 Subject: milestone: ratelimiter used in imptcp --- dirty.h | 2 ++ doc/v7compatibility.html | 19 ++++++++++++++++-- plugins/imptcp/imptcp.c | 19 +++++++----------- plugins/imuxsock/imuxsock.c | 5 +++++ runtime/ratelimit.c | 49 ++++++++++++++++++++++++++++++++++----------- tools/syslogd.c | 43 +++++++++++++++++++++++++++++++++++++++ 6 files changed, 111 insertions(+), 26 deletions(-) diff --git a/dirty.h b/dirty.h index 3c602caa..d82d5524 100644 --- a/dirty.h +++ b/dirty.h @@ -31,6 +31,8 @@ rsRetVal __attribute__((deprecated)) multiSubmitMsg(multi_submit_t *pMultiSub); rsRetVal __attribute__((deprecated)) submitMsg(msg_t *pMsg); rsRetVal multiSubmitMsg2(multi_submit_t *pMultiSub, ratelimit_t *ratelimit); rsRetVal submitMsg2(msg_t *pMsg, ratelimit_t *ratelimit); +rsRetVal multiSubmitFlush(multi_submit_t *pMultiSub); +rsRetVal multiSubmitAddMsg(multi_submit_t *pMultiSub, msg_t *pMsg, ratelimit_t *ratelimit); rsRetVal logmsgInternal(int iErr, int pri, uchar *msg, int flags); rsRetVal parseAndSubmitMessage(uchar *hname, uchar *hnameIP, uchar *msg, int len, int flags, flowControl_t flowCtlTypeu, prop_t *pInputName, struct syslogTime *stTime, time_t ttGenTime, ruleset_t *pRuleset); rsRetVal diagGetMainMsgQSize(int *piSize); /* for imdiag */ diff --git a/doc/v7compatibility.html b/doc/v7compatibility.html index bf4c0eba..e954ca1d 100644 --- a/doc/v7compatibility.html +++ b/doc/v7compatibility.html @@ -27,9 +27,12 @@ problems to anyone, especially as in v6 this was announced as a missing feature.

"last message repeated n times" Processing

This processing has been optimized and moved to the input side. This results -in far better performance and also de-couples different sources from the same +in usually far better performance and also de-couples different sources +from the same processing. It is now also integrated in to the more generic rate-limiting -processing. The code works almost as before, with two exceptions: +processing. +

User-Noticable Changes

+The code works almost as before, with two exceptions: