54 Commits

Author SHA1 Message Date
Rainer Gerhards
7a747262c9 cleanup 2008-03-28 10:31:10 +00:00
Rainer Gerhards
f2fcb03211 - changed default file output format to include high-precision timestamps
- added a buid-in template for previous syslogd file format
- added new $ActionFileDefaultTemplate directive
2008-03-28 10:02:22 +00:00
Rainer Gerhards
c75bd24012 - Greatly enhanced rsyslogd's filw write performance by disabling file
syncing capability of output modules by default. This feature is
    usually not required, not useful and an extreme performance hit (both
    to rsyslogd as well as the system at large). Unfortunately, most users
    enable it by default, because it was most intuitive to enable it in
    plain old sysklogd syslog.conf format. There is now a new config
    setting which must be enabled in order to support syncing. By default
    it is off. So even if the old-format config lines request syncing, it
    is not done unless explicitely enabled. I am sure this is a very useful
    change and not a risk at all. I need to think if I undo it under
    compatibility mode, but currently this does not happen (I fear a lot of
    lazy users will run rsyslogd in compatibility mode, again bringing up
    this performance problem...).
- added $ActionfileEnableSync config directive
2008-03-22 10:54:22 +00:00
Rainer Gerhards
cdcc0e6710 removed a now-longer needed callback from the output module interface.
Results in reducing code complexity.
2008-03-22 10:30:40 +00:00
Rainer Gerhards
b1555cd681 bugfix: not properly initialized data could cause several segfaults if
there were errors in the config file - thanks to varmojfekoj for the
    patch
2008-03-12 07:11:09 +00:00
Rainer Gerhards
24b02dc831 - extracted logerror*() family of functions from syslogd, made them their
own class and converted to new object calling conventions
    (interface-based)
- converted gss-misc into a loadable library module
2008-03-05 14:53:25 +00:00
Rainer Gerhards
bc7d8ccebb - changed module interface to support querying obj interface (stage work)
- changed module interface version, as the interface change is quite large
2008-03-04 10:27:45 +00:00
Rainer Gerhards
69dc3a4e56 - improved diagnostic information for abort cases
- some initial effort for malloc/free debugging support
- bugfix: using dynafile actions caused rsyslogd abort
2008-02-12 17:03:26 +00:00
Rainer Gerhards
35c02f54dc fixed a bug that caused a potential hang in file and fwd output module
varmojfekoj provided the patch - many thanks!
2008-01-30 14:43:14 +00:00
Rainer Gerhards
5c686c8adc redesigned queue to utilize helper classes for threading support. This is
finally in a running state for regular (non disk-assisted) queues, with
    a minor nit at shutdown. So I can finally commit the work again to
    CVS...
2008-01-24 17:55:09 +00:00
Rainer Gerhards
8a77bc82ac removed single-threading support for sending TCP messages; caused
simplyfication of output module interface as well as core syslog
    processing.
2007-12-20 14:34:40 +00:00
Rainer Gerhards
6a80d9ee50 - begun to create input module interface and macros
- changed module interface to include function to query type
2007-12-14 14:41:09 +00:00
Rainer Gerhards
004229dda6 changed license to GPLv3 (for what is to become rsyslog v3) 2007-12-14 11:21:57 +00:00
Rainer Gerhards
8d606ea26d added an identifier to command handler table - need to identify which
command handler entries need to be removed when module is unloaded
2007-11-21 10:52:19 +00:00
Rainer Gerhards
214c7bd7f8 added new modExit() entry point to loadable module interface 2007-11-21 10:09:02 +00:00
Rainer Gerhards
0fa199ef69 cleaned up some signed/unsinged char issues 2007-09-07 15:59:52 +00:00
Rainer Gerhards
de23e3ef8c applied patch by varmojfekoj two fix two potential segfault situations 2007-09-07 15:21:14 +00:00
Rainer Gerhards
82aeadce54 - changed part of the CStr interface so that better error tracking is
provided and the calling sequence is more intuitive (there were invalid
    calls based on a too-weired interface)
- (hopefully) fixed some remaining bugs rooted in wrong use of the CStr
    class. These could lead to program abort.
2007-09-05 15:59:47 +00:00
Michael Meckelein
4b757e8984 applied patches for release 1.19.2, update documentation 2007-08-28 10:50:59 +00:00
Rainer Gerhards
2d0175a1ec - fixed a bug in outchannel code that caused templates to be incorrectly
parsed
- fixed a bug in ommysql that caused a wrong ";template" missing message in
    some cases
2007-08-09 08:12:15 +00:00
Michael Meckelein
f2511d3c61 changed rsyslog.h include order to solve debian sid zlib inlcude issue 2007-08-08 10:49:38 +00:00
Rainer Gerhards
fed254a29f changed function name dprintf() to dbgprintf() as it conflicts with the
clib
2007-08-08 08:20:06 +00:00
Rainer Gerhards
adbf55ece6 - added CODE_STD_FINALIZERparseSelectorAct to module-generation macros
- restructered rsyslogd startup - moved startWorker() to a more appropriate
    place
- updated ommysql.c to fully support suspension/resumption by rule engine
2007-08-03 10:07:38 +00:00
Rainer Gerhards
2b2cdb5a6c added tryResume() API to module interface 2007-08-02 13:22:23 +00:00
Rainer Gerhards
9882771150 even more cleanup ;) 2007-08-01 12:56:57 +00:00
Rainer Gerhards
2b51194f65 - some more code cleanup
- enhanced cfsysline interface to disallow chaining of command handlers
2007-08-01 07:46:36 +00:00
Rainer Gerhards
0eab6e11e9 - loading default values as done yesterday *is* clean (I've just reviewed
the code again)
- moved omfile-specifc global variables (for cfsysline settings) from
    syslogd.c to omfile.c
2007-08-01 07:26:46 +00:00
Rainer Gerhards
af35de6774 - $ResetConfigVariables now also works vir the table-driven sytem. However,
I need to fix an issue with loading default settings when syslogd is
    started or HUPed
2007-07-31 16:59:39 +00:00
Rainer Gerhards
9234c95d74 omfile.c now uses the new table-driven cfsysline system 2007-07-31 16:07:40 +00:00
Rainer Gerhards
074ece90c0 - got the basic code in place to create an in-memory list of cfsysline
handlers (omfile.c used as testing case) -- not yet in active code
2007-07-31 15:23:28 +00:00
Rainer Gerhards
48fd0e472a - changed modInit() interface to contain pointer to host-function query
method
2007-07-31 13:02:23 +00:00
Rainer Gerhards
9c20d0b4b4 added macro to consistently define iRet 2007-07-31 08:15:40 +00:00
Rainer Gerhards
29ab35e4a3 removed selector_t f references from output modules 2007-07-27 17:45:40 +00:00
Rainer Gerhards
1d96a98daf - added omsr object (objomsr.c, objomsr.h) - template request for output
modules
- changed doAction() interface
- templates and output string generation for doActon() is now fully
2007-07-27 16:55:40 +00:00
Rainer Gerhards
078fe07ec9 removed debug code 2007-07-27 07:15:47 +00:00
Rainer Gerhards
6e2c505768 - changed doAction() interface to contain the full message string
- f_iov and its handling has been removed
2007-07-26 12:47:09 +00:00
Rainer Gerhards
54669873b0 - implemented needUDPSocket() interface
- replaced (mis) use of f_prevcount in omfwd.c -> now data element in
    instance data is used for retry counting
- removed f->f_type from syslogd.c, omfwd.c
- removed f->f_file from omfwd.c, omfile.c
- f->f_flags is gone away
2007-07-26 12:07:23 +00:00
Rainer Gerhards
1904ce3f5a - removed f_type from omshell.c, omdiscard.c, omusrmsg.c, ommysql.c
- removed f_type from syslogd.c/cflineParseFileName()
- fixed bug in omfile.c which could lead to invalid addressing if "-" was
    given to not sync file
- removed f_type from omfile.c
2007-07-26 10:50:06 +00:00
Rainer Gerhards
334a663dd1 - removed references to f_un from omfile.c
- milestone reached: f->f_un has gone away!
2007-07-26 10:26:58 +00:00
Rainer Gerhards
1b1229cd1e - changed doAction() interface to include module data pointer
- removed references to f_un from omusrmsg.c
- changed module template for parseSelectorAct() [code reduction,
    consitency]
2007-07-26 09:31:50 +00:00
Rainer Gerhards
c75d3b9348 - implemented onSelectReadyWrite() interface
- milestone reached: no more access to f->f_un in syslogd.c
2007-07-26 08:42:14 +00:00
Rainer Gerhards
d0a93ad442 introduced getWriteFDForSelect() module API 2007-07-25 16:50:12 +00:00
Rainer Gerhards
187ab7e123 moved some references to module data from syslogd.c to modules 2007-07-25 16:25:35 +00:00
Rainer Gerhards
36f1b6d7f9 added new function dbgPrintInstInfo() to omod interface 2007-07-25 10:52:47 +00:00
Rainer Gerhards
4c69b80ca0 changed output modules to use a template-based code generation system for
standard entry points (implemented via preprocessor)
2007-07-25 10:25:38 +00:00
Rainer Gerhards
6c12035a99 added freeInstance() call to output module interface; re-structured
ressource release code in syslogd.c
2007-07-24 15:23:26 +00:00
Rainer Gerhards
6d231d5f15 removed F_UNUSED and cleaned up action-disabling handling 2007-07-24 14:53:23 +00:00
Rainer Gerhards
5cbb54ed6a major task: made sure no selector_t is created for selector lines that can
not be successfully loaded. That forced me to change a lot of code,
    with potential for trouble.
2007-07-24 11:33:39 +00:00
Rainer Gerhards
f97c90d12b moved discard functionality to an output module 2007-07-24 09:45:19 +00:00
Rainer Gerhards
f48f11f50e changed action calling sequence to module interface/structure 2007-07-24 08:27:21 +00:00