linux如何自定义日志级别,Linux系统中的日志管理

实验环境

两台网络可以互通的主机:

rhel7:192.168.1.11

rhel8:192.168.1.10

journald

服务名称:systemd-journald.service

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

journalctl命令的用法

参数

作用journalctl

查看全部日志

-n 3

日志的最新3条

–since “2020-02-13 17:00”

显示17:00以后的日志

–until “2020-02-13 17:00”

显示日志到17:00

-o

设定日志的显示方式

-o short

经典模式显示日志

-o verbose

显示日志的全部字节

-o export

适合传出和备份的二进制格式

-o json

js格式显示输出

-p

显示制定级别的日志

-p 0(emerg)

系统的严重问题日志

-p 1(alert)

系统中立即要更改的信息

-p 2(crit)

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

-p 3(err)

程序报错

-p 4(warning)

程序警告

-p 5(notice)

重要信息的普通日志

-p 6(info)

普通信息

-p 7(debug)

程序排错信息

-F PRIORITY

查看可控日志级别

-u sshd

指定查看服务

–disk-usage

查看日志大小

–vacuum-size=1G

设定日志存放大小 (设置日志回滚)

–vacuum-time=1W

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

-f

监控日志

上面两种方法设置日志回滚都是暂时性的,当系统重启后就失效了,需要重新设置

想要让其永久性的生效,可以改变日志的配置文件

vim /etc/systemd/journald.conf

6afe1961ab2057971a0e47773cb1c4ac.png

查看journal服务的状态systemctl status systemd-journald.service

abbe0436eb029dc76c3eb9043b244b72.png

可以筛选查看日志文件先查看日志条件journalctl -o verbose

292c83621c606f3edede9e23b8cb46a1.png

进行筛选journalctl _PID=86 _SYSTEMD_UNIT=systemd-journald.service

23c134c58b47d5c7ae9ab1aea2fc3574.png

用journald服务永久存放日志

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

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

chgrp systemd-journal /var/log/journal

chmod 2775 /var/log/journal

systemctl restart systemd-journald.service

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

测试:

在操作以上步骤之前查看日志

重启系统

再次查看日志

可以看到日志是不会被保存下来的只能看到重启之后的日志

完成以上操作后再次重启系统可以看到日志是被保存下来的

78ff58205614fa55d8a85426c441b55b.png

rsyslog

服务名称:rsyslog.service

配置文件:/etc/rsyslog.conf日志存放

内容/var/log/messages

系统服务日志,常规信息,服务报错

/var/log/secure

系统认证信息日志

/var/log/maillog

系统邮件日志信息

/var/log/cron

系统定时任务信息

/var/log/boot.log

系统启动日志信息

自定义日志采集路径

进入配置文件vim /etc/rsyslog.conf

7c35998edc36679a5ba5ac99ad7ac118.png

更改配置文件内容

作用✳.✳ /var/log/westos

把系统中所有级别的日志存放到westos中

✳.✳;authpriv.none /var/log/westos

把系统中所有级别的日志存放到westos中但是authpriv不存放到westos中

注意:

✳.✳ 代表 日志类型。日志级别

120b97ecc06d00c5747045cb76ebbb09.png

重启服务之后,则可以在新的文件中查看日志文件systemctl restart rsyslog.service

16095fb08e1bbb3d16262e8279dc521e.png

日志类型

auth

用户认证authpriv

服务认证

cron

时间任务

kern

内核类型

mail

邮件

news

系统更新信息

user

用户

日志级别

emerg

系统的严重问题日志alert

系统中立即要更改的信息

crit

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

err

程序报错

warning

程序警告

notice

重要信息的普通日志

info

普通信息

debug

程序排错信息

none

如何更改日志采集格式

在配置文件里面定义日志采集格式$template WESTOS, %timegenerated% %FROMHOST-IP% %syslogtag% %msg%\n"

WESTOS

格式名称%FROMHOST-IP%

日志来源主机IP

#%timegenerated%

日志生成时间

%syslogtag%

日志生成服务

%msg%

日志内容

\n

换行

8025e293ac869cd4f33a87110256ecc6.png

将这个格式指定给文件*.* /var/log/westos;WESTOS

0843ce98131cd5f3335b1b582d01556e.png

日志的远程同步

rhel7:192.168.1.11 存放日志作为日志接受端,所有人日志都存放到此台主机

rhel8:192.168.1.10 发送日志到rhel7主机中在rhel7中设定接受所有人的日志systemctl stop firewalld

打开配置文件vim /etc/rsyslog.conf

1a80bf6b147bff6c387f012f806e5cd7.png

重启日志systemctl restart rsyslog

查询端口netstat -antlupe | grep rsyslog

566f7ac8e51b6dd15a3858c8b132dea9.png

rhel8中设定发送日志到rhel7中在rhel8打开配置文件vim /etc/rsyslog.conf

*.* @192.168.1.10

c1ed579ba141475099006466fe20b9c4.png

重启日志systemctl restart rsyslog

@ 表示使用udp传输日志

@@ 表示使用tcp传输日志

@192.168.1.10把本机日子用udp的传输方式发送到192.168.1.10主机

timedatectl

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

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

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

设定系统时间计算方式(0表示使用utc时间计算方式)timedatectl set-local-rtc 0|1

时间同步服务

服务名称: chronyd.service

配置文件: /etc/chrony.conf

在rhel7作为时间源rhel8同步rhel7时间

在rhel7中vim /etc/chrony.conf

29c9c0ffde108e0c651e65710a84e09d.png

然后重启服务,并且关闭防火墙systemctl restart chronyd.service

systemctl stop firewalld

在rhel8中vim /etc/chrony.conf

pool 172.25.254.11 iburst

重启服务systemctl restart chronyd。service

这时rhel8中的时间已经与rhel7中的时间一样了

使用chronyc命令查看时间效果

ed5f8ec579aa90ae588fe48e00f59c21.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值