Linux系统中的日志管理
实验环境
westos_localhost:172.25.254.207
westos_localhost: 172.25.254.107
两个主机都执行关闭防火墙操作:systemctl stop firewalld
一、journald
服务名称:systemd-journald.service
默认日志存放路径: /run/log
journalctl:
命令 | 功能 |
---|---|
journalctl -n 3 | 日志的最新3条 |
journalctl --since “2020-05-01 11:00:00” | 显示11:00后的日志 |
journalctl --until “2020-05-01 11:05:00” | 显示日志到11:05 |
journalctl -o | 设定日志的显示方式 |
---|
符号 | 含义 |
---|---|
short | 经典模式显示日志 |
verbose | 显示日志的全部字节 |
export | 适合传出和备份的二进制格式 |
json | js格式显示输出 |
journalctl -p | 显示制定级别的日志 |
---|
符号 | 功能 |
---|---|
#0 emerg | 系统的严重问题日志 |
#1 alert | 系统中立即要更改的信息 |
#2 crit | 严重级别会导致系统软件不能正常工作 |
#3 err | 程序报错 |
#4 warning | 程序警告 |
#5 notice | 重要信息的普通日志 |
#6 info | 普通信息 |
#7 debug | 程序拍错信息 |
journalctl -F PRIORITY | 查看可控日志级别 |
---|
journalctl -u sshd | 指定查看服务 |
---|
命令 | 功能 |
---|---|
journalctl --disk-usage | 查看日志大小 |
journalctl --vacuum-size=1G | 设定日志存放大小 |
journalctl --vacuum-time=1W | 日志在系统中最长存放时间 |
journalctl -f | 监控日志 |
---|
二、用journald服务永久存放日志
系统中默认日志在:/run/log/journal中
默认方式在系统重启后日志会被清理
要永久保存日志请完成以下操作:
当服务重启日志存放路径会被制定到:/var/log/journal
测试:
1.在操作以上步骤之前查看日志
2.重启系统
3.再次查看日志
4.可以看到日志是不会被保存下来的只能看到重启之后的日志
5.完成以上操作后再次重启系统可以看到日志是被保存下来的
三、rsyslog
服务名称:rsyslog.service
日志存放:
路径 | 信息 |
---|---|
/var/log/messages | 系统服务日志,常规信息,服务报错 |
/var/log/secure | 系统认证信息日志 |
/var/log/maillog | 系统邮件日志信息 |
/var/log/cron | 系统定时任务信息 |
/var/log/boot.log | 系统启动日志信息 |
配置文件:/etc/rsyslog.conf
1、自定义日志采集路径
日志类型.日志级别 日志存放路径
日志级别 | 功能 |
---|---|
auth | 用户认证 |
authpriv | 服务认证 |
cron | 时间任务 |
kern | 内核类型 |
邮件 | |
news | 系统更新信息 |
user | 用户 |
日志级别 | 功能 |
---|---|
debug | 程序排错信息 |
info | 程序常规运行信息 |
notice | 重要信息的普通日志 |
waring | 程序警告 |
err | 程序报错 |
crit | 严重级别会导致系统软件不能正常工作 |
alert | 系统中立即要更改的信息 |
emerg | 系统的严重问题日志 |
none | 不采集 |
2、如何更改日志采集格式
定义日志采集格式
项目 | 功能 |
---|---|
%FROMHOST-IP%: | 日志来源主机IP |
%timegenerated%: | 日志生成时间 |
%syslogtag%: | 日志生成服务 |
%msg%: | 日志内容 |
\n: | 换行 |
设定日志采集格式应用:
更改默认设置为WESTOS
将服务认证以外的日志存入/var/log/westos目录下 并设置采集格式为WESTOS
*.*authpriv.none | /var/log/westos;WESTOS |
---|
四、日志的远程同步
1.在westos_node1中设定接受所有人的日志
systemctl stop firewalld #关闭火墙
vim /etc/rsyslog.conf
19 module(load=“imudp”) ##打开日志接受插件
20 input(type=“imudp” port=“514”) ##指定插件使用接口
systemctl restart rsyslog
查询端口:
2.westos_student中设定发送日志到westos_localhost中
测试
五、timedatectl
命令 | 功能 |
---|---|
timedatectl set-time “2020-02-13 10:41:55” | 设定系统时间 |
timedatectl list-timezones | 显示系统的所有时区 |
timedatectl set-timezone “Asia/Shanghai” | 设定系统时区 |
timedatectl set-local-rtc 0/1 | 设定系统时间计算方式 |
六、时间同步服务
服务名称: chronyd.service
配置文件: /etc/chrony.conf
在虚拟机一中:
vim /etc/chrony.conf
allow 172.25.254.0/24 ##允许172.25.254.0网段主机同步时间
local stratum 10 ##开启时间同步服务器功能并设定级别为10
systemctl restart chronyd.service#重启服务
systemctl stop firewalld #关闭火墙
在虚拟机二中:
vim /etc/chrony.conf
pool 172.25.254.11 iburst
systemctl restart chronyd#重启服务
查看:
使用chronyc 命令查看时间效果: