Linux系统管理(三)系统中的日志管理及优化

1. 实验环境

两台能够通信的主机

 

2. journal日志查看工具的使用

企业7之前的系统没有
日志的收集工具:systemd-journald.service 
查看路径:/run/log/journal/machine id/system.journal(machine id可用hostnamectl查看)

 

 查看系统日志:
journalctl(显示从开机到现在的所有日志,/搜索关键字,q退出)
-n mun 查看最新的num条日志


--since “xx:xx:xx”--until “xx:xx:xx” 查看指定时间段的日志


-o 对输出进行设定:short(经典格式,默认)verbose(全字符格式)export(二进制格式)json(js格式)


-p num (num [0,7])指定查看日志级别
-F 查看日志指定列(例如UNIT查看日志中程序名称,PRIORITY查看日志可控级别)
-u 查看指定程序日志

8个日志级别:
0 emerg 最严重的错误,内核错误
1 alert 严重的系统程序错误,导致系统崩溃
2 crit 程序错误,导致程序无法运行
3 err 程序报错,导致程序部分功能缺失
4 warning 程序警告
5 notice 重要信息的普通日志
6 info 普通信息
7 debug 程序排错信息

日志的回滚(删掉老的,存进新的,目的是为了不消耗过多的硬盘资源)
journalctl --disk-usage 查看日志占用的硬盘大小
journalctl --vacuum-size=1G 指定日志最大存储容量
journalctl --vacuum-time=1w 指定日志最长存储时间(1week)

 


3. 利用systemd-journal永久存储日志

默认查看路径:/run/log,但/run下的东西在系统重启后会被清空,想要永久存储日志需要将日志从run下转移到硬盘中。

mkdir /var/log/journal
chgrp systemd-journal /var/log/journal
chmod 2775 /var/log/journal
systemctl restart systemd-journald

 

4. rsyslog日志的采集规则

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

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

日志级别:
debug 程序排错信息
info 程序常规运行信息
notice 重要信息的普通日志
waring 程序警告
err 程序报错,导致程序部分功能缺失
crit 导致程序无法正常运行
alert 严重的系统程序错误,系统中立即要更改的信息
emerg 系统的严重问题日志
none 不采集

配置文件路径:/etc/rsyslog.conf
编写格式:日志类型.日志级别       日志存放路径
保存退出后重启服务
e.g.*.*   /var/log/westos 将系统中任何类型的任何级别的日志文件放在westos目录下
存放日志路径前若有-,代表实时采集日志


5. 日志远程同步方法

首先需要确定日志的发送方和接收方,且都关闭火墙

外网用TCP(@@),内网用UDP(@)

发送方:
vim /etc/rsyslog.conf
*.*       @接收方ip
重启rsyslog服务


接收方:
vim /etc/rsyslog.conf
开启udp模块(module-udp两行)
重启rsyslog服务
查看端口:netstat -antlupe | grep rsyslog

  

测试:
接收方监控日志:tail -f /var/log/messages
发送方logger 字符生成日志

 

 


6. 日志采集格式的设定

默认格式:时间 主机名 进程所有人 内容

设定格式:
vim /etc/rsyslog.conf
在use default timestamp format下编写
$template TAB,“%FROMHOST-IP(来源ip)% %timegenerated(生成时间)% %syslogtag(程序名称)% %msg(内容)%\n”
在日志存放路径后指定使用该格式:;TAB
退出后重启rsyslog服务

将更改后的格式设定为默认格式:
将原本默认的格式注释掉,修改新格式中template中的内容为westos
退出后重启rsyslog服务

 

 


7. 手动管理系统时间

timedatectl:
local time:本机的系统时间
universal time:UTC时间(默认)
RTC time:硬件时间

 

更改系统时间:
关闭系统时间服务chronyd
timedatectl:
设定时间 set-time “xxxx-xx-xx  xx:xx:xx”


设定时区 list-timezones “xx/xx”
设定当前系统时间为硬件时间 set-local-rtc num(num=0硬件时间和UTC时间一致;num=1硬件时间和系统时间一致)

 


8. 利用时间同步服统一idc机房时间

服务端:关闭火墙
vim /etc/chrony.conf
allow 0.0.0.0/0 允许所有人查看本机时间
取消注释local stratum 10
退出后重启chronyd服务

 

 

客户端:
vim /etc/chrony.conf
pool serverip iburst

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值