日志管理分为:
rsyslog 系统日志管理
logrotate 日志轮转(分割管理日志,删除旧日志)
系统日志作用:排错、分析
一、处理日志进程管理
rsyslogd 系统日志管理,处理绝大部分日志记录,系统操作有关的信息,如登录信息,程序启动关闭信息,错误信息。
观察rsyslogd 进程 ps aux | grep rsyslogd
1、常见的日志文件:
tail -10 /var/log/messages 系统主日志文件
tail -10 /var/log/secure 认证、安全
tail -10 /var/log/yum.log yum
tail -10 /var/log/maillog 跟邮件Postfix 相关
tail -10 /var/log/cron 跟cron、at进程产生的日志
tail -10 /var/log/dmsg 和系统启动相关
tail -10 /var/log/audit/audit.log 系统审计日志
tail -10 /var/log/mysqld.log MySQL
tail -10 /var/log/xferlog 和访问FTP服务器相关
tail -10 /var/log/wtmp 当前登录用户
tail -10 /var/log/btmp 最近登录用户
tail -10 /var/log/lastlog 所有用户登录情况(命令lastlog)
2、网站日志管理:
① 安装及调试
yum install -y httpd 安装httpd
systemcel start httpd 系统启动httpd
systemctl stop firewalld 关闭防火墙
② 调整网络
systemctl restart network 重新启动网卡
ip a 查看自己的ip
在浏览器输入ip 进行浏览。
观察日志:tailf /var/log/httpd/access_log
二、rsyslogd 配置
相关程序:yum install rsyslog logrotate
启动程序:systemctl start rsyslog.service
相关文件:rpm -qc rsyslog
/etc/logrotate.d/syslog rsyslog 的主配置文件(关键)
/etc/rsyslog.conf rsyslog 的子配置文件(关键)
/etc/sysconfig/rsyslog 和日志轮转/切割相关(任务二)
1、主配置文件
vim /etc/rsyslog.conf 编辑主配置文件
主配置文件主要构成:RULES、facility设备、level级别
RULES:即规则,,有三部分组成(由设备+级别+存放位置),是一套生成日志,以及存储日志的策略。
authpriv.* /var/log/secure(SSH信息)
mail.* -/var/log/maillog(发邮件)
cron.* /var/log/cron(创建任务)
facility是系统对某种类型APP事件的定义。如AUTHPRIV是安全事件,CRON是计划任务事件。用来收集同类程序日志。
2、设备类型:
LOG_SYSLOG syslogd 自身产生的日志
LOG_AUTHPRIV 安全认证
LOG_CRON 调度程序(cron and at)
LOG_USER(default) 用户相关
LOG_DAEMON 后台进程
LOG_FTP 文件服务器 ftp daemon
LOG_KERN 内核设备kernel messages
LOG_LOCAL0 through LOG_LOCAL7 用户自定义设备
3、level级别:
LOG_EMERG 紧急,致命,服务器无法继续运行,如配置文件丢失
LOG_ALERT 报警,需要立即处理,如磁盘使用空间95%
LOG_CRIT 致命行为
LOG_ERR 错误行为
LOG_WARNING 警告信息
LOG_NOTICE 普通,重要的标准信息
LOG_INFO 标准信息
LOG_DEBUG 调试信息,排错所需,一般不建议使用
三、logrotate 日志轮转
日志轮转:为了节省空间和整理方便,日志文件经常需要按!时间或!大小等维度分成多份,删除时间久远的日志文件。
工作原理:按照配置进行轮转。
1、配置文件种类:
主配置文件:/etc/logrotate.conf
子配置文件夹:/etc/logrotate.d/* (目录文件下文件,用户可自定义添加)
2、主配置文件内容介绍
(子配置文件优先执行,且针对部分文件执行)
=========全局设置==========
weekly //轮转的周期,一周轮转
rotate 4 //保留4份
create //轮转后创建新文件
dateext //使用日期作为后缀
#compress //是否压缩
include /etc/logrotate.d //包含该目录下的子配置文件
==========子配置文件========
/var/log/wtmp { //对某日志文件设置轮转的方法
monthly //一月轮转一次
minsize 1M //最小达到1M才轮转,monthly and minsize(同时达到两个条件)
create 0664 root utmp //轮转后创建新文件,并设置权限
rotate 1 //保留一份
}
/var/log/btmp {
missingok //丢失不提示
monthly //每月轮转一次
create 0600 root utmp //轮转后创建新文件,并设置权限
rotate 1 //保留一份
}
3、yum 日志轮转实例
(轮转的目标文件/var/log/yum.log)
vim /etc/logrotate.d/yum
/var/log/yum.log { 要对哪个文件轮转
missingok //丢失不执行
#notifempty //空文件不论转 (前面加#的,均为注释,不生效 ,可替代更换、删除#生效等)
#maxsize 30k //达到30k轮转, daily or size
#yearly //或者一年一轮转
daily //缩小周期到1天
rotate 3 //轮转保留3次
create 0777 root root 创建新文件权限
}