首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Logstash编解码器多行

Logstash编解码器多行
EN

Stack Overflow用户
提问于 2016-04-07 03:13:41
回答 1查看 522关注 0票数 0

我正在尝试配置logstash从一个蜜罐中提取日志条目,该蜜罐中的每个条目都有多行。日志配置格式如下:

代码语言:javascript
复制
 ##############################################
{
    "data": [
        {
            "count": 8,
            "honeypot": "anum",
            "source_ip": "ip1"
        },
        {
            "count": 10,
            "honeypot": "anum",
            "source_ip": "ip2"
        }
    ],
    "meta": {
    ...
    }
}
##############################################

现在,我可以在模式部分中指定获取三个条目("count“、"honeypot”和"source_ip")以及如何获取它们吗?

然后,我可以指定grok模式来使用这三个值吗?

EN

回答 1

Stack Overflow用户

发布于 2016-04-07 18:00:04

您可以尝试以下配置:

代码语言:javascript
复制
input {
    stdin {
        codec => multiline {
                pattern => "\#+"
                negate => true
                what => previous
            }
    }
}

filter  {


    if "multiline" in [tags] {
        mutate  {
            gsub => [
                "message", "\n", "",
                "message", "\#", ""
            ]
        }

        json {
            source => "message"
        }

        if  "_jsonparsefailure" not in [tags] {
            split {
               field=>"data" 
            }
        }

    }
}
output {
    stdout {
        codec => rubydebug
    }
}

使用split过滤器,您的事件将按多个事件拆分,因此您可以达到以下三个值:

代码语言:javascript
复制
[data][count]
[data][honeypot]
[data][source_ip]
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36460359

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档