rsyslog
此服务是用来采集系统日志的。他不产生日志,只是起到采集作用
rsyslog的管理(配置文件/etc/rsyslog.conf)
/var/log/messages ##服务信息日志
/var/log/secure ##系统登陆日志
/var/log/cron ##定时任务日志
/var/log/maillog ##邮件日志
/var/log/boot.log ##系统启动日志
1).指定日志采集路径:
*(什么类型的日志).*(什么级别的日志) / (存放到什么文件) ##日志采集规则
例:*.* /var/log/messages ##将所有类型所有级别的日志存放在/var/log/messages里面
2).日志类型分为:
auth ##pam产生日志
authpriv ##ssh.ftp等登陆信息的验证信息
cron ##时间任务相关
kern ##内核
lpr ##打印
mail ##邮件
mark(syslog)-rsyslog ##服务内部的信息,时间标识
news ##新闻组
user ##用户程序产生的相关程序
uucp ##unix to unix copy,unix主机之间相关的通讯
local 1~7 ##自定义的日志设备
3).日志级别分为:
debug ##有调式信息的,日志信息最多
info ##般信息的日志,最常用
notice ##最具有重要性的普遍条件的信息
warning ##警告级别
err ##错误级别,组织某个功能或者模块不能正常工作的信息
crit ##严重级别,组织整个系统或者整个软件不能正常工作的信息
alert ##需要立刻修改的信息
emerg ##内核崩溃等严重信息
none ##什么都不记录
###注意:从上到下,级别从低到高,记录的信息越来越少
3.日志的远程同步
日志发送方:
vim /etc/rsyslog.conf
*.* @ip ##”@“表示udp协议发送,”@@“表示tcp协议发送
systemctl restart rsyslog.service ##重启服务
systemctl stop firewalld ##关闭火墙
日志接收方:
vim /etc/rsyslog.conf
15 $ModLoad imudp ##日志接收模块
16 $UDPServerRun 514 ##开启接收端口
systemctl restart rsyslog
systemctl stop firewalld ##关闭火墙
systemctl disable firewalld ##设定火墙开机关闭
测试:
在发送方和接收方都清空日志文件
> /var/log/messages
在日志的发送方
logger xxx
cat /var/log/messages ##查看日志已经生成
在日志接收方查看
cat /var/log/messages
排错方法:
1)防火期强是否关闭
2)配置文件是否更改,重启
3)网络是否良好 ping 本主机ip
4)接口是否打开 netstat -antlupe | grep rsyslog
4.日志采集格式的设定
vim /etc/rsyslog.conf
47 $template 格式名称, "%timegenerated% %FROMHOST-IP% %syslogtag% %msg%\n"
^ ^ ^ ^ ^
显示日志时间 显示主机ip 日志记录目 日志内容 换行
*.* /var/log/messages;格式名称
5.时间同步服务
服务名称
chronyd
在服务端:
vim /etc/chrony.conf ##修改配置文件
22 allow 172.25.254.0/24 ##允许哪些客户端来同步本机时间
29 local stratum 10 ##本机不同步任何主机的时间,本机作为时间源
systemctl restart chronyd ##重启服务
systemctl stop firewalld.service ##关闭火墙
在客户端:
vim /etc/chrony.conf ##修改配置文件
server ip iburst ##本机立即同步此ip的时间
timedatectl set-timezone Asia/shanghai ##更改本机时区为上海时区
systemctl restart chronyd ##重启服务
systemctl stop firewalld.service ##关闭火墙
测试:
在客户端:chronyc sources -v
左下角出现^*说明时间同步成功
6.timedatectl命令
timedatectl ##管理系统时间
timedatectl status ##显示当前时间信息
timedatectl set-time ##设定当前时间
timedatectl set-timezone ##设定当前时区
timedatectl set-local-rtc 0|1 ##设定是否使用utc时间
timedatectl list-timezones ##查看支持的所有时区
7.journal
1)journalctl ##日志查看工具
journalctl -n 3 ##查看最近3条日志
journalctl -p err ##查看错误日志
journalctl -o verbose ##查看日志的详细参数
journalctl --since ##查看从什么时间开始的日志
journalctl --until ##查看到什么时间为止的日志
2)如何使用systemd-journald保存系统日志
默认systemd-journald时不保存系统日志到硬盘的
那么关机后再次开机只能看到本次开机之后的日志
上一次关机之前的日志是无法保存的
mkdir /var/log/journal
chgrp systemd-journal /var/log/journal
chmod g+s /var/log/journal
killall -1 systemd-journald
ls /var/log/journal
文件名
*保留的日志文件是数据直接用journalctl查看日志