438 Commits

Author SHA1 Message Date
Rainer Gerhards
9273b4bb4d optimize memory layout for much better cache hits
Moave element status out of batch_obj_t because we
get a *much* better cache hit ratio this way.
Note that this is really a HUGE saving, even if it
doesn't look so (both profiler data as well as
practical tests indicate that!).
2013-01-15 15:01:16 +01:00
Rainer Gerhards
3352d2c605 minor cleanup 2012-12-14 09:20:51 +01:00
Rainer Gerhards
42d1d27a01 Merge branch 'v7-stable-newmsglock' into master-newmsglock
Conflicts:
	runtime/msg.c
	runtime/queue.c
	tools/syslogd.c
2012-12-06 17:27:37 +01:00
Rainer Gerhards
27e0f06b17 Merge branch 'v6-stable-newmsglock' into v7-stable-newmsglock
Conflicts:
	tools/syslogd.c
2012-12-06 17:03:51 +01:00
Rainer Gerhards
3495720a2f bugfix: some message properties could be garbled due to race condition
This happened only on very high volume systems, if the same message was
being processed by two different actions. This was a regression caused
by the new config processor, which did no longer properly enable msg
locking in multithreaded cases. The bugfix is actually a refactoring of
the msg locking code - we no longer do unlocked operations, as the use
case for it has mostly gone away. It is potentially possible only at
very low-end systems, and there the small additional overhead of doing
the locking does not really hurt. Instead, the removal of that
capability can actually slightly improve performance in common cases,
as the code path is smaller and requires slightly less memory writes.
That probably outperforms the extra locking overhead (which in the
low-end case always happens in user space, without need for kernel
support as we can always directly aquire the lock - there is no
contention at all).
2012-12-06 15:40:15 +01:00
Rainer Gerhards
62f6a7d7b4 fix missing functionality: ruleset(){} could not specify ruleset queue
The "queue.xxx" parameter set was not supported, and legacy ruleset
config statements did not work (by intention). The fix introduces the
"queue.xxx" parameter set. It has some regression potential, but only
for the new functionality. Note that using that interface it is possible
to specify duplicate queue file names, which will cause trouble. This
will be solved in v7.3, because there is a too-large regression
potential for the v7.2 stable branch.
2012-11-30 17:09:28 +01:00
Rainer Gerhards
7182c6def3 silence compiler warnings
the changes do not affect actual code execution, just keep the
compile log clean.
2012-11-30 12:57:26 +01:00
Rainer Gerhards
4798bd8daf Merge branch 'v7-stable' 2012-11-22 12:41:30 +01:00
Rainer Gerhards
8f61bf333c Merge branch 'v6-stable' into tmp 2012-11-22 12:22:30 +01:00
oxpa
e95584a204 bugfix: hostname set in rsyslog.conf was not picked up until HUP
which could also mean "never" or "not for a very long time".
2012-11-22 12:21:07 +01:00
Rainer Gerhards
b69e45aaaa Merge branch 'v7-stable' 2012-11-09 12:22:41 +01:00
Rainer Gerhards
8b5f57a2c6 enabled to build without libuuid, at loss of uuid functionality
this enables smoother builds on older systems that do not support
libuuid. Loss of functionality should usually not matter too much as
uuid support has only recently been added and is very seldom used.
2012-11-09 08:52:27 +01:00
Rainer Gerhards
c55e0a5a06 queue: change generic msg ptr (pUsr) to be of msg_t type 2012-11-03 12:32:50 +01:00
Rainer Gerhards
e711dc6e6b Merge branch 'master-ratelimit' 2012-10-30 14:59:01 +01:00
Rainer Gerhards
0d762b7509 add -D rsyslogd option to enable config parser debug mode 2012-10-27 14:41:56 +02:00
Rainer Gerhards
99d6dc01d2 rate-limit rsyslog internal messages
a special ratelimiter is used; it's linux-type ratelimit settings
are currently hardcoded
2012-10-23 17:12:09 +02:00
Rainer Gerhards
04ccff727d Merge branch 'master' into master-ratelimit
Conflicts:
	ChangeLog
2012-10-23 11:24:25 +02:00
Rainer Gerhards
3d41da36b8 remove "last message repeated n times" from rsyslog output part 2012-10-23 11:22:56 +02:00
Rainer Gerhards
95fefbc12a prepare for 7.20 stable release & minor things
The most important real code chane is the initialization of the
epoll control set. This should just be cosmetic (valgrind warnings),
as all data we actually use already was properly initialized.
2012-10-22 11:21:01 +02:00
Rainer Gerhards
9516e8f99f ratelimit: add default ratelimiter 2012-10-19 11:01:37 +02:00
Rainer Gerhards
fb53a0420f cleanup 2012-10-19 10:04:59 +02:00
Rainer Gerhards
e65473e9a4 Merge branch 'master' into master-ratelimit
Conflicts:
	ChangeLog
	configure.ac
	doc/manual.html
2012-10-19 09:39:29 +02:00
Rainer Gerhards
e544df3f39 Merge branch 'v6-stable' into v6-beta 2012-10-17 16:55:57 +02:00
Rainer Gerhards
75079d9519 Merge branch 'v6-stable' into beta
Conflicts:
	rsyslog.service.in
