1.journald采集日志
服务名称:systemd-journald.serice
注意:在rhel8之后,有journald和rsyslog两种方式来采集日志,日志产生由程序本身产生。journald将所有日志存储起来,用查看工具进行分析。
特点:处理效果强,速度卡比较快,存储灵活
查看日志的程序:journalctl命令
默认日志存放路径:/run/log,重启系统后清空,只看当前主机开启存放的日志
1.1 journalctl 命令的用法
实验环境:
rhel7_node1: 172.25.254.200
rhel8_node1: 172.25.254.100
试验一: journalctl 命令的参数
1. - -n 3——日志的最新3行


2. - - since “2020-02-13 13:40” ——指定日志的查看时间(显示13:40之后的日志)
3. - - until “2020-02-13 13:41”——指定日志的查看时间(显示13:41之前的日志)

4. - o——设置日志的显示方式
| -o short | 经典模式显示日志 |
|---|---|
| -o verbose | 显示详细日志 |
| -o export | 适合传输和备份的二进制格式 |
| - json | js格式显示输出 |
4.1 - o short 经典模式显示日志
4.2 -o verbose显示日志的全部字节,详细日志
4.3 -o export 适合传输和备份的二进制格式
4.4 -o json js格式(Javascript)显示输出
5.—— - p 显示指定级别的日志
| 0 | emerg | 内核的日志,需要紧急处理的日志,系统的严重问题日志 不能控制 |
|---|---|---|
| 1 | alert | 系统中立即要更改的信息 |
| 2 | crit | 严重级别日志,会导致系统软件不能正常工作 |
| 3 | err | 程序报错 |
| 4 | warning | 程序警告 |
| 5 | notice | 重要信息的普通日志 |
| 6 | info | 普通信息 |
| 7 | debug | 程序排错信息 |
1.alert ——系统中立即要更改的信息
2.crit——严重级别日志,会导致系统软件不能正常工作
3.err——程序报错
4.warning——程序警告
5.notice——重要信息的普通日志
6.info——普通信息
7.debug——程序排错信息
6. -F PRIORITY 查看可控日志级别

7. -u sshd指定查看服务
8. - -disk-usage查看日志存放空间大小
9. - - vacuum-size=1G 设定日志存放大小(临时设置)
日志回滚,删掉之前的,滚动循环
10. - - vacuum-time=1W 日志在系统中最长存放时间(临时设置)
限定日志所能占用的最高容量,我们可以通过/etc/systemd/journald.conf文件来配置systemd-journald服务的行为。

11. - f 对日志进行监控,监控日志
查看条件爱你的日志:可以用journal -o verbose查看详细日志,搜索条件后查看*


1.2 用 journald 服务永久存放日志
实验二 :用 journald 服务永久存放日志
步骤
1.系统中的默认日志在:/run/log/journal中,默认方式在系统重启后日志会被清理
2.要永久保存日志需要完成以下操作:
测试
2.rsyslog日志采集(存储精准)
服务名称: rsyslog.service
注意:journald将所有日志存储起来,用查看工具进行分析;而rsyslog在采集时就进行了分类,用查看文件的方式查看。
特点:存储效果精准
| 日志存放路径 | 用途 |
|---|---|
| /var/log/messages | 系统服务日志,常规信息,服务报错 |
| /var/log/sercure | 系统认证信息日志 |
| /var/log/maillog | 系统邮件日志信息 |
| /var/log/cron | 系统定时任务信息 |
| /var/log/boot.log | 系统启动日志信息 |
日志存放路径
/var/log/messages——系统服务日志,常规信息,服务报错
/var/log/sercure ——系统认证信息日志
/var/log/maillog——系统邮件日志信息
/var/log/cron——系统定时任务信息
/var/log/boot.log——系统启动日志信息
配置文件:/etc/rsyslog.conf
实验一:自定义日志采集路径
在rsyslog的配置文件/etc/rsyslog.conf中设定
日志类型.日志级别 日志存放路径
| 日志类型.日志级别 日志存放路径 | 含义 |
|---|---|
| * .* /var/log/red | 把系统中所有级别的日志存放到file_rsyslog中 |
| * .* tthenapriv.none /var/log/file_rsyslog | 把系统中所有级别的日志存放到file_rsyslog中,但是thenapriv日志不放 |
| 日志类型 |
|---|
| auth 用户认证 |
| authpriv 服务认证 |
| cron 时间任务 |
| kern 内核类型 |
| mail 邮件 |
| news 系统更新信息 |
| user 用户 |
| 日志级别 |
|---|
| debug |
| info |
| notice |
| warning |
| err |
| crit |
| alert |
| emerg |
| none |


实验二:如何更改日志采集格式
步骤
1.定义日志采集格式
如:$tempelate LOG0213,“%timegenerated% %FROMHOST-IP% %syslogtag% %msg%\n”
| 日志格式名称 | LOG0213 |
|---|---|
| 生成时间 | %timegenerated% |
| 日志来源主机IP | %timegenerated% |
| 日志生成服务 | %syslogtag% |
| 日志内容 | %msg% |
| 换行 | \n |

2.指定用户使用设定的日志采集格式

实验三:日志的远程同步
实验环境: 两台主机
rhel8_node1:172.25.254.100 存放作为日志接收端,所有人日志都存放到此台主机
rhel7_node1:172.25.254.200发送日志到rhel8_node1主机中
步骤:
1.在rhel8中设定接受所有人的日志
systemctl stop fiewall
在配置文件 vim /etc/rsyslog.conf中
查询端口:
2.rhel7中设定发送日志到rhel8中
在配置文件 vim /etc/rsyslog.conf中设置
(man 5 rsyslog.conf——查看帮助)
* . * @rhel8的IP
@表示使用UDP传输日志
@@表示使用TCP传输日志
@172.25.254.100 表示把本机日志用UDP传输方式到172.25.254.100 这台主机

测试
两边日志清空,重启服务




3. timedatectl命令
timedatectl命令更改系统时间
实验:设置时间
设定系统时间:timedatectl set-time "2020-02-13 10:41:55"
显示系统的所有时区:list-timezones
设定系统时区timedatecl set-timezonge "Amerrica"
timedatectl set-local-rtc 0/1 设定系统时间计算方式,0表示使用utc时间计算方式,1是本地时间
UTC设置时间方式会更改系统硬件时间,双系统会导致时间错误
vim /etc/adjtime


4.时间同步服务
实验:时间同步实验:在rhel7作为时间源,rhel8同步rhel7时间
服务名称:chronyd.service
配置文件:etc/chrony.conf
在rhel7中
[root@rhel7_node1 ~]# vim /etc/chrony.conf

在rhel8中
[root@rhel7_node1 ~]# vim /etc/chrony.conf

查看:
在8中查看时间已经变成7中时间date
[root@rhel8_node1 Desktop]# chronyc sources -v
