- Allow attaching multiple tags on failure. The
tag_on_failure
option now also supports an array of strings #100. Fixes #92
- Added
allow_empty_values
option #72
- Feat: check that target is set in ECS mode #96
- Fixed issue where a
field_split_pattern
containing a literal backslash failed to match correctly #87
- Changed timeout handling using the Timeout class #84
- Fixed asciidoc formatting in docs
- Resolved potential race condition in pipeline shutdown where the timeout enforcer could be shut down while work was still in-flight, potentially leading to stuck pipelines.
- Resolved potential race condition in pipeline shutdown where work could be submitted to the timeout enforcer after it had been shutdown, potentially leading to stuck pipelines.
- Fixed asciidoc formatting in documentation #81
- Added a timeout enforcer which prevents inputs that are pathological against the generated parser from blocking
the pipeline. By default, timeout is a generous 30s, but can be configured or disabled entirely with the new
timeout_millis
andtag_on_timeout
directives (#79) - Made error-handling configurable with
tag_on_failure
directive.
- Fixes performance regression introduced in 4.1.0 (#70)
- Added
whitespace => strict
mode, which allows the parser to behave more predictably when input is known to avoid unnecessary whitespace. - Added error handling, which tags the event with
_kv_filter_error
if an exception is raised while handling an event instead of allowing the plugin to crash.
- bugfix: improves trim_key and trim_value to trim any sequence of matching characters from the beginning and ends of the corresponding keys and values; a previous implementation limitited trim to a single character from each end, which was surprising.
- bugfix: fixes issue where we can fail to correctly break up a sequence that includes a partially-quoted value followed by another fully-quoted value by slightly reducing greediness of quoted-value captures.
- bugfix: correctly handle empty values between value separator and field separator (#58)
- feature: add option to split fields and values using a regex pattern (#55)
- Update gemspec summary
- Fix some documentation issues
- breaking: trim and trimkey options are renamed to trim_value and trim_key
- bugfix: trim_value and trim_key options now remove only leading and trailing characters (#10)
- feature: new options remove_char_value and remove_char_key to remove all characters from keys/values whatever their position
- internal,deps: Relax constraint on logstash-core-plugin-api to >= 1.60 <= 2.99
- Adds :transform_value and :transform_key options to lowercase/upcase or capitalize all keys/values
- internal: Republish all the gems under jruby.
- internal,deps: Update the plugin to the version 2.0 of the plugin api, this change is required for Logstash 5.0 compatibility. See elastic/logstash#5141
- feature: With include_brackets enabled, angle brackets (< and >) are treated the same as square brackets and parentheses, making it easy to parse strings like "a=<b> c=<d>".
- feature: An empty value_split option value now gives a useful error message.
- internal,deps: Depend on logstash-core-plugin-api instead of logstash-core, removing the need to mass update plugins on major releases of logstash
- internal,deps: New dependency requirements for logstash-core for the 5.0 release
- bugfix: Fields without values could claim the next field + value under certain circumstances. Reported in #22
- bugfix: fixed short circuit expressions, some optimizations, added specs, PR #20
- bugfix: fixed event field assignment, PR #21
- internal: Plugins were updated to follow the new shutdown semantic, this mainly allows Logstash to instruct input plugins to terminate gracefully, instead of using Thread.raise on the plugins' threads. Ref: elastic/logstash#3895
- internal,deps: Dependency on logstash-core update to 2.0
- feature: support spaces between key and value_split, support brackets and recursive option.