- 最新动态
- 功能总览
- 产品介绍
- 计费说明
- 快速入门
-
用户指南
- 授权IAM用户使用云日志服务LTS
- 购买LTS资源包
- 日志管理
-
日志接入
- 日志接入概述
- 使用ICAgent插件采集日志
-
使用云服务接入LTS
- 云服务接入LTS概述
- 应用运维管理AOM接入LTS
- API网关APIG接入LTS
- Astro轻应用接入LTS
- 云堡垒机CBH接入LTS
- 内容分发网络CDN接入LTS
- 云防火墙CFW接入LTS
- 云审计服务CTS接入LTS
- 分布式缓存服务DCS接入LTS
- 文档数据库服务DDS接入LTS
- DDoS防护 AAD接入LTS
- 分布式消息服务Kafka版接入LTS
- 数据复制服务DRS接入LTS
- 数据仓库服务GaussDB(DWS)接入LTS
- 弹性负载均衡 ELB接入LTS
- 企业路由器ER接入LTS
- 函数工作流FunctionGraph接入LTS
- 云数据库GaussDB接入LTS
- 图引擎服务GES接入LTS
- 云数据库 TaurusDB接入LTS
- 云数据库GeminiDB接入LTS
- 云数据库GeminiDB Mongo接入LTS
- 云数据库GeminiDB Cassandra接入LTS
- 华为HiLens接入LTS
- 设备接入IoTDA接入LTS
- AI开发平台ModelArts接入LTS
- MapReduce服务MRS接入LTS
- 云数据库RDS for MySQL接入LTS
- 云数据库RDS for PostgreSQL接入LTS
- 云数据库RDS for SQLServer接入LTS
- 应用与数据集成平台ROMA Connect接入LTS
- 视频直播Live接入LTS
- 消息通知服务SMN接入LTS
- 安全云脑SecMaster接入LTS
- 对象存储服务OBS接入LTS(邀测)
- 虚拟私有云VPC接入LTS
- Web应用防火墙WAF接入LTS
- 使用API接入LTS
- 使用SDK接入LTS
- 跨IAM账号接入LTS
- 使用KAFKA协议上报日志到LTS
- 使用Flume采集器上报日志到LTS
- 使用匿名写入采集日志
- 自建中间件
- 日志搜索与分析(默认推荐)
- 日志搜索与分析(管道符方式-邀测)
- 日志可视化
- 日志告警
- 日志转储
- 日志消费与加工
- LTS配置中心管理
- 查看LTS审计事件
- 最佳实践
- 开发指南
- API参考
- SDK参考
- 场景代码示例
- 常见问题
- 视频帮助
- 文档下载
- 通用参考
链接复制成功!
中间件-Kafka日志
Kafka的系统日志(也称为应用日志或运行日志)主要记录了Kafka集群在运行过程中产生的各种信息,例如启动和停止信息、配置加载、节点连接和断开、请求处理等。
采集方法
使用ICAgent采集日志,接入前请参考安装ICAgent(区域内主机)完成ICAgent安装。然后再通过采集ECS-文本日志方式将日志上报至LTS服务,详细操作请参考云主机ECS文本日志接入LTS。
Kafka日志示例以及字段含义
由于Kafka本身并不直接提供系统日志的详细格式或字段定义,因为这部分可能会根据使用的日志框架而有所不同,例如 Log4j,所以本文提供一个基于典型日志框架(如 Log4j)的示例,并对其中的一些通用字段进行解析。
- 系统日志示例。
2023-10-23 15:33:45,123 INFO [KafkaServer id=0] onBrokerStartup (KafkaServer.scala:220) starting 2023-10-23 15:33:45,567 WARN [ReplicaManager broker=0] topic=my_topic partition=0 Broker 1 disconnected; no more in-sync replicas 2023-10-23 15:33:46,987 ERROR [Controller id=0] onControllerFailover (KafkaController.scala:678) Error during controller failover java.lang.RuntimeException: Failed to elect new leader for partition [my_topic,0] at kafka.controller.KafkaController $$ anonfun$onControllerFailover$1 $$ anonfun$apply$mcV$sp$1.apply$mcV$sp(KafkaController.scala:629) at kafka.controller.KafkaController $$ anonfun$onControllerFailover$1 $$ anonfun$apply$mcV$sp$1.apply(KafkaController.scala:609) at kafka.controller.KafkaController $$ anonfun$onControllerFailover$1 $$ anonfun$apply$mcV$sp$1.apply(KafkaController.scala:609) ... (stack trace continues)
- 字段含义。
在上面的示例中,第一个日志条目是KafkaServer在启动时产生的信息日志;第二个是一个警告,表明某个分区的一个同步副本(in-sync replica)与broker断开了连接;第三个是一个错误日志,表明在控制器故障转移期间发生了错误,并尝试为某个分区选择新的领导者时失败了。
表1 字段含义 字段
说明
示例
时间戳
日志条目的生成时间。
2023-10-23 15:33:45,123
日志级别
如INFO、WARN、ERROR等,表示日志条目的重要性或紧急性。
INFO
线程或进程信息
提供了产生日志的上下文,如KafkaServer的ID或ReplicaManager的broker ID。
[KafkaServer id=0]
日志来源
指示了日志条目的来源函数和代码位置。
onBrokerStartup (KafkaServer.scala:220)
日志内容
记录了具体的日志信息,可能是描述性的文本、错误消息、堆栈跟踪等。
starting
日志位置
默认情况下,Kafka的系统日志文件可能位于Kafka安装目录的logs子目录下,但具体位置可能会因配置而异。以下是一些常见的方法用于找到Kafka的系统日志文件位置:
- 查看Kafka安装目录。
首先,检查Kafka的安装目录。通常,系统日志文件会存储在安装目录下的一个名为logs的子目录中。例如,如果Kafka安装在/usr/local/kafka,则日志文件可能位于/usr/local/kafka/logs。
- 检查Kafka配置文件:
在${KAFKA_HOME}/bin/kafka-run-class.sh中修改Kafka的logs目录。
# Log directory to use if [ "x$LOG_DIR" = "x" ]; then # LOG_DIR="$base_dir/logs" LOG_DIR="/data/kafka_logs" fi