AI智能
改变未来

linux第一阶段日志管理

一.简介:日志用来记录用户操作、系统运行状态等,是一个系统的重要组成部分。日志记录的好坏直接关系到系统出现问题时定位的速度,同时可以通过对日志的观察和分析,提前发现系统可能的风险,避免线上事故的发生。
二.rsyslog系统日志管理
1.处理日志的进程
第一类:rsyslogd: 系统专职日志程序,处理绝大部分日志记录,系统操作有关的信息,如登录信息,程序启动关闭信息,错误信息
第二类:httpd/nginx/mysql: 各类应用程序,可以以自己的方式记录日志.
观察 rsyslogd程序 ps aux |grep rsyslogd
2.常见的日志文件(系统、进程、应用程序)
网站日志管理
1.安装:yum install -y httpd
systemctl start httpd
systemctl stop firewalld
2.调整网络
ip a 查ip地址
重新启动网卡systemctl restart network
别人打开浏览器,输入你的服务器ip进行浏览
观察日志 tailf /var/log/httpd/access_log 会出现别人访问的记录
三.rsyslogd配置
1.相关程序 “ yum install rsyslog logrotate
启动程序:systemctl start rsyslog.service
观察日志程序的配置文件 rpm -qc rsyslog
四.主配置文件告诉rsyslogd进程什么日志,应该存到哪里。
vim /etc/rsyslog.conf
RULES:即规则,是一套生成日志,以及存储日志的策略。有三部分组成(由设备+级别+存放位置)
由FACILITY+LEVEL+FILE组成。
authpriv.* /var/log/secure(SSH信息)
mail.* -/var/log/maillog(发邮件)
cron.* /var/log/cron(创建任务)
这里有一个-符号, 表示是使用异步的方式记录, 因为日志一般会比较大。
*.info;mail.none;authpriv.none;cron.none /var/log/messages
系统日志排除了邮件,认证,计划日志。
facility设备 是系统对某种类型APP事件的定义。如AUTHPRIV是安全事件,CRON是计划任务事件。用来收集同类程序日志。
设备类型level级别规则示意图目的:通过绘图形式来理解日志工作机制。

关于程序和设备的联系问题,程序自身会决定将日志交给哪类设备。如SSH程序会选择安全类设备。这一点由开发者定义。
1.修改ssh程序的设备类型

把上图修改为下图

vim    /etc/ssh/sshd_config#SyslogFacility AUTHPRIVSyslogFacility LOCAL5

2.修改rsyslog程序的规则
vim /etc/rsyslog.conf
local5.* /var/log/serverzz
3.重启rsyslog程序和ssh程序
systemctl restart rsyslog.service sshd
4.使用其他终端,登录服务器,观察新日志文件。
五.logrotate日志轮转
1.简介:日志 记录了程序运行时各种信息。通过日志可以分析用户行为,记录运行轨迹,查找程序问题。可惜磁盘的空间是有限的。日志轮转就像飞机里的黑匣子,记录的信息再重要也只能记录最后一段时间发生的事。为了节省空间和整理方便,日志文件经常需要按!时间或!大小等维度分成多份,删除时间久远的日志文件。
2.工作原理是按照配置进行轮转。
配置文件 种类:主配置文件:/etc/logrotate.conf (决定每个日志文件如何轮转)
子配置文件夹:/etc/logrotate.d/* 自定义配置和配置管理
观察主配置文件和子文件
主配置文件介绍vim /etc/logrotate.conf

=全局设置==
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
配置轮转规则我们可以自行更改,记得备份原内容。

按日轮转,保留三份,赋予读写执行的权限。配置完成后,修改系统时间date 09232005
执行命令# /usr/sbin/logrotate -s /var/lib/logrotate/logrotate.status /etc/logrotate.conf

ls /var/log/yum* 查看 按日轮转出现多个文件。

赞(0) 打赏
未经允许不得转载:爱站程序员基地 » linux第一阶段日志管理