Linux之redhat系统日志的管理 (计算机的档案)

时间:2024-04-09 09:57:29

######系统日志管理########
1.rsyslog  

此服务时用来采集系统日志的,它不产生日志,只是起到采集作用

2.rsyslog的管理

/var/log/message 服务信息日志
/var/log/secure 系统登陆日志
/var/log/corn 定时任务日志
/var/log/maillog 邮件日志
/var/log/boot.log 系统启动日志

Linux之redhat系统日志的管理 (计算机的档案)
3.指定日志采集


什么类型的日志。什么级别的日志     /var/log/file  ##日志采集规则

日志类型分为:
auth                                   ##pam产生的日志
authpriv                             ##ssh,ftp等登陆信息的验证信息
cron                                   ##时间任务相关
kern                                   ##内核
lpr                                      ##打印
mail                                   ##邮件
mark(syslog)-rsyslog       ##服务内部的信息,时间标识
news                                 ##新闻组
user                                  ##用户程序产生的相关信息
uucp                                 ## unix to unix copy, unix主机之间相关的通讯
local  1~7                        ##自定义的日志设备

 

##日志级别分为:
debug                                                   ##有调式信息的,日志信息最多
info                                                       ##般信息的日志,最常用
notice                                                  #最具有重要性的普通条件的信息
warning                                              ##警告级别
err                                                      ##错误级别,阻止某个功能或者模块不能正长工作的信息
crit                                                     ##严重级别
alert                                                  ##需要立刻修改的信息
emerg                                              ##内核崩溃等严重信息
none                                                 ##什么都不记录

##注意;从上到下,级别从地道高,记录的信息越来越少
##详细的可以查看手册: man 3 syslog

4.日志的远程同步
在日志发送方:
vim /etc/rsyslog.conf
*.*     @172.25.254.118           ###@表示udp协议发送,@@表示tcp协议发送

systemctl restart rsyslog

在/etc/rsyslog.conf中配置加上   “*.*     @172.25.254.118“发送方配置文件配置完毕

进行 systemctl restart rsyslog使文件/etc/rsyslog.conf生效

Linux之redhat系统日志的管理 (计算机的档案)

在日志接收方:
vim /etc/rsyslog.conf
15  $ModLoad imudp     ##日志接受模块
16  $UDPServerRun 514  ##开启接受端口

原本在15行于16 行上述命令属于注释状态不生效,我们需要把“#”去掉

使此命令生效

Linux之redhat系统日志的管理 (计算机的档案)

修改完成后应进行以下操作
       systemctl         restart rsyslog   ## 重启服务
                                stop   firewalld  ##关闭火墙
                                disable  firewalld##设定火墙开机关闭

Linux之redhat系统日志的管理 (计算机的档案)


测试:
在发送方和接受方都清空日志文件
> /var/log/messages

在日志的发送方
logger  test

cat /var/log/messages

Linux之redhat系统日志的管理 (计算机的档案)

在日志接受方查看
cat /var/log/messages

Linux之redhat系统日志的管理 (计算机的档案)

 


5.日志采集格式的设定
$template WESTOS, “%timegenerated% %FROMHOST-IP% %syslogtag% %msg%\n"
%timegenerated%          ##显示日志时间
%FROMHOST-IP%        ##显示主机ip
%syslogtag%                  ##日志记录目标
\n                                       ##换行
%msg%  ##日志内容

Linux之redhat系统日志的管理 (计算机的档案)

*.*   /var/log/westos;WESTOS
cat /var/log/westos


6.时间同步服务
服务名称
chronyd

在服务段:
vim  /etc/chrony.conf
22 allow 172.25.254.0/24                                       ##允许那些客户端来同步本机时间
29 local stratum 10                                                 ##本机不同步任何主机的时间,本机作为时间元

Linux之redhat系统日志的管理 (计算机的档案)
systemctl restart chronyd
timedatectl set-timezone Asia/Shanghai               ##更改当前时区为东8区         

                                           时区显示
在客户端:
vim /etc/chrony.conf
server 172.25.254.218 ibust   ##本纪立即同步218主机的时间

Linux之redhat系统日志的管理 (计算机的档案)

systemctl restart chronyd
timedatectl set-timezone Asia/Shanghai ##更改当前时区为东8区
测试:
  chronyc  sources -v

此为服务端显示

Linux之redhat系统日志的管理 (计算机的档案)

可以看到服务端渐渐如下图

Linux之redhat系统日志的管理 (计算机的档案)

此为 客户端显示

Linux之redhat系统日志的管理 (计算机的档案)

客户端时间已经更改为CST ,于服务端一致 ,实现了时间的同步

Linux之redhat系统日志的管理 (计算机的档案)


7.timedatectl命令
timedatectl                                  ##管理系统时间
timedatectl   status                      ##显示当前时间信息

Linux之redhat系统日志的管理 (计算机的档案)
                      set-time                 ##设定当前时间

Linux之redhat系统日志的管理 (计算机的档案)
                      set-timezone         ##设定当前时区

Linux之redhat系统日志的管理 (计算机的档案)
                      set-local-rtc 0|1     ##设定是否使用utc时间

Linux之redhat系统日志的管理 (计算机的档案)
                      list-timezone         ##查看支持的所有时区

由于所有时区过多,就不一一显示,所用运用了“tail”进行了对于显示内容的拣选

选取的内容为查看支持的所有时区的后7行

Linux之redhat系统日志的管理 (计算机的档案)


8.journal 命令
1.journalctl   ##日志查看工具
          -n 3  ##查看最近三条日志

Linux之redhat系统日志的管理 (计算机的档案)
          -p  err ##查看错误日志

Linux之redhat系统日志的管理 (计算机的档案)
          -o  verbose ##查看日志的详细参数

Linux之redhat系统日志的管理 (计算机的档案)
          --since   ##查看从什么时间开始的日志
          --until   ##查看到什么时间为止的日志

下图为示例  关于查看从 2018-07-27 09:10:10到2018-07-27  21:46:17系统产生的日志

的最后4行

Linux之redhat系统日志的管理 (计算机的档案)


2.如何使用systemd-journald保存系统日志
默认systemd-journald时不保存系统日志到硬盘的
那么关机后再次开机只能看到本次开始之后的日志,

上次关机之前的日志时无法查看的


mkdir /var/log/journal
chgrp systemd-journal /var/log/journal
chmod g+s /var/log/journal
killall -1 systemd-journald

ls /var/log/journal
946cb0e817ea4_________

示例:演示

Linux之redhat系统日志的管理 (计算机的档案)