| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Signed-off-by: Rainer Gerhards <rgerhards@adiscon.com>
|
|
|
|
|
|
| |
and also provided four build-in modules for the most common use
cases, hopefully resulting in a speedup of around 5% for typical
rsyslog processing.
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
runtime/Makefile.am
runtime/atomic.h
runtime/queue.c
runtime/queue.h
runtime/wti.c
runtime/wti.h
runtime/wtp.c
runtime/wtp.h
|
| |
| |
| |
| |
| |
| | |
replaced atomic operation emulation with new code. The previous code
seemed to have some issue and also limited concurrency severely. The
whole atomic operation emulation has been rewritten.
|
| | |
|
|\|
| |
| |
| |
| | |
Conflicts:
runtime/msg.h
|
| |
| |
| |
| |
| | |
This includes a modification to the rsyslog engine so that messages
without PRI inside the message can properly be handled.
|
| |
| |
| |
| | |
issues
|
| |
| |
| |
| |
| |
| |
| |
| | |
Most importantly, DNS resolution now never happens if the resolved name
is not required. Note that this applies to imudp - for the other inputs,
DNS resolution almost comes for free, so we do not do it there. However,
the new method has been implemented in a generic way and as such may
also be used by other modules in the future.
|
| |
| |
| |
| |
| | |
This offers considerable additional flexibility AND superior performance
(in cases where multiple inputs now can avoid lock contention)
|
| | |
|
|\| |
|
| |
| |
| |
| |
| |
| |
| |
| | |
- control character DEL was not properly escaped
- NUL and LF characters were not properly stripped if no control
character replacement was to be done
- NUL characters in the message body were silently dropped (this was
a regeression introduced by some of the recent optimizations)
|
|\|
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
runtime/msg.c
I messed up and did some changes during the merge commit ;) But these are
not large, just a little bit of cleanup and some very slight optimizations
inside the msg object.
|
|/
|
|
|
|
| |
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...).
|
|
|
|
|
|
| |
... hopefully reducing the number of allocs/frees as well as overall
memory usage in a busy system (plus that these shared properties hopefully
remain in cache longer than its single-instance counterparts...)
|
|
|
|
|
|
| |
This sets stage to enable use of the property-interface to speed
up things (mildly), the next step to be done. I have also fixed one
regression of yesterday's changes.
|
|
|
|
|
|
|
|
|
|
|
| |
... plus a fix for a long-time bug in obj-types.h. That lead to
the object pointer only then to become NULL when the object was
actually destructed, I discovered this issue during
introduction of the pRcvFrom property in msg_t, but it potentially had other
effects, too. I am not sure if some experienced instability resulted from this
bug OR if its fix will cause harm to so-far "correctly" running code. The later
may very well be. Thus I will change it only for the current branch and also
the beta, but not in all old builds. Let's see how things evolve.
|
|
|
|
|
| |
... plus some celanup and adding minor missing functionality
(the rule debug info again tell the property name, not just number).
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
some things inside the message can be used over a large number of
messages and need to to be allocated and re-written every time. I now
begin to implement this as a "prop_t" object, first use for the inputName.
Some input modules are already converted, some others to go. Will do
a little performance check on the new method before I go further.
Also, this commit has some cleanup and a few bug fixes that prevented
compiliation in debug mode (I overlooked this as I did not compile
for debug, what I normally do, and the automatted test also does not
do that)
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
... hopefully removes false positives (but may cause some trouble
with hostname parsing). For details, see this bug tracker:
http://bugzilla.adiscon.com/show_bug.cgi?id=126
This patch is not optimal for v4 - another one will follow. The spirit
of this commit is to enable easier backporting if someone is interested
in doing so.
|
| |
|
|
|
|
|
|
|
| |
- done malloc() instead of calloc() for msg_t, as we have large space
which needs not be initialized
- shrunk syslogTime structure in the hope to get better cache and
write performance (non-aligned data should not hurt much here)
|
| |
|
| |
|
|
|
|
| |
this was a regression I introduced this afternoon
|
|
|
|
|
| |
WARNING: currently, message repeation processing is disabled, must
be reenabled (but prefer to do some other tests first)
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
pri, facility and severity string generation simplified
|
|\
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
ChangeLog
runtime/msg.h
tcps_sess.c
tcpsrv.c
tools/syslogd.c
|
| |
| |
| |
| |
| | |
... as well as some cleanup (some commented-out code is left to
support UxTradMsg again is someone really complains ;)).
|
| | |
|
| |
| |
| |
| |
| |
| | |
- saved gettimeofday() calls in imtcp (and increased reception buffer)
- somewhat optimized stringbuf.c
- some other optimizations
|
|/
|
|
| |
... as well as added multi-ruleset support for imtcp
|
|
|
|
|
|
|
|
|
|
|
| |
Well, actually this and a lot of related things. I improved the
testbench so that the new capabilities are automatically tested and
also did some general cleanup. The current multiple tcp listener
solution will probably receive some further cleanup, too, but looks
quite OK so far. I also reviewed the way tcpsrv et all work, in
preparation of using this code for imdiag. I need to document the
findings, especially as the code is rather complicated "thanks" to
the combination of plain tcp and gssapi transport modes.
|
|
|
|
|
| |
This was subtle, because getPRI is called as part of the debugging code
(always executed) in syslogd.c:logmsg.
|
|
|
|
|
|
| |
This enables us to use more efficient calling conventions and
also helps us keep the on-disk structure of a msg object more
consistent in future releases.
|
|
|
|
|
|
| |
Message parsing is now done as part of main message queue worker
processing (was part of the input thread) This should also improve
performance, as potentially more work is done in parallel.
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
| |
...which enables to work with
less acurate timestamps in favor of performance. This enables querying
of the time only every n-th time if imudp is running in the tight
receive loop (aka receiving messsages at a high rate)
|
|
|
|
|
|
|
|
| |
- added message property "inputname", which contains the name of the
input (module) that generated it. Presence is depending on suport in
each input module (else it is blank).
- added system property "$myhostname", which contains the name of the
local host as it knows itself.
|
|
|
|
| |
enables to query just the subsecond part of a high-precision timestamp
|
|
|
|
|
|
|
|
|
|
| |
- bugfix: TCP input modules did incorrectly set fromhost property
(always blank)
- bugfix: imklog did not set fromhost property
- added "fromhost-ip" property
- added "RSYSLOG_DebugFormat" canned template
- bugfix: hostname and fromhost were swapped when a persisted message
(in queued mode) was read in
|