Linux的系统日志相关管理

1.系统日志管理

rsyslog	 

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

1rsyslog的管理
文件 用法
/var/log/messages 服务信息日志
/var/log/secure 系统登录日志
/var/log/cron 定时任务日志
/var/log/maillog 邮件日志
/var/log/boot.log 系统启动日志

以上各文件
在这里插入图片描述

2指定日志采集路径
格式 内容导向 操作目的
什么类型的日志 . 什么级别的日志 /var/log/file 日志采集

具体体现如下
在这里插入图片描述

2.日志类型分为

名称 来源
auth pam产生的日志
authpriv ssh,ftp等登录信息的验证信息
cron 时间任务相关
kern 内核
lpr 打印
mail 邮件
mark(syslog)-rsyslog 服务内部的信息,时间标识
news 新闻组
user 用户程序产生的相关信息
uucp unix to unix copy,unix主机之间相关的通讯
local 1~7

此类可在/etc/rsyslog.conf中找到
在这里插入图片描述

3.日志级别分为

名称 意义
debug 有调试信息的,日志信息最多
info 一般信息的日志,最常用
notice 最具有重要性的普通条件的信息
warning 警告级别
err 错误级别,阻止某个功能或者模块不能正常工作的信息
crit 严重级别,阻止整个系统或者整个软件不能正常工作的信息
alert 需要立刻修改的信息
emerg 内核奔溃等严重信息
none 什么都不记录

注意:从上到下,级别从低到高,记录的信息越来越少

详细的可以查看手册:man 3 syslog

具体体现如下
在这里插入图片描述

4.日志的远程同步

在日志发送方:

vim /etc/rsyslog.conf
*.*		@172.25.254.120					##"@"表示UDP协议发送,"@@"表示TCP协议发送
systemctl restart rsyslog

具体如下
在这里插入图片描述
在日志接收方:

vim /etc/rsyslog.conf 
 15 $ModLoad imudp						##日志接收模块
 16 $UDPServerRun 514					##开启接收端口
systemctl restart rsyslog.service
systemctl stop firewalld.service 		##关闭火墙
systemctl disable firewalld.service		##设定火墙开机启动

具体如下
在这里插入图片描述
在这里插入图片描述

测试
在发送方和接收方都清空日志文件
 > /var/log/messages
在日志接收方
logger hahahahahahaha
cat /var/log/messages 					##查看日志已经生成

发送信息“hahahahaha”
在这里插入图片描述
重启服务,关闭防火墙,清空日志,查看刷新后的日志
在这里插入图片描述
发送的信息已经收到
在这里插入图片描述

6.日志采集格式的设定

vim /etc/rsyslog.conf
$template LOGFMT, "%timegenerated% %FROMHOST-IP% %syslogtag% %msg% \n"

%timegenerated%			##显示日志时间
%FROMHOST-IP%			##显示主机ip
%syslogtag%			##日志记录目标
%msg%				##日志内容
\n				##换行

*.*                                                     /var/log/well;LOGFMT

cat /var/log/well

在这里插入图片描述
在这里插入图片描述

7.时间同步服务

服务名称
chronyd

##在服务端:

vim /etc/chrony.conf 
22 allow 172.25.254.170/24
29 local stratum 10
systemctl restart chronyd.service
date 11111111
Mon Nov 11 11:11:00 EST 2019
timedatectl set-timezone Asia/Shanghai

修改/etc/chrony.conf 文件
在这里插入图片描述
重启服务,修改时间
在这里插入图片描述
##在客户端

vim /etc/chrony.conf
server 172.25.254.170 iburst	 ##本机立即同步170主机的时间

在这里插入图片描述
#测试
#在客户端

[root@client_ssh ~]# chronyc sources -v
210 Number of sources = 1

  .-- Source mode  '^' = server, '=' = peer, '#' = local clock.
 / .- Source state '*' = current synced, '+' = combined , '-' = not combined,
| /   '?' = unreachable, 'x' = time may be in error, '~' = time too variable.
||                                                 .- xxxx [ yyyy ] +/- zzzz
||                                                /   xxxx = adjusted offset,
||         Log2(Polling interval) -.             |    yyyy = measured offset,
||                                  \            |    zzzz = estimated error.
||                                   |           |                         
MS Name/IP address         Stratum Poll Reach LastRx Last sample
===============================================================================
^? 172.25.254.170                0   7     0   10y     +0ns[   +0ns] +/-    0ns

在这里插入图片描述
timedatectl命令

命令 用法
timedatectl 管理系统时间
timedatectl status 显示当前时间信息
timedatectl set-time 设定当前时间
timedatectl set-timezone 设定当前时区
timedatectl set-local-rtc 0/1 设定是否使用utc时间
timedatectl list-timezone 查看支持的所有时区

管理系统时间
在这里插入图片描述
显示当前时间信息
在这里插入图片描述
设定当前时间
在这里插入图片描述
设定当前时区
在这里插入图片描述
查看支持的所有时区
在这里插入图片描述
journal命令

命令 用法
journalctl 日志查看工具
journalctl -n 3 查看最近3条日志
journalctl -p err 查看错误日志
journalctl -o verbose 查看日志的详细系数
journalctl --since 查看从什么时间开始的日志
journalctl --until 查看到什么时间为止的日志

日志查看工具
在这里插入图片描述
查看最近3条日志
在这里插入图片描述
查看错误日志
在这里插入图片描述
查看日志的详细系数
在这里插入图片描述
查看从什么时间开始的日志
在这里插入图片描述
查看到什么时间为止的日志
在这里插入图片描述
2.如何使用systemd-journald保存系统日志
默认systemd-journald是不保存系统日志到硬盘的
那么关机后再次开机只能看到本次开机之后的日志
上一次关机之前的日志是无法查看的

mkdir /var/log/journal
chgrp systemd-journal /var/log/journal
chomd g+s /var/log/journal
killall -1 systemd-journald
 ls /var/log/journal/
946cb0e817ea4adb916183df8c4fc817

在这里插入图片描述

系统日志管理目前整理了这些,记录于此以便后边学习回顾。

猜你喜欢

转载自blog.csdn.net/qq_43570369/article/details/86475376