Giter Site home page Giter Site logo

logstash-filter-denormalize's Introduction

Ohai ๐Ÿ‘‹

  • ๐ŸŽ“ Software developer / SRE / Observability Engineer
  • ๐Ÿ’ช๐Ÿป I'm currently working on: ...
  • ๐ŸŒฑ I'm currently learning: Haskell and Rust
  • ๐Ÿ“ซ How to reach me: LinkedIn

logstash-filter-denormalize's People

Contributors

ingafeick avatar

Stargazers

 avatar

Watchers

 avatar  avatar

logstash-filter-denormalize's Issues

Tag for successful denormalization gets added multiple times

Input:

{"name": "foo","response_time": 30,"c_tests": ["a", "b"]}

{"name": "bar","response_time": 10,"c_tests": ["a", "b", "c"]}

Config:

  {
    source => "c_tests" 
    target => "it_works_"
    add_tag => "denormalized"
  }

Output:

{
             "name" => "foo",
    "response_time" => 30,
        "it_works_" => "a",
             "tags" => [
        [0] "denormalized"
    ]
}
{
             "name" => "foo",
    "response_time" => 30,
        "it_works_" => "b",
             "tags" => [
        [0] "denormalized",
        [1] "denormalized"
    ]
}
{
             "name" => "bar",
    "response_time" => 10,
        "it_works_" => "a",
             "tags" => [
        [0] "denormalized"
    ]
}
{
             "name" => "bar",
    "response_time" => 10,
        "it_works_" => "b",
             "tags" => [
        [0] "denormalized",
        [1] "denormalized"
    ]
}
{
             "name" => "bar",
    "response_time" => 10,
        "it_works_" => "c",
             "tags" => [
        [0] "denormalized",
        [1] "denormalized",
        [2] "denormalized"
    ]
}

The tag should be added only once per new event.

Aggregation error when averaging over fields in upper document layer

Example input:

{
"name": "foo",
"response_time": 30,
"c_tests": ["a", "b", "c"]
}
{
"name": "bar",
"response_time": 10,
"c_tests": ["a", "b", "c", "e", "f"]
}

creates output (assuming a config that sets the target field name to "c_test")

{ "name": "foo", "response_time": 30, "c_test": "a" }
{ "name": "foo", "response_time": 30, "c_test": "b" }
{ "name": "foo", "response_time": 30, "c_test": "c" }
{ "name": "bar", "response_time": 10, "c_test": "a" }
{ "name": "bar", "response_time": 10, "c_test": "b" }
{ "name": "bar", "response_time": 10, "c_test": "c" }
{ "name": "bar", "response_time": 10, "c_test": "d" }
{ "name": "bar", "response_time": 10, "c_test": "e" }

Problem: the average over the response time is 20 second on the original data.
On the modified data, the average is 17.5 due to the fact that the propertions of the uppermost document 'level' get distorted by the amount of elements in the denormalisation field.

Suggested solution was:
mark one of the spawned documents with a flag such as "first" or "master": true and add that as a filter criterion to any application on the uppermost level fields.

Rspec fails / uncomplete

  • cannot execute rspec locally due to some log4j import error
  • the rspec does not cover the code properly.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.