【ELK日志采集】filebeat日志采集及错误Provided Grok expressions do not match field value解决

本文档介绍了在ELK环境中,使用filebeat进行日志采集时遇到的Grok表达式匹配错误问题。通过提供两种样例数据,展示了异常和正常日志格式。在解决问题的过程中,提出了两种解决方案:一是将不匹配的日志路由到错误索引,二是调整patterns规则。最后,给出了filebeat配置文件内容,并展示了最终的日志收集结果。
摘要由CSDN通过智能技术生成

1、文档使用工具:

        图形化:kibana_6.7.1

        数据存储:elasticsearch-6.7.1

        日志采集:filebeat-6.7.1 

以下模拟日志数据采集使用工具是:

    Kibana   >> Dev Tools >> Console

2、两种样例数据

样例1为异常数据格式

2022-02-16 18:15:11 10.10.11.2 os[7028]:  2022 RAC:root login  from 172.17.199.200

样例2为正常需求数据格式

2022-02-19 10:56:37 10.10.80.18 Severity:  Informational, Category: Storage, MessageID: CTL37, Message: A Patrol Read operation started for RAID Controller in Slot 7

3、初始定义pipeline规则

PUT /_ingest/pipeline/idrac-pipeline_v2?pretty
{
    "description" : "Pipeline for parsing idrac logs.",
    "processors" : [
      {
        "grok" : {
          "field" : "_source.message",
          "patterns" : [
            "%{MY_DATETIME:time} %{IPORHOST:server_ip} Severity: %{DATA:Severity}, Category: %{DATA:Category}, MessageID: %{DATA:MessageID}, Message: %{GREEDYDATA:Message}"
          ],
          "pattern_definitions" : {
            "MY_DATE" : "%{YEAR}[/-]%{MONTHNUM}[/-]%{MONTHDAY}",
            "MY_TIME" : "[0-9][0-9]:[0-9][0-9]:[0-9][0-9]",
            "MY_DATETIME" : "%{MY_DATE} %{MY_TIME}"
          }
        }
      },
      {
        "date" : {
          "field" : "time",
          "target_field" : "@timestamp",
          "formats" : [
            "yyyy-MM-dd HH:mm:ss||yyyy-MM-dd||yyyy/MM/dd||yyy
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值