ELK |日志文件grok过滤格式未推入弹性搜索

时间:2019-05-29 05:51:17

标签: logstash elastic-stack logstash-grok logstash-configuration filebeat

我有以下格式的日志文件可以提取到弹性搜索中,但是经过logstash过滤的数据没有推送到弹性搜索中。

相同的grok过滤配置能够从kibana devtools中获取

示例日志文件: OCDE-2019-05-22 13:24:34.000错误org.ramyam.ocde.task.NBALookupTask.checkResponsesToBeProcessed-checkResponsesToBeProcessed开始时间:IST 2019年5月22日星期三13:24:34

Filebeat配置:

filebeat.inputs: -类型:日志   已启用:true   路径:     -C:\ data \ logs \ OCDE.log   document_type:ocde

logstash配置:

input {
    file {
            type => "ocde"
            path => "C:\data\logs\OCDE.log"
    }
  beats {
    port => 5044
    ssl  => false
  }
}

filter {
        grok {
            match => [ "message" ,'%{DATA:moduleName} - %{TIMESTAMP_ISO8601:loggerTime}\s+%{LOGLEVEL:level}\s+%{JAVACLASS:className}\.%{DATA:methodName} - %{GREEDYDATA:loggermsg}}']
        }
}

output {
        if [type]=="ocde" 
        {
            elasticsearch
              {
                hosts => ["localhost:9200"]
                #manage_template => false
                index => "enliven_be_log_yyyymmdd"
                document_type=> ocde
            }   
        }
}

我期望弹性搜索中的上述配置产生以下结果

{
  "level": "ERROR",
  "loggerTime": "2019-05-22 13:24:34.000",
  "moduleName": "OCDE",
  "methodName": "checkResponsesToBeProcessed",
  "className": "org.ramyam.ocde.task.NBALookupTask",
  "loggermsg": "checkResponsesToBeProcessed started : Wed May 22 13:24:34 IST 2019"
}

任何人都可以解释或分享我缺少的示例配置

2 个答案:

答案 0 :(得分:0)

您可以尝试以下grok模式-

%{DATA:moduleName}%{SPACE}*-%{SPACE}*%{TIMESTAMP_ISO8601:loggerTime}%{SPACE}*%{LOGLEVEL:level}%{SPACE}*%{JAVACLASS:className}\.%{DATA:methodName}%{SPACE}*-%{SPACE}*%{GREEDYDATA:loggermsg}

答案 1 :(得分:0)

从以下位置更改您的傻瓜:

%{DATA:moduleName} - %{TIMESTAMP_ISO8601:loggerTime}\s+%{LOGLEVEL:level}\s+%{JAVACLASS:className}\.%{DATA:methodName} - %{GREEDYDATA:loggermsg}}

至:

%{DATA:moduleName} - %{TIMESTAMP_ISO8601:loggerTime}\s+%{LOGLEVEL:level}\s+%{JAVACLASS:className}\.%{DATA:methodName} - %{GREEDYDATA:loggermsg}

要对此进行验证,请使用http://grokdebug.herokuapp.com/并将您提供的日志消息粘贴到“ enter image description here

您的模式效果很好,最后您只剩下了一个括号。