快速业务通道

利用 ubuntu 中 syslog 记录外部设备日志

作者 佚名技术 来源 Linux系统 浏览 发布时间 2012-05-11

要求:
利用 ubuntu 8.04 服务器版的 syslog 记录 juniper isg1000 日志,保留3个月.

1、允许 syslog 记录外部日志
修改 /etc/default/syslogd,把其中的 SYSLOGD="" 改为 SYSLOGD="-r"

2、定义外部日志类型
修改 juniper isg1000 日志定义,让其生成的日志定义为 local7,并向 ubuntu 服务器发送日志.

3、定义日志文件
考虑到日志文件比较多,在 /var/log 下新建 firewall 目录,用于保存日志文件.目录属性 755.
修改 /etc/syslog.conf,在其中增加下面一行:
local7.*
-/var/log/firewall/firewall.log

经过测试记录不成问题,但发现有下面几个严重问题.

4、重复记录问题
syslog 不光在 firewall.log 中记录,还在 /var/log 中的 syslog 和 messages 记录,日志很大,这下麻烦了.看看 syslog.conf 的 man,居然还有个 ! 功能,在 syslog.conf 文件中的 syslog 和 messages 定义前面加上了 !local7.*,感觉不错,syslog 不再向 syslog 和 messages 文件中记录设备日志了.

5、文件超大问题
syslog 记录的日志文件最大不超过2.5G,如果超过了,将停止记录.而 isg1000 4个小时左右的日志就达到这个数量了.设置日志轮转.在 /etc/logrotate.d 中新建 firewall 日志轮转控制文件,属性644,firewall 内如如下:

/var/log/firewall/firewall.log {
start 1000
rotate 512
maxage 100
size 1500M
compress
delaycompress
missingok

postrotate
/usr/bin/killall -HUP syslogd
endscript
}

以上内容简单解释:
日志文件需要保存3个月,且平均每天生成5个日志文件,设置最多保留512个,保留时间100天.
文件后缀编号从1000开始,比从1开始在排序上要好看.
文件超过1500M的时候轮转.
为了减少存储空间占用,轮转后的日志文件需要压缩,但不是轮转后马上压缩,而是轮转下一个的时候,再压缩,以防 syslog 继续写入当前文件时候丢失数据.

经过以上设置,感觉可以,谁知道使用几天,发现还有问题.

6、再次解决文件超大问题
firewall.log 文件依然是2G多,没有按照设定达到1500M的时候轮转,究竟为什么?仔细看 man logrotate ,呵呵,原来如此,logrotate 每天运行一次,等它运行的时候,firewall.log 早就达到2G了.怎么办,让它每小时运行一次试试看,把 /etc/cron.daily/logtotate 文件拷贝到 /etc/cron.hourly 中一份.效果不错,看来问题解决了. 拥有帝国一切,皆有可能。欢迎访问phome.net

7、解决日志文件不到1500M就轮转、且日志文件名没有按定义规则生成问题
经过若干天运行,发现个小小问题.若干文件不到设置的1500M就轮转了,文件名没有按定义方式生成,而是原始的 firewall.log.0 方式,但是它们都有共性,都是早上 6:47 生成的.让我想想,肯定是 cron 中 sysklogd 脚本搞的鬼.进入 /etc 中的各个 cron 子目录中,把下面这句或者类似的
logs=$(syslogd-listfiles)
加上 -s firewall.log 参数,改为
logs=$(syslogd-listfiles -s firewall.log)
让日志服务不再处理 firewall.log 日志.

8、解决其它问题
暂时没有.

拥有帝国一切,皆有可能。欢迎访问phome.net

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号