summaryrefslogtreecommitdiffstats
path: root/action.c
Commit message (Collapse)AuthorAgeFilesLines
...
* | | | more code simplification, should also bring some performance enhancementRainer Gerhards2009-07-171-11/+0
| | | | | | | | | | | | | | | | reducing the number of thread cancellation state changes
* | | | Merge branch 'v4-devel'Rainer Gerhards2009-07-091-1/+2
|\| | |
| * | | 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...).
* | | | Merge branch 'master' into v5-develRainer Gerhards2009-06-261-2/+2
|\| | |
| * | | 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 ;)).
* | | | quick and dirty fix for one race conditionRainer Gerhards2009-06-241-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | It is intentionally quick & dirty, as I would like to do some better patch, if possible. For that, I probably need the commented-out code, thus no delete.
* | | | Merge branch 'omfile' into v5-develRainer Gerhards2009-06-231-13/+7
|\| | | | | | | | | | | | | | | | | | | Conflicts: runtime/rsyslog.h
| * | | restored repeated message reduction processingRainer Gerhards2009-06-231-14/+8
| | | |
* | | | some post-merge cleanupRainer Gerhards2009-06-221-5/+2
| | | |
* | | | Merge branch 'omfile' into tmpRainer Gerhards2009-06-221-63/+89
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This was a complex manual merge, especially in action.c. So if there occur some problems, this would be a good point to start troubleshooting. I run a couple of tests before commiting and they all went well. Conflicts: action.c action.h runtime/queue.c runtime/queue.h runtime/wti.c runtime/wti.h
| * | | 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
| | | |
* | | | Merge branch 'omfile' into v5-develRainer Gerhards2009-06-161-0/+4
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Note that this was NOT a trivial merge, and there may be some issues. This needs to be seen when we continue developing. Conflicts: runtime/msg.h runtime/obj.h runtime/queue.c runtime/srUtils.h runtime/stream.c runtime/stream.h runtime/wti.c tests/Makefile.am tools/omfile.c tools/syslogd.c
| * | | 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
* | | moved user object destruction to queue itselfRainer Gerhards2009-05-131-1/+0
| | | | | | | | | | | | | | | | | | So far, the consumer was responsible for destroying objects. However, this does not work well with ultra-reliable queues. This is the first move to support them.
* | | action batch processing implementedRainer Gerhards2009-05-121-24/+132
| | | | | | | | | | | | ... passed initial tests, but of course more are needed
* | | moving to a cleaner implementation of batchesRainer Gerhards2009-05-121-12/+13
| | | | | | | | | | | | ... now that we know what we need from a theoretical POV.
* | | Merge branch 'master' into multi-dequeueRainer Gerhards2009-05-121-4/+7
|\| | | | | | | | | | | | | | Conflicts: runtime/rsyslog.h
| * | 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)
* | | fixed some bugs & added testing helpersRainer Gerhards2009-05-071-21/+86
| | | | | | | | | | | | | | | | | | | | | The action state machine now works correctly and has been verified a few hand-picked cases. I am missing automatted tests, though, this is not easy to achive... Anyhow, I've improved omtesting, so that it can be used in such automatted tests.
* | | first shot at action state machine implemention (untested)Rainer Gerhards2009-05-071-127/+335
| | | | | | | | | | | | | | | I am commiting it so that the code is visible, but will no begin with the test environment.
* | | minor cleanupRainer Gerhards2009-04-291-1/+2
| | |
* | | begin implementation of new transactional output module interfaceRainer Gerhards2009-04-271-2/+9
| | | | | | | | | | | | code is not complete, error cases are not handled.
* | | added $MainMsgQueueDequeueBatchSize and $ActionQueueDequeueBatchSize ↵Rainer Gerhards2009-04-231-0/+4
| | | | | | | | | | | | configuration directives
* | | now batches are handed down to the actual consumerRainer Gerhards2009-04-221-2/+28
|/ / | | | | | | | | | | ... but the action consumer does not do anything really intelligent with them. But the DA consumer is already done, as is the main message queue consumer.
* | 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