【问题标题】:Is there any way to flatten json data in logstash有没有办法在logstash中展平json数据
【发布时间】:2020-10-06 07:28:01
【问题描述】:

我的 JSON

{
 "foo1":{
  "number":1,
  "type":"In progrss",
  "submit_time":"2020-10-04",
  "id_type":"2153707",
  "order_id":"1601849877",
  "foo2":[
     {
        "t1":"xyz",
        "t2":"qwe",
        "t3":"yty"
     }
  ],
  "order_date":"19/09/2020",
  "shipping_date":"2020-10-04",
  "shipping_id":"89775555",
  "tracking_id":"98876"
 }
}

我想要这样:

 "number": 1,
 "type": "in progrss",
 "submit_time": "2020-10-04T16:17:33-0600",
 "id_type": 2153707,
 "order_id": 1601849877,
 "order_date": 19/09/2020,
 "shipping_date": "2020-10-04T16:17:57-0600",
 "shipping_id": "89775555",
 "tracking_id": "98876",
 "order_id": 1601849877,
  "foo2": [
    "xyz",
    "we",
    "yty"
      ],

我试过filter { json { source => "foo1" target => "jsoncontent" } } 但它没有给我任何东西。我在过滤器部分缺少的任何东西,或者有什么不同的方法可以做。在此先感谢

【问题讨论】:

  • 您顶部的 JSON 格式不正确。请您修改一下并正确打印出来好吗?
  • 请立即查看!!
  • 仍然不是有效的 JSON
  • 现在我添加了有效的 json

标签: json elasticsearch logstash logstash-configuration


【解决方案1】:

如果您在压缩 JSON 之后,请在 Elastic Discuss 上查看 this answer。 该讨论线程中的 ruby​​ 脚本解决方案将给出以下输出。

{
         "foo1.order_id" => "1601849877",
             "foo1.foo2" => [
        [0] {
            "t1" => "xyz",
            "t3" => "yty",
            "t2" => "qwe"
        }
    ],
       "foo1.order_date" => "19/09/2020",
          "foo1.id_type" => "2153707",
                  "host" => "37eda5039626",
            "@timestamp" => 2020-10-06T08:30:22.463Z,
                  "type" => "json",
      "foo1.submit_time" => "2020-10-04",
             "foo1.type" => "In progrss",
                  "path" => "/usr/share/logstash/stack/data/file.json",
           "foo1.number" => 1,
    "foo1.shipping_date" => "2020-10-04",
      "foo1.tracking_id" => "98876",
              "@version" => "1",
      "foo1.shipping_id" => "89775555"
}

【讨论】:

  • @user223321 的答案是否帮助你做你想做的事?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-08-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-12-19
  • 2021-05-13
相关资源
最近更新 更多