一.日志管理简介
1.什么是日志
系统日志是记录系统中硬件、软件和系统问题的信息,同时还可以监视系统中发生的事件。用户可以通过它来检查错误发生的原因,或者寻找受到攻击时攻击者留下的痕迹。系统日志包括系统日志、应用程序日志和安全日志。
2.日志服务
在CentOS6.x中日志服务已经由rsyslogd取代了原先的syslogd服务。rsyslogd日志服务更加先进,功能更多。但是不论该服务都是用,还是日志文件的格式其实都是和syslogd服务相兼容的,所以学起来基本和syslogd服务一致。
3.rsyslogd的新特点
a>.基于TCP/IP网络协议传输日志信息;
b>.更安全的网络传输方式;
c>.有日志消息的及时分析框架;
d>.后台数据库;
e>.配置文件中可以写简单的逻辑判断;
f>.与syslog配置文件相兼容;
确定rsyslogd服务是否启动的方法如下:
4.常见的日志的作用
5.yum方式安装的日志
除了系统默认的日志之外,采用RPM方式(或yYUM方式)安装的系统服务也会默认把日志记录在“/var/log”目录中(源码包安装的服务日志是在源码包指定目录中)。不过这些日志不是由rsyslogd服务来记录和管理的,而在各个服务使用自己的日志管理文档来记录自身日志。
二.rsyslogd日志服务
1.基本日志格式包含以下四列:
a>.事件产生的事件;
b>.发生事件的服务器的主机名;
c>.产生事件的服务名或程序名;
d>.事件的具体信息;
2https://blog.51cto.com/u_/etc/rsyslog.conf 配置文件
定义格式如下:

服务名称[连接符号]日志等级 日志存放位置

b>.服务名称及其含义说明
c>.连接符号
连接符号可以识别为:
“*”代表所有日志等级,比如“authpriv.”代表authpriv认证信息服务产生的日志,所有的日志等级都记录。
“.”代表只要比后面等级高的(包含该等级)日志都记录下来。比如:“cron.info”代表cron服务产生的日志,只要日志等级大于等于inifo级别,就记录。
“.=”代表值记录所需等级的日志,其他等级的都不记录。比如:“.=emerg”代表任何服务日志产生的日志,只要记录是emerg等级就记录。这种用法极少,了解就好。
“.!”代表不等于,也就是除了该等级的日志外,其他等级的日志都记录。
d>.日志等级说明
e>.日志记录位置
日志文件绝对路径,如“/var/log/secure”
系统设备文件,如“/dev/lp0”
转发给远程主机,如”@192.168.3.210:5200”
用户名,如“root”
忽略或丢弃日志,如“~”
三.日志轮替
1.日志切割和日志替换
日志切割:
就是把旧的日志文件移动并改名,同时建立新的日志文件。那么如何命名呢?主要依靠/etc/logrotate.conf配置文件的” dateext ”(系统默认是有该参数的)。如果配置文件拥有“dateext”参数,那么日志就会用日期来作为日志文件的后缀,.如果配置文件啊当中没有“dateext”参数,那么日志文件就需要进行改名。
日志替换:
当旧的日志超过保存的范围之后,就会自动删除时间较早的日志。
2.常用的logrotate.conf参数详解
3.将Apache日志加入轮替
其实在一般情况下,只有源码安装的软件包才需要我们手动指定轮替,其他yum安装的或是rpm方式安装的全部都是默认的。相信玩Linux的老鸟们早就知道在“[root@yinzhengjie ~]# ls /var/log/”这个目录下回自动有轮替的文件生成,然而我们并没有配置,是因为rsyslogd服务是开机自启的,而且任务的完成依赖于周期性计划任务。
由于我的Apache是源码安装的,因此我需要手动指定轮替,生产环境中源码安装Apache之后,一定要做轮替,因为你不做轮替的话所有的日志会默认保存在一个文件中的,尤其是游戏公司的网站,一天的访问量大的话可能就得用到1G的磁盘大小。如果文件过大是很难进行查看的哟!下面是我配置细节

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/199161.html