2012-10-16 18:59:53 +02:00
Rainer Gerhards
bdc609639e cleanup: removed remains of -c option (compatibility mode)
both from code & doc and emitted warning message if still used
closes: http://bugzilla.adiscon.com/show_bug.cgi?id=361
Thanks to Michael Biebl for reporting & suggestions
2012-10-16 18:58:11 +02:00
Rainer Gerhards
34a88a7e9a ratelimit: added linux-like ratelimiter type 2012-10-15 16:39:36 +02:00
Rainer Gerhards
3806643baa ratelimiter: enable thread-safe mode & (related) API changes 2012-10-15 11:19:22 +02:00
Rainer Gerhards
2a6ff7d53d interface cleanup (probably not final) 2012-10-15 08:55:12 +02:00
Rainer Gerhards
49fb431e0c milestone: ratelimiter used in imptcp 2012-10-15 08:41:04 +02:00
Rainer Gerhards
4269e45781 new ratelimit: interface plumbing added
no actual implementation yet done
2012-10-09 18:54:25 +02:00
Rainer Gerhards
83b9b63e46 Merge branch 'v6-devel' 2012-09-20 09:44:53 +02:00
Rainer Gerhards
762c1a81d5 bugfix: config validation run did not always return correct return state 2012-09-20 08:41:32 +02:00
Rainer Gerhards
c0e35e864a bugfix: config validation run did not always return correct return state 2012-09-20 08:31:03 +02:00
Rainer Gerhards
200e08ac42 new ruleengine: some cleanup 2012-09-06 11:09:16 +02:00
Rainer Gerhards
2f7586bbe4 cleanup: remove left-over commented-out code 2012-08-25 12:35:09 +02:00
Rainer Gerhards
de71589ca3 Merge branch 'v6-stable'
Conflicts:
	ChangeLog
	configure.ac
	runtime/ruleset.c
	tools/syslogd.c
2012-08-25 12:19:56 +02:00
Rainer Gerhards
8939ccfffd Merge branch 'v5-stable' into v6-stable
Conflicts:
	ChangeLog
	action.c
	configure.ac
	doc/manual.html
	runtime/ruleset.c
	template.h
	threads.c
	tools/syslogd.c
2012-08-25 11:55:41 +02:00
Rainer Gerhards
01fe0fd2ab Merge branch 'v5-stable' into v5-beta
Conflicts:
	runtime/ruleset.c
2012-08-22 15:32:05 +02:00
Rainer Gerhards
d92ad440da bugfix: multiple main queues with same queue file name were not detected
This lead to queue file corruption. While the root cause is a config
error, it is a bug that this important and hard to find config error
was not detected by rsyslog.
2012-08-22 14:30:12 +02:00
Rainer Gerhards
4ce8111ea6 Merge branch 'v5-stable' into beta 2012-08-20 12:37:39 +02:00
Rainer Gerhards
4d01df57c2 bugfix: potential abort if output plugin logged message during shutdown
note that none of the rsyslog-provided plugins does this
Thanks to bodik and Rohit Prasad for alerting us on this bug and
analyzing it.
fixes: http://bugzilla.adiscon.com/show_bug.cgi?id=347
2012-08-01 10:14:37 +02:00
Rainer Gerhards
bf85d81790 implemented freeCnf() module interface & fixed some mem leaks
The interface was actually not present in older versions, even though some modules
already used it. The implementation was now done, and not in 6.3/6.4
because the resulting memory leak was ultra-slim and the new interface
handling has some potential to seriously break things. Not the kind of
 thing you want to add in late beta state, if avoidable.
2012-06-25 12:35:46 +02:00
Rainer Gerhards
8985d50fea Merge branch 'v5-stable' into v5-beta 2012-06-15 16:10:32 +02:00
Rainer Gerhards
c8324b3460 milestone: regex is compiled from script based filter 2012-06-12 18:52:32 +02:00
Rainer Gerhards
dec9bcfe2a bugfix "$PreserveFQDN on" was not honored in some modules
Thanks to bodik for reporting this bug.
  ---------------------------------------------
2012-06-12 13:58:13 +02:00
Rainer Gerhards
d5585524b7 Merge branch 'beta' 2012-06-06 18:49:42 +02:00
Rainer Gerhards
27360bb33f Merge branch 'v5-beta' into beta
Conflicts:
	runtime/modules.c
2012-06-06 18:49:32 +02:00
Rainer Gerhards
29cd813960 Merge branch 'v5-stable' into v5-beta
Conflicts:
	ChangeLog
	configure.ac
	doc/manual.html
	runtime/modules.c
2012-06-06 15:12:51 +02:00
Rainer Gerhards
55659b96a3 add small delay (50ms) after sending shutdown message
There seem to be cases where the shutdown message is otherwise not
processed, not even on an idle system. Thanks to Marcin for
bringing this problem up.
2012-06-04 12:01:24 +02:00
Rainer Gerhards
4cd16cbb28 Merge branch 'beta' 2012-06-01 16:51:25 +02:00