summaryrefslogtreecommitdiffstats
path: root/action.h
diff options
context:
space:
mode:
authorRainer Gerhards <rgerhards@adiscon.com>2008-11-11 12:54:44 +0100
committerRainer Gerhards <rgerhards@adiscon.com>2008-11-11 12:54:44 +0100
commit05bd696ebb7766f33b3ae176b841bcecb0bfedfc (patch)
tree99437759863ee4b25174f49aa69807c207176a76 /action.h
parent9048c16d90177a0dfa4131266ae73f029a5923c8 (diff)
parentba201a941435bc5fec2c333155e1a8e16c4a9c05 (diff)
downloadrsyslog-05bd696ebb7766f33b3ae176b841bcecb0bfedfc.tar.gz
rsyslog-05bd696ebb7766f33b3ae176b841bcecb0bfedfc.tar.xz
rsyslog-05bd696ebb7766f33b3ae176b841bcecb0bfedfc.zip
Merge branch 'master' into beta
Conflicts: ChangeLog configure.ac doc/manual.html
Diffstat (limited to 'action.h')
-rw-r--r--action.h8
1 files changed, 6 insertions, 2 deletions
diff --git a/action.h b/action.h
index 99108aab..d26d15b6 100644
--- a/action.h
+++ b/action.h
@@ -40,6 +40,8 @@ extern int glbliActionResumeRetryCount;
*/
struct action_s {
time_t f_time; /* used for "message repeated n times" - be careful, old, old code */
+ time_t tActNow; /* the current time for an action execution. Initially set to -1 and
+ populated on an as-needed basis. This is a performance optimization. */
time_t tLastExec; /* time this action was last executed */
int bExecWhenPrevSusp;/* execute only when previous action is suspended? */
int iSecsExecOnceInterval; /* if non-zero, minimum seconds to wait until action is executed again */
@@ -49,6 +51,10 @@ struct action_s {
int iResumeInterval;/* resume interval for this action */
int iResumeRetryCount;/* how often shall we retry a suspended action? (-1 --> eternal) */
int iNbrResRtry; /* number of retries since last suspend */
+ int iNbrNoExec; /* number of matches that did not yet yield to an exec */
+ int iExecEveryNthOccur;/* execute this action only every n-th occurence (with n=0,1 -> always) */
+ int iExecEveryNthOccurTO;/* timeout for n-th occurence feature */
+ time_t tLastOccur; /* time last occurence was seen (for timing them out) */
struct modInfo_s *pMod;/* pointer to output module handling this selector */
void *pModData; /* pointer to module data - content is module-specific */
int f_ReduceRepeated;/* reduce repeated lines 0 - no, 1 - yes */
@@ -74,8 +80,6 @@ rsRetVal actionConstruct(action_t **ppThis);
rsRetVal actionConstructFinalize(action_t *pThis);
rsRetVal actionDestruct(action_t *pThis);
rsRetVal actionAddCfSysLineHdrl(void);
-rsRetVal actionTryResume(action_t *pThis);
-rsRetVal actionSuspend(action_t *pThis);
rsRetVal actionDbgPrint(action_t *pThis);
rsRetVal actionSetGlobalResumeInterval(int iNewVal);
rsRetVal actionDoAction(action_t *pAction);