#key-value #logstash #parser #kv #string #map #extractor

tremor-kv

A logstash inspured key value extractor

12 releases

0.6.2 Oct 26, 2023
0.6.0 May 24, 2023
0.5.0 Nov 3, 2022
0.4.0 Jul 8, 2022
0.1.2 Mar 4, 2020

#172 in Text processing

Download history 42/week @ 2024-03-14 5/week @ 2024-03-21 42/week @ 2024-03-28 260/week @ 2024-04-04 176/week @ 2024-04-11 353/week @ 2024-04-18 32/week @ 2024-04-25 85/week @ 2024-05-02 231/week @ 2024-05-09 218/week @ 2024-05-16 281/week @ 2024-05-23 194/week @ 2024-05-30 304/week @ 2024-06-06 520/week @ 2024-06-13 353/week @ 2024-06-20 129/week @ 2024-06-27

1,319 downloads per month
Used in 2 crates (via tremor-script)

Apache-2.0

28KB
551 lines

KV   Latest Version Build Status Quality Checks License Checks Security Checks Code Coverage

kv parser


KV parsing inspired by logstash's kv plugin.

Parses a string into a map. It is possible to split based on different characters that represent either field or key value boundaries.

A good part of the logstash functionality will be handled outside of this function and in a generic way in tremor script.

Use as a library

The kv parser was designed so that KV style parsing could be embedded into tremor's scripting language for extract operations.

The parser can also be used standalone

  let kv = Pattern::compile("%{key}%{%{val}").expect("Failed to build pattern");
  let r = kv.run("this%{is a%{test").expect("Failed to split input");
  assert_eq!(r.len(), 2);
  assert_eq!(r["this"], "is");
  assert_eq!(r["a"], "test");

Dependencies

~6MB
~105K SLoC