linux 日志优化,Linux —— 日志管理和优化方式

目录

1. journald

1.1 journalctl命令的用法

1.2 用journald服务永久存放日志

2. rsyslog

2.1 自定义日志采集路径

2.2 如何更改日志采集格式

2.3 日志的远程同步

3. timedatectl

4. 时间同步服务

1. journald

服务名称:systemd-journald.service

日志查看命令:journalctl

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

3b12f841d8222fe8be6ad53057216176.png

1.1 journalctl命令的用法

journalctl -n 3    ## 日志的最新3条

c551e7198493e9b3fb0ab0df4e5d0ea9.png

journalctl --since "时间点"           ## 显示时间点后的日志

e1748826385f2de80e2995038c0b0939.png

journalctl --until  "时间点"            ## 显示时间点前的日志

831a54ab9baa9dd4bacf5e295d43a540.png

journalctl -o                     ## 设定日志的显示方式

-o short            ## 经典模式显示日志,与journalctl -o一样

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

-o export          ## 适合传出和备份的二进制格式

-o json             ## js格式显示输出

2965cdba99c2826d320d75c57aa1f30f.png

a375d488d7cd05be77600496d9260f9e.png

c4722400878e08d66f52d8c76bdfb3ac.png

fd6c2a0c79cb09f6425bab3c0c3b48b1.png

-p                                     ## 显示制定级别的日志

#0           emerg      ## 系统的严重问题日志

#1           alert         ## 系统中立即要更改的信息

#2           crit           ## 严重级别会导致系统软件不能正常工作

#3           err           ## 程序报错

#4           warning   ## 程序警告

#5           notice      ## 重要信息的普通日志

#6           info          ## 普通信息

#7           debug      ## 程序排错信息

12d87fad4fba5d83ece9f43dea271cc9.png

1f414c206744c953e453eed12c3eccbc.png

82ee882d3a3172902b54a8c6e3a533fd.png

c02ff4dfa32afe25ad2bedf6e8a66ce9.png

e43816c1f807711f749c700e0926e766.png

a6187427fdfb1c620dff18e46612a035.png

2732bd698a88a4315e065fb984b05efd.png

37a38e0b8c5347481fde31a9413270e0.png

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

07a61b34ba6ce43ea1b0118d989e4a5c.png

-u         sshd                         ## 指定查看服务

8925ea57ace29cf622bf740a43be0b48.png

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

8def636779eb72e45d9d2cf2209a2d9a.png

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

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

-f                                         ## 监控日志

09a0ded1d57d7f65628be21d98411af8.png

journalctl _PID=87 _SYSTEMD_UNIT=systemd-journald.service 通过-o verbose查找信息

0adb5ee6e1c874120c070ab3a556ecac.png

1.2 用journald服务永久存放日志

系统默认日志在:/run/log/journal中

默认方式在系统重启后日志会被清理要永久保存日志需要完成以下操作:

1. mkdir                            /var/log/journal

2. chgrp systemd-journal /var/log/journal

3. chmod 2774                /var/log/journal

4. systemctl restart systemd-journald.service

当服务重启日志存放路径会被制定到:/var/log/journal

04f7bc5c0430f88da2cfe5e2c195be5b.png

8b15a9013d4bbab6b333500094cc32c0.png

可以看到重启后之前的日志还存在

5d7e3902fbd7a480b7cf68f47d848782.png

2. rsyslog

服务名称:rsyslog.service

日志存放:

/var/log/message                 ## 系统服务日志,常规信息,服务报错

/var/log/secure                     ## 系统认证信息日志

/var/log/maillog                    ## 系统邮件日志信息

/var/log/cron                        ## 系统定时任务信息

/var/log/boot.log                  ## 系统启动日志信息

配置文件:/etc/rsyslog.conf

25a4c7e90fed96c607c7a427c26318e9.png

2.1 自定义日志采集路径

vim /etc/rsyslog.conf

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

*.*                                            /var/log/dsd                     ## 把系统中所有级别的日志存放到dsd中

*.*;authpriv.none                     /var/log/dsd                     ## 把系统中所有级别的日志存放到dsd中,除过authpriv不存放到dsd中

日志类型                                                                        日志级别

auth                                          ## 用户认证                  debug

authpriv                                    ## 服务认证                  info

cron                                          ## 时间任务                  notice

kern                                          ## 内核类型                  warning

mail                                          ## 邮件                         err

