summaryrefslogtreecommitdiffstats
path: root/action.c
Commit message (Collapse)AuthorAgeFilesLines
* bugfix: potential re-use of free()ed file stream object in omfileRainer Gerhards2010-03-231-1/+1
| | | | | | | when dynaCache is enabled, the cache is full, a new entry needs to be allocated, thus the LRU discarded, then a new entry is opend and that fails. In that case, it looks like the discarded stream may be reused improperly (based on code analysis, test case and confirmation pending)
* Merge branch 'v4-stable' into v4-betaRainer Gerhards2009-11-121-1/+2
|\ | | | | | | | | Conflicts: tests/Makefile.am
| * bugfix: $ActionExecOnlyOnceEveryInterval did not work.Rainer Gerhards2009-11-121-1/+2
| | | | | | | | | | | | This was a regression from the time() optimizations done in v4. Bug tracker: http://bugzilla.adiscon.com/show_bug.cgi?id=143 Thanks to Klaus Tachtler for reporting this bug.
* | minor: optimized dbgprintf() useRainer Gerhards2009-09-101-17/+17
| |
* | small performance improvement and cleanupRainer Gerhards2009-07-091-1/+2
| | | | | | | | | | | | optimized substring processing, should bring a small enhancement when forwarding with the default forwarding templates. Also did some uchar cleanup in msg.c (thus so many changes, in reality they are few...).
* | got rid of the recursive requirement for msg_t mutex (finally!)Rainer Gerhards2009-06-261-2/+2
| |
* | bugfix: abort when using multiple mainMsgQueue worker threadsRainer Gerhards2009-06-241-16/+9
| | | | | | | | | | | | this bug was introduced by a recent change which was a bit too agressive in avoiding locking. We can probably do better than with this patch, but I think I'll move that into the v5 engine.
* | fixed a race condition: generated msg string store must be mutex protectedRainer Gerhards2009-06-231-11/+13
| | | | | | | | | | | | | | | | the string area that is used to build the string being passed to the output module is now part of the action structure. As such, access to it must also be guarded by the action mutex (an even more optimal solution may be to store it in thread-local storage, but there always must remain some room for improvement ;)).
* | restored repeated message reduction processingRainer Gerhards2009-06-231-14/+8
| |
* | optimized template string generationRainer Gerhards2009-06-191-31/+72
| |
* | optimized action.c a bitRainer Gerhards2009-06-191-19/+15
| |
* | optimized handling of MSG part in msg objectRainer Gerhards2009-06-181-1/+2
| | | | | | | | | | WARNING: currently, message repeation processing is disabled, must be reenabled (but prefer to do some other tests first)
* | cleaned up/optimized raw message handling in msg objectRainer Gerhards2009-06-181-1/+1
| |
* | added capability to fsync() queue disk files for enhanced reliabilityRainer Gerhards2009-06-091-0/+4
|/ | | | | | | also adds speed, because you do no longer need to run the whole file system in sync mode. New testbench and new config directives: - $MainMsgQueueSyncQueueFiles - $ActionQueueSyncQueueFiles
* added capability to draw configuration graphsRainer Gerhards2009-05-111-4/+7
| | | | | | | | - 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)
* added a new way how output plugins may be passed parameters.Rainer Gerhards2009-04-031-2/+30
| | | | | This is more efficient for some outputs. They new can receive fields not only as a single string but rather in an array where each string is seperated.
* Merge branch 'omfile-errHandler'Rainer Gerhards2009-03-241-1/+7
|\ | | | | | | | | Conflicts: ChangeLog
| * omfile bugfixingRainer Gerhards2009-03-181-1/+7
| | | | | | | | | | | | | | - fixed a bug that caused action retries not to work correctly situation was only cleared by a restart - bugfix: closed dynafile was potentially never written until another dynafile name was generated - potential loss of messages
* | integrated various patches for solarisRainer Gerhards2009-03-051-22/+22
|/ | | | | | | | | Unfortunatley, I do not have the full list of contributors available. The patch set was compiled by Ben Taylor, and I made some further changes to adopt it to the news rsyslog branch. Others provided much of the base work, but I can not find the names of the original authors. If you happen to be one of them, please let me know so that I can give proper credits.
* added new config directive $RepeatedMsgContainsOriginalMsgRainer Gerhards2009-02-021-8/+11
| | | | | | so that the "last message repeated n times" messages, if generated, may have an alternate format that contains the message that is being repeated. Note that this is on an action-by-action basis.
* fixed type in format string (s as string indicator missing)varmojfekoj2009-01-121-1/+1
| | | | Signed-off-by: Rainer Gerhards <rgerhards@adiscon.com>
* experimentally altered "last message repeated n times" to include msgRainer Gerhards2008-12-191-2/+7
| | | | | | | | | | | | This was suggested by David Lang, to help identify the message that was repeated. A problem is that I do not have the expanded template at hand when the "last ... times" message is generated. Spending much time on this functionality is also probably not a good thing, as the whole functionality will be overhauled (and once this is done we will not at all have the output template at hand). So the approach is to use a single field - here msg - and inlcude it as a notation of what was repeated. This is far from being perfect, but eventually good enough. I will now wait for feedback before going any further.
* added configuration directive "HUPisRestart"Rainer Gerhards2008-10-231-0/+33
| | | | | ...which enables to configure HUP to be either a full restart or "just" a leightweight way to close open files
* cleanup of output timestamp generationRainer Gerhards2008-10-071-36/+2
|
* "output" timestamp now taken from mesg's time generatedRainer Gerhards2008-10-071-1/+5
| | | | | | | This enhances performance and, as some have pointed out, is probably also more consistent with what users expect how the various output-timestamp related function should work. This commit needs some more testing.
* very minor: performance optimization hint addedRainer Gerhards2008-10-021-0/+1
|
* TESTING COMMIT: commiting not fully correct codeRainer Gerhards2008-09-181-1/+30
| | | | | | ... for the purpose of conducting a few external tests. This is a first approach at removing the time() call in the output, but it shows there are some subleties we need to address.
* consolidated time() calls in rule engineRainer Gerhards2008-09-161-29/+72
| | | | | | | ... but did not manage to avoid doing at least one call. So this change introduced performance benefit only in a few non-common situations. Anyhow, it hopefully levels ground for better things to come.
* Merge branch 'beta'Rainer Gerhards2008-09-121-1/+1
|\ | | | | | | | | | | | | Conflicts: runtime/rsyslog.h tools/syslogd.c
| * Merge branch 'v3-stable' into betaRainer Gerhards2008-09-121-1/+1
| |\ | | | | | | | | | | | | | | | | | | Conflicts: runtime/datetime.h runtime/rsyslog.h
| | * bugfix: incorrect default discard severity could cause message lossRainer Gerhards2008-09-101-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | default discard severity was incorrectly set to 4, which lead to discard-on-queue-full to be enabled by default. That could cause message loss where non was expected. The default has now been changed to the correct value of 8, which disables the functionality. This problem applied both to the main message queue and the action queues. Thanks to Raoul Bhatia for pointing out this problem.
* | | Merge branch 'beta'Rainer Gerhards2008-09-021-1/+4
|\| | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: ChangeLog action.c configure.ac doc/manual.html
| * | Merge branch 'v3-stable' into betaRainer Gerhards2008-09-021-0/+4
| |\| | | | | | | | | | | | | | | | | | | | | | Conflicts: ChangeLog configure.ac doc/manual.html
| | * bugfix: action was not called when system time was set backwardsvarmojfekoj2008-09-011-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | (until the previous time was reached again). There are still some side-effects when time is rolled back (A time rollback is really a bad thing to do, ideally the OS should issue pseudo time (like NetWare did) when the user tries to roll back time). Signed-off-by: Rainer Gerhards <rgerhards@adiscon.com>
* | | added ability to execute actions only after the n-th call of the actionRainer Gerhards2008-08-071-2/+39
|/ / | | | | | | | | | | | | | | | | This also lead to the addition of two new config directives: $ActionExecOnlyEveryNthTime and $ActionExecOnlyEveryNthTimeTimeout This feature is useful, for example, for alerting: it permits you to send an alert only after at least n occurences of a specific message have been seen by rsyslogd. This protectes against false positives due to waiting for additional confirmation.
* | added (internal) error codes to error messagesRainer Gerhards2008-06-271-5/+5
| | | | | | | | | | Also added redirector to web description of error codes closes bug http://bugzilla.adiscon.com/show_bug.cgi?id=20
* | disabled compile warnings caused by third-party librariesRainer Gerhards2008-06-231-0/+4
| |
* | ability to load proper select netstrm driverRainer Gerhards2008-04-291-1/+1
| |
* | some more cleanupRainer Gerhards2008-04-161-1/+1
|/ | | | | reduced dependencies, moved non-runtime files to its own directory except for some whom's status is unclear
* implemented $ActionExecOnlyOnceEveryInterval config directiveRainer Gerhards2008-04-081-1/+16
|
* added the capability to specify a processing (actually dequeue) timeframeRainer Gerhards2008-04-031-4/+11
| | | | with queues - so things can be configured to be done at off-peak hours
* changed queue's discard severities default value to 8 (do not discard) toRainer Gerhards2008-03-221-1/+1
| | | | prevent unintentional message loss
* added advanced flow control for congestion cases (mode depending on messageRainer Gerhards2008-03-141-1/+1
| | | | source and its capablity to be delayed without bad side effects)
* fixed some compiler warnings under FreeBSDRainer Gerhards2008-03-061-1/+1
|
* shuffled some more code from syslogd.c to the right placesRainer Gerhards2008-03-051-0/+100
|
* moved date/time handling functions to their own object (2nd pass)Rainer Gerhards2008-03-051-3/+7
|
* bugfix: actions were not correctly retried; caused message lossRainer Gerhards2008-03-051-1/+4
|
* - extracted logerror*() family of functions from syslogd, made them theirRainer Gerhards2008-03-051-3/+6
| | | | | | own class and converted to new object calling conventions (interface-based) - converted gss-misc into a loadable library module
* - changed modules.c calling conventions to be interface-basedRainer Gerhards2008-03-051-2/+5
| | | | | | | | | | | - moved module loader from conf.c to module.c, where it belongs - made the necessary plumbing to auto-load library modules - upgraded debug system to include iRet in function exit message - changed module interface so that instances need only to be supported by output plugins (if we actually need them for input plugins, we can always add it again...) - milestone: first implementation of library modules (but do not get unloaded on exit/hup so far)
* changed obj base object's calling interface to use the new obj_if_tRainer Gerhards2008-02-291-4/+16
| | | | interface structure