今天查看文件时,发现几个日志文件,在Finder中查看时,发现是zookeeper的日志文件。用sublime text打开发现这些日志文件都是二进制数据,那该如何查看内容呢?
方法一:
使用命令行
java -cp /usr/local/Cellar/zookeeper/3.4.10/libexec/zookeeper-3.4.10.jar:/usr/local/Cellar/zookeeper/3.4.10/libexec/lib/slf4j-api-1.6.1.jar org.apache.zookeeper.server.LogFormatter /Users/newbie/Documents/zookeeper/logs3/version-2/log.1000000001
主要三个部分,两个jar包(zookeeper.jar, slf4j-api.jar),一个类文件(LogFormatter),一个日志文件(log.1000000001)
ע:
两个jar包,可通过find / -name zookeeper*.jar (find / -name slf4j-api*.jar)在本地查找,然后替换到上面的命令中
在编辑器中写个main方法,运行代码
添加依赖
<dependency> <groupId>org.apache.zookeeper</groupId> <artifactId>zookeeper</artifactId> <version>3.4.8</version> </dependency>
main方法
import org.apache.zookeeper.server.LogFormatter; class demo { public static void main(String[] args) { try { LogFormatter.main(new String[] {"/Users/userName/Documents/zookeeper/logs2/version-2/log.800000001"}); } catch (Exception e) { e.printStackTrace(); } } }
运行结果:
文章来源: 查看zookeeper的二进制日志文件