summaryrefslogtreecommitdiffstats
path: root/template.h
Commit message (Collapse)AuthorAgeFilesLines
* Add support for optional JSON fieldsHEADommongodbMiloslav Trmač2012-08-281-0/+1
| | | | | | | | These fields are only relevant in field templates (i.e. mongodb): a field for a non-existent CEE property is not created (instead of being set to an empty string). Signed-off-by: Miloslav Trmač <mitr@redhat.com>
* Implement ACT_FIELDS_PASSING, test in mongodbMiloslav Trmač2012-08-281-0/+8
| | | | | | | | | | | | | | The mongodb test contains only debug printfs. Example template, inspired by writeMongoDB_msg: $template MongoTemplate,"%hostname::::sys%%timereported::::time%%timegenerated::::time_rcvd%%msg%%syslogfacility-text::::syslog_fac%%syslogseverity-text::::syslog_server%%syslogtag::::syslog_tag%%programname::::procid%%procid::::pid%%$!foo::::foo%%$!abc::::renamed%" Note that JSON escaping is actually undesirable in this mode (should it be silently ignored?), $!all-json doesn't yet work as expected, and all data is stored as strings. Signed-off-by: Miloslav Trmač <mitr@redhat.com>
* add capability to configure outname for constant (inside template)Rainer Gerhards2012-08-251-1/+1
| | | | also some cleanup
* milestone: LIST-type templates support full option setRainer Gerhards2012-08-251-5/+5
|
* Merge branch 'master' into master-newtemplateRainer Gerhards2012-08-251-14/+21
|\
| * Merge branch 'v5-stable' into v6-stableRainer Gerhards2012-08-251-14/+21
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: ChangeLog action.c configure.ac doc/manual.html runtime/ruleset.c template.h threads.c tools/syslogd.c
| | * Merge branch 'v5-stable' of git+ssh://git.adiscon.com/git/rsyslog into v5-stableRainer Gerhards2012-08-251-15/+22
| | |\ | | | | | | | | | | | | | | | | Conflicts: template.c
| | | * change template.[ch] to ASL 2.0, removing a GPLv3-only patchRainer Gerhards2012-08-251-15/+22
| | | | | | | | | | | | | | | | | | | | see template.c file header for details Note that this functionality was almost never used in practice
| | * | Merge branch 'v5-stable-field-substring' into v5-betaRainer Gerhards2012-04-271-0/+1
| | |\ \
| | | * | added capability to specify substrings for field extraction modeRainer Gerhards2012-04-271-0/+1
| | | |/
* | | / v6 config/templates: legacy types are now supported via template()Rainer Gerhards2012-08-251-0/+1
|/ / /
* | | added capability to specify substrings for field extraction modeRainer Gerhards2012-04-261-0/+1
| | |
* | | added the "jsonf" property replacer option (and fieldname) & bugfixRainer Gerhards2012-04-191-1/+3
| | | | | | | | | | | | | | | bugfix: property replacer option "json" could lead to content loss message was truncated if escaping was necessary
* | | added "date-unixtimestamp" property replacer option to format as a unix ↵Rainer Gerhards2012-03-291-1/+1
| | | | | | | | | | | | timestamp
* | | added "json" property replacer optionRainer Gerhards2012-03-161-1/+2
| | |
* | | cleanup: different text escape types made more portableRainer Gerhards2012-01-191-5/+5
| | |
* | | Merge branch 'v5-devel' into masterRainer Gerhards2012-01-181-4/+5
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: ChangeLog Makefile.am configure.ac doc/manual.html plugins/imptcp/imptcp.c plugins/imudp/imudp.c plugins/imuxsock/imuxsock.c runtime/parser.c template.c tools/omfwd.c tools/syslogd.c
| * | add JSON escaping optionNathan Scott2012-01-171-4/+5
| |/ | | | | | | | | | | | | | | | | | | | | | | Following the path taken by the two SQL formatting options, which escape single quotes with double quotes (amongst other things), this patch adds a JSON quoting option. JSON is the opposite to the SQL options, requiring double quotes to be quoted within a string. This patch provides a formatting option implementing this requirement, while piggy-backing on the existing code as much as possible. Signed-off-by: Nathan Scott <nathans@aconex.com>
* | milestone: templates are now in config objectRainer Gerhards2011-04-191-7/+7
| |
* | milestone: template supports CEE output via %$!all-json%Rainer Gerhards2010-12-011-0/+3
|/
* finshed implementation of strgen modulesRainer Gerhards2010-06-041-0/+1
| | | | | | 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.
* first implementation of strgen interfaceRainer Gerhards2010-06-011-1/+1
| | | | | and a first built-in strgen module. Some tweaks and more default strgens are needed, but the code doesn't look too bad ;)
* experimental commit: facility to generate template via C functionRainer Gerhards2010-06-011-0/+1
| | | | | | | | | | | | | | This was a test done to try to generate templates with C code, via a new (potentially to-be-implemented) class of template modules. We have a rough POC inside this code, and it showed around 5% or better speedup. So it semms worth continuing in this direction. Note that this experimental commit works correct, but does any template in the form of $template tpl,=somewhat will lead to fixed template expansion based on the default file format.
* added new property replacer option "date-rfc3164-buggyday"Rainer Gerhards2010-03-051-1/+1
| | | | | primarily to ease migration from syslog-ng. See property replacer doc for details.
* optimization: propert names are now internally identified by integersRainer Gerhards2009-06-261-1/+1
|
* optimized template string generationRainer Gerhards2009-06-191-1/+1
|
* added a new way how output plugins may be passed parameters.Rainer Gerhards2009-04-031-0/+1
| | | | | 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.
* added new "csv" property replacer optionRainer Gerhards2009-04-021-3/+4
| | | | | to enable simple creation of CSV-formatted outputs (format from RFC4180 is used)
* Merge branch 'v3-stable' into betaRainer Gerhards2008-11-111-1/+2
|\ | | | | | | | | | | | | Conflicts: ChangeLog doc/manual.html
| * enhance: regex nomatch option "ZERO" has been addedRainer Gerhards2008-11-111-1/+2
| | | | | | | | | | | | This allows to return the string 0 if a regular expression is not found. This is probably useful for storing numerical values into database columns.
* | added new capability to property replacer.Zhuang Yuyao2008-09-101-0/+2
|/ | | | | | | Multiple immediately successive field delimiters are treated as a single one. Signed-off-by: Rainer Gerhards <rgerhards@adiscon.com>
* Merge branch 'v3-stable' into betaRainer Gerhards2008-07-181-0/+1
|\ | | | | | | | | | | | | Conflicts: doc/property_replacer.html tools/syslogd.c
| * added new poperty replacer option, added missing documentationRainer Gerhards2008-07-181-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - added a new property replacer option "sp-if-no-1st-sp" to cover a problem with RFC 3164 based interpreation of tag separation. While it is a generic approach, it fixes a format problem introduced in 3.18.0, where kernel messages no longer had a space after the tag. This is done by a modifcation of the default templates. Please note that this may affect some messages where there intentionally is no space between the tag and the first character of the message content. If so, this needs to be worked around via a specific template. However, we consider this scenario to be quite remote and, even if it exists, it is not expected that it will actually cause problems with log parsers (instead, we assume the new default template behaviour may fix previous problems with log parsers due to the missing space). - doc bugfix: property replacer options secpath-replace and secpath-drop were not documented
* | added new property replacer option "time-subseconds"Rainer Gerhards2008-06-061-1/+2
| | | | | | | | enables to query just the subsecond part of a high-precision timestamp
* | enhanced property replacer to support multiple regex matchesRainer Gerhards2008-06-041-0/+1
| |
* | capability for replacement text in no match regex case addedRainer Gerhards2008-05-301-0/+5
| | | | | | | | | | | | implemented in property replacer: if a regular expression does not match, it can now either return "**NO MATCH** (default, as before), a blank property or the full original property text
* | enhanced property replacer's regex to support submatchesRainer Gerhards2008-05-291-1/+7
|/ | | | | | | - enabled Posix ERE expressions inside the property replacer (previously BRE was permitted only) - provided ability to specify that a regular expression submatch shall be used inside the property replacer
* Merge branch 'beta'Rainer Gerhards2008-04-151-0/+2
|\ | | | | | | | | | | | | | | | | Conflicts: ChangeLog configure.ac doc/ommail.html queue.c
| * applied patch from Tiziano Müller to remove some compiler warningsRainer Gerhards2008-04-111-0/+2
| |
* | some cleanupRainer Gerhards2008-04-111-1/+1
|/
* extracted regexp functionality to its own dynamically loadable moduleRainer Gerhards2008-03-071-6/+1
|
* - added RSYSLOGD_MODDIR environment variableRainer Gerhards2008-03-071-0/+10
| | | | | - added -M rsyslogd option (allows to specify module directory location) - converted net.c into a loadable library plugin
* added some code to expr.c - not yet to be usedRainer Gerhards2008-02-131-2/+1
|
* changed license to GPLv3 (for what is to become rsyslog v3)Rainer Gerhards2007-12-141-1/+19
|
* adding sur5r's postgres module - many thanks for providing it! There are aRainer Gerhards2007-12-031-1/+1
| | | | | number of patches necessary to core modules, because we need a new formatting function (date-pgsql).
* - changed part of the CStr interface so that better error tracking isRainer Gerhards2007-09-051-4/+4
| | | | | | | 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.
* patches and docu update for 1.19.3v1-19-3Michael Meckelein2007-08-311-0/+2
|
* moved action object out of syslogd.c to its own fileset (action.c/h)Rainer Gerhards2007-08-061-0/+5
|
* - I found out that we finally have problems with the (somewhat recursive)Rainer Gerhards2007-08-031-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | call to logerror() that many of the modules do. I have not tried it, but I think things will become wild when we compile without pthread support. Threading prevents full recursion, so we have not seen any bad effects so far. However, the problems that I experienced in ommysl (that caused me to re-structure startWorker()) are actually rooted in this issue. I first thought to fix it via a module interace, but I now came to the conclusion that it is not more effort and much cleaner to do an internal error buffering class. This is implemented in errbuf.c/h. - I just noticed that this is not actually an error buf, but the core of an input module for all internal messages. As such, I implement it now as iminternal.c/h. Of course, there is no input module interface yet designed, but that doesn't matter. Worst-case, I need to re-write the im, best case I can use the im (at least partly) to define the interface. - added a few functions to the linkedlist class - error messages during startup are now buffered - so we do no longer need to think about how emergency logging might work. Actually, these are logged to whatever is instatiated in the log file. This enhances the chance that we will be able to drop the error message somewhere it is seen.
* moved file write output module to own set of code filesRainer Gerhards2007-07-221-0/+5
|