定时清除Zookeeper日志【转】
命令格式:java -cp zookeeper.jar:log4j.jar:conf org.apache.zookeeper.server.PurgeTxnLog <dataDir> <snapDir> -n <count>
举例:
java -cp zookeeper.jar:log4j.jar:conf org.apache.zookeeper.server.PurgeTxnLog /log/xres/zookeeper/zk_trlog /www/xres/app/zk_data -n 10
定时清除zookeeper日志和快照数据非常简单,只需简单3步。
Step1:在zookeeper/bin目录建立purgeTxnLog.sh文件,内容如下所示:
1 #!/bin/sh
2
3 # Only follow symlinks if readlink supports it
4 if readlink -f "$0" > /dev/null 2>&1
5 then
6 ZOOBIN=`readlink -f "$0"`
7 else
8 ZOOBIN="$0"
9 fi
10 ZOOBINDIR=`dirname "$ZOOBIN"`
11
12 . "$ZOOBINDIR"/zkEnv.sh
13
14 #echo "Purge transaction log is starting..."
15 PATH="/usr/local/bin:/usr/local/sbin:/usr/sbin:/sbin:/usr/java/jdk1.6.0_21/bin:/usr/java/jdk1.6.0_21/jre/bin:/bin:/home/smdev/bin:$PATH"
16 export PATH
17 #echo "PATH=$PATH"
18 #echo "CLASSPATH=$CLASSPATH"
19
20 java -cp "$CLASSPATH" org.apache.zookeeper.server.PurgeTxnLog /log/xres/zookeeper/zk_trlog /www/xres/app/zk_data -n 10
21
22 #echo "Purge transaction log is finished."
Step2:创建cron任务。
$ crontab –e
任务内容如下:
0 */1 * * * sh /www/xres/app/zookeeper-3.3.3/bin/purgeTxnLog.sh >> /log/xres/zookeeper/log/purgeTxnLog.log
Step3:启动服务
$service crond start
到此为止,定时清除zookeeper日志和快照数据的全部工作已完成。
原文:http://chenlx.blog.iyunv.com/4096635/740112
页:
[1]