当前位置: 首页 > news >正文

查看哪些IP在向kafka的broker生产消息

问题来源

数据采集端正在调试,相关人员告知已经将所有的推送端服务都停止了,为何kafka上相关topic还能不断接收到消息,要求排查是哪些ip还在推送数据。

问了一个DeepSeek,得到的答案是Kafka本身并不直接记录或提供推送数据的客户端IP信息。Kafka的设计理念是追求高吞吐量和低延迟,因此没有内置记录客户端IP的功能。

提供了三种方案:

1、使用网络层工具:使用netstat或lsof命令来查看与Kafka broker建立的连接,方法简单直接,但缺点是这些IP地址无法与Kafka的客户端ID直接关联起来,而且信息是实时的,无法追溯历史记录。

2、临时修改Kafka日志级别:修改log4j.properties文件,将kafka.network.Processor的日志级别设置为DEBUG并重启,这样Kafka会在日志中记录连接细节,包括客户端的IP地址,不过搜索结果提到这种方法会增加磁盘I/O和存储需求,不建议长期使用。

3、使用抓包工具:可以建立客户端ID与IP的关联关系,这种方法需要交叉分析,但能提供更丰富的信息。

可选方案

结合实际情况,在不影响线上业务的情况下,快速查出正在向broker发送消息的ip即可,故选择第一个方案,在kafka broker节点上使用 

netstat -anp | grep :9092 | grep ESTABLISHED

或者

lsof -i :9092 | grep java

这里最终使用 netstat,但是打印出来的消息较多,里面包含集群中的其他broker、消费端的ip,结合grep -v排除集群的其他ip和消费端ip 和 awk确定打印指定列

最终方案

netstat -anp | grep :9092 | grep ESTABLISHED  | grep -v '消费端IP' | grep -v '集群中其他节点IP'  | awk '{print $5}'

通过以上命令就可以快速找到推送端ip地址了

http://www.xdnf.cn/news/1031509.html

相关文章:

  • 智能穿戴平台与医疗AI融合发展路径研究
  • 基于springboot+servlet、jsp的潮服购物商城系统的设计与实现,论文7000字
  • Linux免驱使用slcan,使用方法以Ubuntu为例
  • Zookeeper 3.8.4 安装部署帮助手册
  • 数据库管理员密码重置指南:MySQL, Oracle, PostgreSQL
  • 【Flutter】性能优化总结
  • Flutter 与原生技术(Objective-C/Swift,java)的关系
  • Java-46 深入浅出 Tomcat 核心架构 Catalina 容器全解析 启动流程 线程机制
  • 负载均衡器:Ribbon和LoadBalance
  • NY248NY254美光科技闪存NY258NY261
  • [架构之美]解决Windows 10主机与Windows 10虚拟机之间无法拖拽复制问题
  • 使用 Flutter 在 Windows 平台开发 Android 应用
  • MATLAB提供的两种画误差矩阵的函数
  • 矩阵混剪系统源码搭建全流程技术解析,矩阵OEM
  • 篇章七 论坛系统——业务开发——前端
  • 山东大学软件学院项目实训:基于大模型的模拟面试系统项目总结(十)
  • PyTorch + MLFlow 实战:从零构建可追踪的深度学习模型训练系统
  • Javaweb学习——day3(Servlet 中处理表单数据)
  • GO语言---匿名函数
  • 2025-06-14【视觉】视频转化为图集
  • linux-部署go开发环境
  • 【Flutter】程序报错导致的灰屏总结
  • 华为云Flexus+DeepSeek征文 | 模型即服务(MaaS)安全攻防:企业级数据隔离方案
  • Elasticsearch高效文章搜索实践
  • git-build-package 工具代码详细解读
  • Spark DAG、Stage 划分与 Task 调度底层原理深度剖析
  • MySQL EXPLAIN 详解
  • 【LUT技术专题】4DLUT代码讲解
  • 【系统分析师】2009年真题:综合知识-答案及详解
  • 【卫星通信】卫星与5G深度融合的架构研究——释放非地面网络潜能,构建全球无缝连接【3GPP TR 23.700-19 V0.1.0 (2025-04)】