首页 > 解决方案 > 如何将存储在文件系统上的kafka日志转换为csv

问题描述

我有一些使用 kafka 生成的日志,这些日志当前以 .log 格式存储在我的计算机上,如下所示:

在此处输入图像描述

我想将这些文件转换为带有消息和时间的 csv 记录。我知道这个问题可能看起来太模糊或不清楚,抱歉,但我真的在寻找实现这一目标的起点;

注意:这里链接到 isoblue 项目和数据集

标签: apache-kafka

解决方案


您正在寻找 DumpLogSegments 命令。但是,这不会输出 CSV,所以你必须解析一些东西

https://cwiki.apache.org/confluence/display/KAFKA/System+Tools#SystemTools-DumpLogSegment

转储日志段

这可以直接从日志文件中打印消息,或者仅验证日志的索引是否正确

bin/kafka-run-class.sh kafka.tools.DumpLogSegments

所需参数“[文件]”

Option Description
------ -----------
--deep-iteration if set, uses deep instead of shallow iteration
--files <file1, file2, ...> REQUIRED: The comma separated list of data and index log files to be dumped
--max-message-size <Integer: size> Size of largest message. (default: 5242880)
--print-data-log if set, printing the messages content when dumping data logs
--verify-index-only if set, just verify the index log without printing its content

推荐阅读