#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

#210 in Text processing

Download history 12/week @ 2024-02-16 42/week @ 2024-02-23 197/week @ 2024-03-01 47/week @ 2024-03-08 38/week @ 2024-03-15 5/week @ 2024-03-22 82/week @ 2024-03-29 227/week @ 2024-04-05 256/week @ 2024-04-12 263/week @ 2024-04-19

829 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