linux日志管理

一. 日志管理

1.journald

服务名称:systemd-journald.service (直接去看日志,不采集)
无法查看关机之前的日志,只能查看当前启动日志(存放在内存)

systemctl status systemd-journald.service(查看服务是否启动)

linux日志管理_第1张图片

当服务启动后可以用journalctl查看日志
只能查看启动之后的日志

linux日志管理_第2张图片

默认日志存放路径: /run/log

在这里插入图片描述

2. journalctl 命令的用法

2.1 日志的显示

journalctl -n 3 日志的最新 3 条
- - since “2020-08-02 18:47:00” 显示 18:47 后的日志
- - until “2020-08-02 18:49:00” 显示日志到 18:49

显示最新三条日志
linux日志管理_第3张图片

显示固定时间中的日志

linux日志管理_第4张图片

2.2 日志的显示模式(显示什么)

- o +下面参数 设定日志的显示方式
short 经典模式显示日志
verbose 显示日志的全部字节
export 适合传出和备份的二进制格式
json js 格式显示输出

journalctl -o short  经典模式显示日志
linux日志管理_第5张图片

journalctl -o verbose  显示日志的全部字节

linux日志管理_第6张图片

journalctl -o export  显示二进制格式

linux日志管理_第7张图片

journalctl -o json  js格式显示输出

linux日志管理_第8张图片

- p + 以下参数 显示制定级别的日志
0 emerg 系统的严重问题日志
1 alert 系统中立即要更改的信息
2 crit 严重级别会导致系统软件不能正常工作
3 err 程序报错
4 warning 程序警告
5 notice 重要信息的普通日志
6 info 普通信息
7 debug 程序拍错信息
部分命令的演示:

journalctl -p err 程序报错

linux日志管理_第9张图片

journalctl -p emerg 系统中严重问题日志

在这里插入图片描述

journalctl -p warning 程序警告

linux日志管理_第10张图片

journalctl -p notice 重要信息的普通日志

linux日志管理_第11张图片

journalctl -p crit / info 严重级别的日志/普通日志
crit 出现时要马上处理

linux日志管理_第12张图片

-F PRIORITY ##查看可控日志级别

journalctl -F PRIORITY 系统的可控日志级别
linux日志管理_第13张图片

- u sshd 指定查看sshd服务

journalctl -u sshd / firewalld   查看指定的服务
linux日志管理_第14张图片

–disk-usage ##查看日志大小

查看日志大小

linux日志管理_第15张图片

–vacuum-size=1G 设定日志存放大小

设定日志存放内存大小

linux日志管理_第16张图片

–vacuum-time=1W 日志在系统中最长存放时间

日志在系统中存放最常时间

在这里插入图片描述

-f 监控日志

监控系统日志(有新日志出现会在下方显示)

linux日志管理_第17张图片

journalctl _PID=10924 _SYSTEMD _UNIT=sshd.service
查看相应参数的日志服务
journalctl -o varbose中查看参数

2.journal 永久存放日志

搭建所需要的实验环境:

mkdir   /var/og/journal 建立相关目录
chgrp systemd-journal /var/log/journal/ 给目录的用户组改为systemd-journal
chgrp g+s /var/log/journal/ 给目录强制位权限
chmod g=rwx /var/log/journal/ 给用户组可写权限
ls -ld /var/log/journal/ 查看目录最终的权限

linux日志管理_第18张图片

设置完成之后重启一下服务

systemctl  restart  systemd-journald.service

设置完成后reboot,再次输入journalctl你将发现之前的日志会被保存

linux日志管理_第19张图片

/run/log/journal:系统默认存放路径(重启之后将会被清空)

/var/log/journal:设置的永久路径(重启之后日志还在)
建议使用完成之后删除这个目录(缓存的数据会占用大量空间)

2. rsyslog

2.1 采集日志(rsyslog)

而不是查看日志

服务名称:rsyslog.service
日志存放位置:

/var/log/messages 系统服务日志,常规信息,服务报错
/var/log/secure 系统认证信息日志
/var/log/maillog 系统邮件日志信息
/var/log/cron 系统定时任务信息
/var/log/boot.log 系统启动日志信息

系统的服务认证信息日志:

配置文件:/etc/rsyslog.conf

2.2 自定义日志采集路径

编辑配置文件:
vim /etc/rsyslog.conf/

