summaryrefslogtreecommitdiffstats
path: root/queue.h
diff options
context:
space:
mode:
authorRainer Gerhards <rgerhards@adiscon.com>2008-01-30 15:37:23 +0000
committerRainer Gerhards <rgerhards@adiscon.com>2008-01-30 15:37:23 +0000
commit6cc46b15d953e1cd766f3f9f29011e740e51ca6c (patch)
treed97914e6db3c1decf888cd4a00fcb370f34e4801 /queue.h
parentf6f4bcb0fdb30646927724b2a86149e5b7d36e8b (diff)
downloadrsyslog-6cc46b15d953e1cd766f3f9f29011e740e51ca6c.tar.gz
rsyslog-6cc46b15d953e1cd766f3f9f29011e740e51ca6c.tar.xz
rsyslog-6cc46b15d953e1cd766f3f9f29011e740e51ca6c.zip
- implemented simple output rate limiting
- addded $ActionQueueDequeueSlowdown config directive - addded $MainMsgQueueDequeueSlowdown config directive - bugfix: MsgDup() did not work with new base object data structure
Diffstat (limited to 'queue.h')
-rw-r--r--queue.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/queue.h b/queue.h
index 12e4fcb6..090ff4c5 100644
--- a/queue.h
+++ b/queue.h
@@ -80,6 +80,9 @@ typedef struct queue_s {
int toActShutdown; /* timeout for long-running action shutdown in ms */
int toWrkShutdown; /* timeout for idle workers in ms, -1 means indefinite (0 is immediate) */
int toEnq; /* enqueue timeout */
+ /* rate limiting settings (will be expanded */
+ int iDeqSlowdown; /* slow down dequeue by specified nbr of microseconds */
+ /* end rate limiting */
rsRetVal (*pConsumer)(void *,void*); /* user-supplied consumer function for dequeued messages */
/* calling interface for pConsumer: arg1 is the global user pointer from this structure, arg2 is the
* user pointer that was dequeued (actual sample: for actions, arg1 is the pAction and arg2 is pointer
@@ -174,6 +177,7 @@ PROTOTYPEpropSetMeth(queue, iDiscardSeverity, int);
PROTOTYPEpropSetMeth(queue, iMinMsgsPerWrkr, int);
PROTOTYPEpropSetMeth(queue, bSaveOnShutdown, int);
PROTOTYPEpropSetMeth(queue, pUsr, void*);
+PROTOTYPEpropSetMeth(queue, iDeqSlowdown, int);
#define queueGetID(pThis) ((unsigned long) pThis)
#endif /* #ifndef QUEUE_H_INCLUDED */