指定Zookeeper日誌輸出路徑,並按照日期輪循輸出

概述

在啓動zookeeper時,默認zookeeper的日誌輸出信息都打印到了執行啓動命令時當前所在的目錄下zookeeper.out文件中。顯然,這樣zookeeper的日誌輸出路徑沒法控制,因爲我們不確定每次執行啓動命令的路徑在哪裏。另外,默認zookeeper的日誌輸出到日誌文件是不會自動輪循切割的,這對於之後我們查看日誌和管理日誌極爲不方便。所以,現在需要我們修改zookeeper日誌輸出方式。

第一步:修改$ZOOKEEPER_HOME/bin目錄下的zkEnv.sh文件

此文件中的變量ZOO_LOG_DIR可以指定想要輸出到哪個目錄;
此文件中的變量ZOO_LOG4J_PROP可以規定讓日誌自動輪循與否(比如:按照日誌大小輪循、按天進行輪循等)。

[root@zookeeper bin]# pwd
/home/zookeeper-3.4.12/bin
[root@zookeeper  bin]# ll
總用量 44
-rwxr-xr-x. 1 xzds 1000  232 3月  27 2018 README.txt
-rwxr-xr-x. 1 xzds 1000 1937 3月  27 2018 zkCleanup.sh
-rwxr-xr-x. 1 xzds 1000 1056 3月  27 2018 zkCli.cmd
-rwxr-xr-x. 1 xzds 1000 1534 3月  27 2018 zkCli.sh
-rwxr-xr-x. 1 xzds 1000 1759 3月  27 2018 zkEnv.cmd
-rwxr-xr-x. 1 xzds 1000 2696 3月  27 2018 zkEnv.sh               ### 修改底層啓動腳本 ###
-rwxr-xr-x. 1 xzds 1000 1089 3月  27 2018 zkServer.cmd
-rwxr-xr-x. 1 xzds 1000 6773 3月  27 2018 zkServer.sh
-rw-r--r--. 1 root root 4822 7月  15 10:03 zookeeper.out

在這裏插入圖片描述
在這裏插入圖片描述

第二步:修改$ZOOKEEPER_HOME/bin目錄下的zkServer.sh文件

找到 “_ZOO_DAEMON_OUT="$ZOO_LOG_DIR/zookeeper.out”(規定日誌文件的名稱)
在這裏插入圖片描述

# _ZOO_DAEMON_OUT="$ZOO_LOG_DIR/zookeeper.out
  _ZOO_DAEMON_OUT="$ZOO_LOG_DIR/zookeeper.log

第三步:修改$ZOOKEEPER_HOME/conf/log4j.properties文件

  1. 將zookeeper.root.logger的值與剛剛配置的文件的ZOO_LOG4J_PROP變量的值保持一致;
zookeeper.root.logger=INFO,RollingFile    ### 開啓日誌輪循功能 ###
  1. 將log4j.appender.ROLLINGFILE=org.apache.log4j.RollingFileAppender 修改成log4j.appender.ROLLINGFILE=org.apache.log4j.DaliyRollingFileAppender
# log4j.appender.ROLLINGFILE=org.apache.log4j.RollingFileAppender   ### 日誌按大小輪循 ###
  log4j.appender.ROLLINGFILE=org.apache.log4j.DaliyRollingFileAppender   ### 日誌按天輪循 ###

第四步:重啓zookeeper並檢查是否生效

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章