日志类型 . 日志级别                  存放路径

linux日志管理_第20张图片

vim /etc/rsyslog.conf 编辑配置文件
编辑完成后systemctl restart rsyslog.service(重启rsyslog服务)
/var/log/zyj这个存放路径会自己加载出来

linux日志管理_第21张图片

日志类型

auth 用户认证
authpriv 服务认证
cron 时间任务
kern 内核类型
mail 邮件
news 系统更新信息
user 用户

日志级别

debug 程序排错信息
info 程序常规运行信息
notice 重要信息的普通日志
waring 程序警告
err 程序报错
crit 严重级别会导致系统软件不能正常工作
alert 系统中立即要更改的信息
emerg 系统的严重问题日志
none 不采集

2.3 如何更改日志采集格式

默认格式:
    日志时间    日志来源    日志生成的程序    日志内容

linux日志管理_第22张图片

修改日志采集格式:vim /etc/rsyslog.conf

zyj: 格式名称
%FROMHOST-IP%: 日志来源主机 IP
%timegenerated%: 日志生成时间
%syslogtag%: 日志生成服务
%msg%: 日志内容
\n: 换行

格式名称可以自己设置,没有强制要求

修改完成之后:systemctl restart rsyslog.service 重启rsyslog服务

linux日志管理_第23张图片

设定日志采集格式的应用

*.*                  /var/log/xue;zyj 新采集格式

module(load=“builtin:omfile” Template=“WESTOS_FORMAT”)
默认采集格式

每一次设置完成之后都要记得重新启动rsyslog服务,切记

linux日志管理_第24张图片

原格式与新格式的对比

要是想默认设置为自己设置的格式
只需修改默认的为自己设置的就好了, 建议复制修改(当想恢复时更加方便)

linux日志管理_第25张图片

二.日志的远程同步

日志的三种远程传输方式:UDP(速度快) TCP(稳定) RELP

这个实验至少需要两个主机进行

@ 表示使用 udp 传输日志
@@ 表示使用 tcp 传输日志

实验环境的搭建:
分别先确定两台主机的IP为多少:
zyj_server=192.168.1.130(日志接收方)

在这里插入图片描述

zyj_cilent=192.168.1.110(日志发送方)

在这里插入图片描述

编辑日志发送方的vim /etc/rsyslog.conf

*.*                   @192.168.1.130
将所有日志给192.168.1.130这台主机发一份

systemctl restart rsyslog.servicer     重新启动服务

linux日志管理_第26张图片

编辑日志接收方的vim /etc/rsyslog.conf

打开日志接收方的接收端口(如下图所示)

systemctl restart rsyslog.service      重新启动服务

linux日志管理_第27张图片

注意:日志接收方的火墙要关闭

实验效果

为了方便观看实验效果需要清空日志

日志发送方发送的日志

linux日志管理_第28张图片

日志接收方接收到了来自日志发送方的日志

linux日志管理_第29张图片

查询端口:

netstat -antlupe | grep rsyslog

在这里插入图片描述

三. timedatectl

查看时间:

linux日志管理_第30张图片

timedatectl set-time “2020-02-13 10:41:55” 设定系统时间
timedatectl list-timezones 显示系统的所有时区
timedatectl set-timezone “Asia/Shanghai” 设定系统时区
timedatectl set-local-rtc 0|1 设定系统时间计算方式
0 表示使用 utc 时间计算方式

命令演示:

设置系统时间

linux日志管理_第31张图片

显示系统的所有时区

linux日志管理_第32张图片

设置系统时间计算方式

linux日志管理_第33张图片

四. 时间同步服务

服务名称: chronyd.service
配置文件: /etc/chrony.conf

企业6之前用的为ntp服务

设置实验环境:

编辑配置文件vim /etc/chrony.conf

时间源设置:

vim /etc/chrony.conf

linux日志管理_第34张图片

打开服务:
systemctl enable --now chronyd.service

linux日志管理_第35张图片

同步时间源设置:

编辑配置文件:
vim /etc/chrony.conf

linux日志管理_第36张图片

chronyc sources -v             查看时间效果

实验效果:

注意:编辑完成配置文件之后要想时间同步需要在同步主机中重新启动chronyd服务

还需要关闭火墙时间才会被同步哦!

linux日志管理_第37张图片

你可能感兴趣的:(linux,linux,运维)