用strings命令查看kafka-log内容 过滤二进制编码

kafka的log内容格式还不没怎么了解,想快速浏览消息内容的话,除了使用它自带的kafka-console-consumer.sh脚本,还可以直接去看log文件本身,不过内容里有部分二进制字符,通过命令看的话会有乱码。

strings 命令可以过滤掉二进制编码,但默认它也会过滤掉中文字符,只留有英文字符。要用它的-e S参数可以同时过滤出中文或英文字符,但仍会包含了小部分的二进制编码,可以在通过iconv去掉一下,能大致看到消息内容:

 

$ cat log-strings.sh
#!/bin/bash

PROG_NAME=$0
LOG_FILE=$1

if [ -z "$LOG_FILE" ];then
  echo "Usage: $PROG_NAME logfile"
  exit 1
fi

strings -e S "$LOG_FILE" | iconv -c -f "UTF-8" -t "UTF-8"

 

作者:熊哥club
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明。文章部分内容来源网络,如有版权问题,请留言告知,博主会尽快删除.
微信扫描下方二维码关注【熊哥club】,回复1024获取程序员必备IT电子书,回复java获取全套学习资源
posted on 2018-05-21 12:17  熊哥club  阅读(1445)  评论(0编辑  收藏  举报

熊哥club Fork me on GitHub