ELK错误1_Kafka->Logstash->Elasticsearch过程,Elasticsearch报grokparsefailure错误

本文介绍了在Kafka->Logstash->Elasticsearch的数据传输过程中遇到的grokparsefailure错误。错误源于Logstash配置文件中的字段定义与实际发送数据的字段不匹配。修正字段匹配后,实验成功。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

实验背景:

Kafka->Logstash->Elasticsearch实验环境安装完成;

Logstash的启动文件设置有过滤机制;

Logstash启动文件:

input {
kafka {
  zk_connect => "10.10.16.252:2181,10.10.16.253:2181,10.10.16.249:2181"
  group_id => "test-consumer-group"
  topic_id => "MyPattern"
  reset_beginning => false # boolean (optional), default: false
  consumer_threads => 5  # number (optional), default: 1
  decorate_events => true # boolean (optional), default: false
  }
}
filter{
  
  grok{
  
     patterns_dir => "./patterns"
     match => { "message" => ["#字段内容#"]}
  }

}


output {
   
   if "jsonparsefailure" not in [tags]{
    
      elasticsearch{
 
         host => "localhost"
     }
   }
}

发送数据的代码如下所示:

package com.test.kafka;

import java.util.Properties;
import kafka.javaapi.producer.Producer;
import kafka.producer.KeyedMessage;
import kafka.producer.ProducerConfig;

public class KafkaProduce {

	public static void main(String[] args) {

		 Properties props = new Properties();
		 props.setProperty("metadata.broker.list","10.10.16.253:9092,10.10.16.252:9092,10.10.16.249:9092");   
		 props.setProperty("serializer.class","kafka.serializer.StringEncoder");
		 props.put("request.required.acks","-1");		  
		 ProducerConfig config = new ProducerConfig(props); 
		 
		 Producer<String,String> producer = new Producer<String, String>(config);
		 KeyedMessage<String, String> data = new KeyedMessage<String,String>("MyPattern","数据内容");
		 				 
		 producer.send(data);
		 
		 producer.close();
	}
}



发送给Logstash后,使用ES搜索,开始时,报一下错误:

发送第一个红框内的数据,结果报第二个红框内的错误。

寻找错误,经过对比,发现,代码中“数据内容”的字段比配置文件中“数据内容”中的字段少一个,所以报错。

改正,重新进行实验,结果正确。

进行验证:

字段对应,则正确;代码中少一个字段,则报上面的错。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值