Thursday, March 23rd, 2017
We have just released liblognorm 2.0.3. This new version provides some fixes for the the annotate function and adds a test for it. A few different issues have also been fixed. See the Changelog for details.
Changelog:Version 2.0.3, 2017-03-22
- add ability to load rulebase from a string
introduces new API:
int ln_loadSamplesFromString(ln_ctx ctx, const char *string);
closes https://github.com/rsyslog/liblognorm/issues/239
- bugfix: string parser did not correctly parse word at end of line
- bugfix: literal parser does not always store value if name is specified
if
rule=:%{“type”:”literal”, “text”:”a”, “name”:”var”}%
is used and matching message is provided, variable var ist not persisted.
see also http://lists.adiscon.net/pipermail/rsyslog/2016-December/043985.html
Download:
http://www.liblognorm.com/download/liblognorm-2-0-3/
As always, feedback is appreciated.
Best regards,
Florian Riedl
Tags: 2.0.3, bugfix, liblognorm, rulebase
Posted in News | Comments Off on liblognorm 2.0.3 released
Tuesday, November 15th, 2016
We have just released liblognorm 2.0.2. This new version provides some fixes for the the annotate function and adds a test for it. A few different issues have also been fixed. See the Changelog for details.
Changelog:
Version 2.0.2, 2016-11-15
- bugfix: no error was emitted on invalid “annotate” line
- “annnotate”: permit inline comments
- fix a problem with cross-compilation
see also: https://github.com/rsyslog/liblognorm/pull/221
Thanks to Luca Boccassi for the patch
- bugfix: abort in literal path compaction when useing “alternative” parser
When using the “alternative” parser, literals nodes could be created with
multiple reference count. This is valid. However, literal path compaction
did not consider this case, and so “merged” these nodes, which lead to
pdag corruption and quickly to segfault.
closes https://github.com/rsyslog/liblognorm/issues/220
closes https://github.com/rsyslog/liblognorm/issues/153
- bugfix: lognormalizer could loop
This also caused the testbench to fail on some platforms.
due too incorrect data type
Thanks to Michael Biebl for this fix.
- fix misleading compiler warning
Thanks to Michael Biebl for this fix.
- testbench: add test for “annotate” functionality
Download:
http://www.liblognorm.com/download/liblognorm-2-0-2/
As always, feedback is appreciated.
Best regards,
Florian Riedl
Tags: 2.0.2, annotate, bugfix, liblognorm, release
Posted in News | Comments Off on liblognorm 2.0.2 released
Monday, March 7th, 2016
We have just released liblognorm 1.1.3. This release contains support for libfastjson and now works on Solaris. See the Changelog for details.
Changelog:
Version 1.1.3, 2016-03-07
- add support for libfastjson
- make work on Solaris
- check for runaway rules.
A runaway rule is one that has unmatched percent signs and thus
is not terminated properly at its end. This also means we no longer
accept “rule=” at the first column of a continuation line, which is
no problem (see doc for more information).
- fix: process last line if it misses the terminating LF
This problem occurs with the very last line of a rulebase (at EOF).
If it is not properly terminated (LF missing), it is silently ignored.
Previous versions did obviously process lines in this case. While
technically this is invalid input, we can’t outrule that such rulebases
exist. For example, they do in the rsyslog testbench, which made
us aware of the problem (see https://github.com/rsyslog/rsyslog/issues/489 )
I think the proper way of addressing this is to process such lines without
termination, as many other tools do as well.
closes https://github.com/rsyslog/liblognorm/issues/135
Download:
http://www.liblognorm.com/download/liblognorm-1-1-3/
As always, feedback is appreciated.
Best regards,
Florian Riedl
Tags: 1.1.3, bugfix, libfastjson, liblognorm, Solaris
Posted in News | Comments Off on liblognorm 1.1.3 released
Monday, July 20th, 2015
We have just released liblognorm 1.1.2. This release contains new parser syntaxes and some fixes.
Changes:
Version 1.1.2, 2015-07-20
- permit newline inside parser definition
- new parser “cisco-interface-spec”
- new parser “json” to process json parts of the message
- new parser “mac48” to process mac layer addresses
- new parser “name-value-list” (currently inofficial, experimental)
- some parsers did incorrectly report success when an error occurred
this was caused by inconsistencies between various macros. We have
changed the parser-generation macros to match the semantics of the
broader CHKN/CHKR macros and also restructured/simplified the
parser generation macros.
closes https://github.com/rsyslog/liblognorm/issues/41
- call “rest” parser only if nothing else matches.
Versions prior to 1.1.2 did execute “rest” during regular parser
processing, and thus parser matches have been more or less random.
With 1.1.2 this is now always the last parser called. This may cause
problems with existing rulesets, HOWEVER, adding any other rule or
changing the load order would also have caused problems, so there
really is no compatibility to preserve.
see also:
http://blog.gerhards.net/2015/04/liblognorms-rest-parser-now-more-useful.html
- new API to support error callbacks
This permits callers to forward messages in regard to e.g. wrong rule
bases to their users, which is very useful and actually missing in the
previous code base. So far, we only have few error messages.
However, we will review the code and add more. The important part is
that callers can begin to use the new API and thus will benefit when
we add more error messages.
- testbench is now enabled by default
- bugfix: misadressing on some constant values
see also https://github.com/rsyslog/liblognorm/pull/67
Thanks to github user ontholerian for the patch
- bugfix: add missing function prototypes
This could potentially lead to problems on some platforms,
especially those with 64 bit pointers.
Download:
http://www.liblognorm.com/download/liblognorm-1-1-2/
As always, feedback is appreciated.
Best regards,
Florian Riedl
Tags: 1.1.2, bugfix, cisco, JSON, liblognorm, mac48, parser
Posted in News | Comments Off on liblognorm 1.1.2 released
Tuesday, March 10th, 2015
We have just released liblognorm 1.1.1. This release contains new parser syntaxes and some fixes.
Changes:
Version 1.1.1, 2015-03-09
- fixed library version numbering
Thanks to Tomas Heinreich for reporting the problem.
- added new parser syntaxes
Thanks to Janmejay Singh for implementing most of them.
- bugfix: function ln_parseFieldDescr() returns state value due to unitialized variable. This can also lead to invalid returning no sample node where one would have to be created.
Download:
http://www.liblognorm.com/download/liblognorm-1-1-1/
As always, feedback is appreciated.
Best regards,
Florian Riedl
Tags: 1.1.1, bugfix, liblognorm, parser syntax
Posted in News | Comments Off on liblognorm 1.1.1 released
Friday, April 11th, 2014
We have just released liblognorm 1.0.1. This is a pure maintenance release.
Changes
Version 1.0.1, 2014-04-11
- improved doc (via RST/Sphinx)
- bugfix: unparsed fields were copied incorrectly from non-terminated string. Thanks to Josh Blum for the fix.
- bugfix: mandatory tag did not work in lognormalizer
Download:
http://www.liblognorm.com/download/liblognorm-1-0-1/
As always, feedback is appreciated.
Best regards,
Florian Riedl
Tags: 1.0.1, bugfix, doc, liblognorm
Posted in News | Comments Off on liblognorm 1.0.1 released
Thursday, November 28th, 2013
We have just released liblognorm 1.0.0. This is a completely revamped and enhanced version. It introduces incompatible API changes, which were unavoidable. For details please visit
http://www.liblognorm.com/news/on-liblognorm-1-0-0/
Changes
Version 1.0.0, 2013-11-28
- WARNING: this version has incompatible interface and older programs will not compile with it.
For details see http://www.liblognorm.com/news/on-liblognorm-1-0-0/
- libestr is not used any more in interface functions. Traditional C strings are used instead. Internally, libestr is still used, but scheduled for removal.
- libee is not used any more. JSON-C is used for object handling instead. Parsers and formatters are now part of liblognorm.
- added new field type “rest”, which simply sinks all up to end of the string.
- added support for glueing two fields together, without literal between them. It allows for constructs like:
%volume:number%%unit:word%
which matches string “1000Kbps”
- Fix incorrect merging of trees with empty literal at end
Thanks to Pavel Levshin for the patch
- this version has survived many bugfixes
Download:
http://www.liblognorm.com/download/liblognorm-1-0-0/
As always, feedback is appreciated.
Best regards,
Florian Riedl
Tags: 1.0.0, bugfix, libee, libestr, liblognorm
Posted in News | Comments Off on liblognorm 1.0.0 released
Monday, April 16th, 2012
We have just released liblognorm 0.3.4.
This is a bug fixing release, targeting a single bug that prevented building on many platforms.
Changes:
Version 0.3.4 (rgerhards), 2012-04-16
- bugfix: normalizer tool had a memory leak
Thanks to Brian Know for alerting me and helping to debug
Download:
http://www.liblognorm.com/download/liblognorm-0-3-4/
As always, feedback is appreciated.
Best regards,
Florian Riedl
Tags: 0.3.4, bugfix, liblognorm
Posted in News | Comments Off on liblognorm 0.3.4 released