zoukankan      html  css  js  c++  java
  • Zookeeper日志文件&事务日志&数据快照

    Zookeeper持久化两类数据,Transaction以及Snapshot,logDir存储transaction命令,dataDir存储snap快照,其下子目录名称以version-2命名,子目录内部文件是分别以log.zxid和snapshot.lastProcessedZxid命名,每个目录下可以有很多个这样的文件,Transaction文件的文件名中zxid是文件中所有命令中zxid最小的zxid,而Snapshot中的lastProcessedZxid是最后一个操作的zxid。

    它们的路径配置在/opt/zookeeper/node0/zookeeper-3.4.6/conf的zoo.cfg文件中

    dataDir=/opt/zookeeper/node0/zookeeper-3.4.6/data

    dataLogDir=/opt/zookeeper/node0/zookeeper-3.4.6/log

    这里需要说明log4j日志文件&事务日志的不同,事物日志类似于mysql的binlog可以做恢复数据用

    查看事务日志发现是二进制的,那么怎么查看呢?

    使用Zookeeper自带的LogFormatter工具类转换

    [plain] view plain copy
     
    1. java -classpath .:lib/slf4j-api-1.6.1.jar:zookeeper-3.4.6.jar org.apache.zookeeper.server.LogFormatter log/version-2/log.400000001  


    使用Zookeeper自带的LogFormatter工具类查看snapshot

    [plain] view plain copy
     
    1. java -classpath .:lib/slf4j-api-1.6.1.jar:zookeeper-3.4.6.jar org.apache.zookeeper.server.SnapshotFormatter data/version-2/snapshot.b0000003d  

    可以看到一个snapshot文件是内存的全量快照,而不是像事物日志那样以增量的方式持久化到磁盘。

    而日志文件则是使用slf4g做为执行过程打印的日志,可以指定debug/info/warn/error的输出级别

    提示(定位到zookeeper根目录在输入命令)

  • 相关阅读:
    nyoj 228士兵杀敌(五)
    hdu2072 单词数
    nyoj123士兵杀敌(四)(树状数组)
    nyoj1092数字分隔(二)
    HDU1166:敌兵布阵(线段树单点更新,区间查询)
    nyoj269VF(dp)
    nyoj 860又见01背包(01背包)
    poj2184(01背包变形)
    HDU2159FATE(完全背包变形)
    HDU4508 完全背包
  • 原文地址:https://www.cnblogs.com/cyl048/p/8984661.html
Copyright © 2011-2022 走看看