news                                        ## 系统更新信息           crit

user                                          ## 用户                         alert

emerg

none

fdb88fbb5c5672c6c704939a53e4d3d5.png

f75766603736d51929463009e3c91380.png

2.2 如何更改日志采集格式

$template DSD,"%FROMHOST-IP% %timegenerated% %FROMHOST-IP% %syslogtag% %msg%\n"

# DSD                                              ## 格式名称

# %FROMHOST-IP%                      ## 日志来源主机IP

# %timegenerated%                        ## 日志生成时间

# %syslogtag%                                ## 日志生成服务

# %msg%                                        ## 日志内容

# \n                                                  ## 换行

a) 定义日志采集格式

f28937bd961a4ea201f493ffc3aa3dcf.png

b) 设定日志采集格式应用

6528cf0031f393956d57217781b74c61.png

c) 查看重启前日志信息显示格式,和重启后日志信息显示格式进行对比

fa47540e27f477c2d7bec28b630c8cdf.png

f182257564bc16dd5a330a659351fa75.png

2.3 日志的远程同步

rhel7_node1:192.168.43.10 存放日志作为日志接收端,所有人日志都存放到此台主机

rhel8_node1:192.168.43.11 发送日志到rhel7_node1主机中

UDP方式对日志进行同步:

99c175b374c028ad3057764b10a76b84.png

TCP方式对日志进行同步:

23eed63a4bf6ec1674c80fe8101056d2.png

实验步骤:

1. 在rhel7中设定接收所有人的日志

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

$ModLoad imudp                               ## 打开日志同步接收插件

$UDPServerRun 514                         ## 指定插件使用接口

systemctl restart rsyslog.service        ## 重启服务

netstat -antlupe | grep rsyslog            ## 查询端口

-antlupe

a   ## 表示所有

n   ## 表示不做解析,直接通过IP显示

t    ## 表示TCP协议

l    ## 活跃状态

u   ## 表示UDP协议

p   ## 启动器名称

e   ## 表示显示详细信息

33491fb6d9fcca9b760035327d7fe73c.png

2. 在rhel8中设定将所有日志发送到rhel7中

a) 编辑配置文件

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

在这里注意:@表示UDP传输日志,@@表示TCP传输日志,@192.168.43.10表示把本机日志用UDP的传输方式发送到192.168.43.10主机;

11c8a9c1e0e52a519e856b49390564f1.png

b) 清空日志,重启服务

2acd36cc5357b3b1acb6ccb8085c054a.png

203fc0cc55feb22b5db0324518504589.png

c) 生成日志

0239772567b7a1fcb60e317e3a6a1d1f.png

可以很明显看到,我们已经成功生成了日志,接下来我们进入到rhel7中查看是否接收,但是出乎意料,并没有接收到,这是为什么呢?

a98c73367fb52b83af8759b36e5b55d6.png

d) 关闭防火墙

636d9e236b20e5a266f13985d6b68575.png

0d16e293b82632b91261757e5acf3053.png

e) 大功告成

7072ceaed6581c43a490f34f0e09d43a.png

9e32f4ef1c9ad570c3128332e6407394.png

3. timedatectl

系统时间设定:timedatectl set-time "2020-02-13 20:10"

系统时区设定:timedatectl set-timezone "Asia/shanghai1"

设定系统时间计算方式:timedatectl set-local-rtc 0 | 1          0表示使用utc时间计算方式;1表示使用普通时间计算方式

显示系统所有时区:timedatectl list-timezones

faf224f97a30ac639942963e67c71e8d.png

时间模式设定

vim /etc/adjtime

0d08839e5fa073e5d9263d9313bef19f.png

4. 时间同步服务

服务名称:chronyd.service

配置文件:/etc/chrony.conf

rhel7中:

修改配置文件信息:

1. 允许192.168.43.0网段主机同步时间:allow 192.168.43.0/24

2. 开启时间同步服务器功能并设定级别为10:local stratum 10

重启服务,关闭防火墙

66670f53c545787e4fc95c2eeabb2be1.png

e3b0de9c2718be0ba6c28f465f948c6a.png

rhel8中:

配置文件:/etc/chrony.conf

修改配置文件:

pool 192.168.43.10 iburst

0a33678d5493f02427a0152375939270.png

使用chronyc命令查看时间效果:

chronyc sources -v

9eb93e19f7322bd8ac39691f163dca21.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值