rotatelogs管理nohup日志_Tomcat, WebLogic及J2EE讨论区_Weblogic技术|Tuxedo技术|中间件技术|Oracle论坛|JAVA论坛|Linux/Unix技术|hadoop论坛_联动北方技术论坛  
网站首页 | 关于我们 | 服务中心 | 经验交流 | 公司荣誉 | 成功案例 | 合作伙伴 | 联系我们 |
联动北方-国内领先的云技术服务提供商
»  游客             当前位置:  论坛首页 »  自由讨论区 »  Tomcat, WebLogic及J2EE讨论区 »
总帖数
1
每页帖数
101/1页1
返回列表
0
发起投票  发起投票 发新帖子
查看: 5167 | 回复: 0   主题: rotatelogs管理nohup日志        下一篇 
John
注册用户
等级:大元帅
经验:90444
发帖:136
精华:2
注册:2011-7-21
状态:离线
发送短消息息给John 加好友    发送短消息息给John 发消息
发表于: IP:您无权察看 2011-8-15 14:15:03 | [全部帖] [楼主帖] 楼主

weblogic标准启动启动脚本产生的nohup文件会一直增长,要重启后才能生成新的nohup文件,其实可以用apache的rotatelogs命令来管理nohup日志。

对此,做了如下的尝试:

weblogic版本:10.3.3

操作系统:Red Hat Enterprise Linux AS release 4 (Nahant)

内核版本:2.6.9-5.EL

1、修改启动脚本如下

#!/bin/sh
# WARNING: This file is created by the Tony Xu..
LOG_DATE=`date +%Y-%m-%d-%H-%M`
#LOG_NAME=./AdminServer-$LOG_DATE.out
nohup ./startWebLogic.sh | /home/bea/apache/bin/rotatelogs ./AdminServer_${LOG_DATE}.log 5k &
tail -f ./AdminServer_${LOG_DATE}.log


注:5K的意思是每5K写一个日志。

启动后

[bea@mylinux bin]$ ./startAdmin.sh
tail: cannot open `./AdminServer_2010-08-16-11-07.log’ for reading: No such file or directory
tail: no files remaining


由于rotatelogs命令会给输出的日志增加后缀,所以在tail时会出问题。当然,不会影响日志的输出,如下

-rw-rw-r– 1 bea bea 2630 Aug 16 10:55 AdminServer_2010-08-16-10-55.log.1281970505
-rw-rw-r– 1 bea bea 475 Aug 16 10:55 AdminServer_2010-08-16-10-55.log.1281970510
-rw-rw-r– 1 bea bea 119 Aug 16 10:55 AdminServer_2010-08-16-10-55.log.1281970515
-rw-rw-r– 1 bea bea 4362 Aug 16 10:55 AdminServer_2010-08-16-10-55.log.1281970520
-rw-rw-r– 1 bea bea 211 Aug 16 10:55 AdminServer_2010-08-16-10-55.log.1281970525
-rw-rw-r– 1 bea bea 370 Aug 16 10:55 AdminServer_2010-08-16-10-55.log.1281970530
-rw-rw-r– 1 bea bea 1431 Aug 16 10:55 AdminServer_2010-08-16-10-55.log.1281970535
-rw-rw-r– 1 bea bea 18368 Aug 16 11:05 AdminServer_2010-08-16-10-55.log.1281971110
-rw-rw-r– 1 bea bea 2319 Aug 16 11:07 AdminServer_2010-08-16-11-07.log.1281971225
-rw-rw-r– 1 bea bea 1498 Aug 16 11:07 AdminServer_2010-08-16-11-07.log.1281971230


2、对启动脚本进行了修改

[bea@mylinux bin]$ vi startAdmin.sh
#!/bin/sh
# WARNING: This file is created by the Tony Xu..
#LOG_DATE=`date +%Y-%m-%d-%H-%M`
#LOG_NAME=./AdminServer-$LOG_DATE.out
nohup ./startWebLogic.sh | /home/bea/apache/bin/rotatelogs ./Admin_%Y-%m-%d-%H-%M.log 5k &
tail -f ./Admin_%Y-%m-%d-%H-%M.log


没有使用LOG_DATE变量,直接用时间来命名

启动后,日志还是无法用tail读取

[bea@mylinux bin]$ ./startAdmin.sh
tail: cannot open `./Admin_%Y-%m-%d-%H-%M.log’ for reading: No such file or directory
tail: no files remaining
-rw-rw-r– 1 bea bea 7586 Aug 16 11:24 Admin_2010-08-16-15-24.log
-rw-rw-r– 1 bea bea 2012 Aug 16 11:25 Admin_2010-08-16-15-25.log


这里可以看到日志加的时间戳跟当前系统的时间不一样。

总结:

1、如果不用变量来加时间戳,日志的时间戳会有问题

2、如果用变量来加时间戳,日志会多一个后缀

3、两种方法tail方法都尝试失败

先写这么多,待进一步测试吧。




赞(0)    操作        顶端 
总帖数
1
每页帖数
101/1页1
返回列表
发新帖子
请输入验证码: 点击刷新验证码
您需要登录后才可以回帖 登录 | 注册
技术讨论