weblogic 日志文件自动备份建议方案

weblogic 日志文件自动备份建议方案

问题描述

weblogic启动时,会指定平台日志写到特定的日志文件里。如:nohup sh startWebLogic.sh > ruledomain.log &。如果系统长时间不重启进行日志备份和清空的话日志文件会过大,导致日后查看会比较麻烦。且启动命令无法实现日志文件按大小或按日期自动备份以及清空配置。现提出以下二种建议方案。

建议方案

一、    更新服务后重启weblogic

由于目前生产环境是集群配置,可在每次更新服务后依次重启集群上各节点的weblogic,并且通过脚本按日期备份历史日志并重新生成新的日志文件。并且对在线环境不会有明显的影响。如:

mv ruledomain.log ruledomain.log.`date + %Y%m%d%H%M%S `

 nohup sh startWebLogic.sh 1 > ruledomain.log 2>&1 &

二、    增加外部脚本进行定时备份清空

首先添加一个外部脚本,其功能为对当前的ruledomain.log日志进行备份,并且清空ruledomain.log中的内容。然后在linux系统中增加一个定时任务,按规定的时间间隔去执行预先定义好的脚本,可达到按日期自动备份功能。时间最好在系统没有请求的时候执行脚本。具体操作如下:

1)          外部脚本内容/weblog9/scripts/logback.sh

#平台日志存放路径

logdir="/weblog9/bea/user_projects/ruledomain"

#取得系统当前时间

DATE=`date "+%Y%m%d%H%M"`

export DATE

cd ${logdir}

#备份当前平台日志,文件名为日志文件名后面拼上当前时间字符串

cp ruledomain.log ruledomain.log.${DATE}

 

sleep 2

#清空当前日志

true > ruledomain.log

 

sleep 2

echo '历史日志已经被备份,请查看最近一次备份的日志文件 ruledomain.log.'${DATE} > ruledomain.log

2)          增加定时任务

在命令行中输入:crontab –e,会显示当前系统所有的定时任务并为编辑状态,增加一个定时任务,将光标移动文件最后,输入如下语句:10 0 * * * sh /weblog9/scripts/logback.sh  然后保存退出即可生效。此命令设置的时间间隔为每天早上0点10分执行日志备份操作。

 

提示方法

/sbin/service crond start //启动服务
/sbin/service crond stop //
关闭服务
/sbin/service crond restart //
重启服务
/sbin/service crond reload //
重新载入配置

 

你可能感兴趣的:(其它收集)