Linux—系统日志管理

文章目录

  • 1.日志类型
  • 2.日志级别
  • 3.日志采集
  • 4.日志的远程同步
  • 5.日志采集格式的设定
  • 6.时间设定timedatectl命令
  • 7.系统时间同步服务chronyd
  • 8.查看日志工具journal命令

rsyslog是一个开源工具,被广泛用于Linux系统以通TCP/UDP协议转发或接收日志消息。rsyslog服务的主配置文件为/etc/rsyslog.conf。
进程和操作系统内核需要能够为发生的事件记录日志,这些日志可用于系统审核和问题的故障排除,一般这些日志永久存储/var/log目录中。系统文件记录信息如下:

日志文件 用途
/var/log/messages 大多系统日志信息记录在此处
/var/log/secure 安全和身份认证相关的消息和错误的日志文件
/var/log/maillog 与邮件服务器相关的日志文件
/var/log/cron 与定时任务相关的日志文件
/var/log/boot.log 与系统启动有关的日志文件

1.日志类型

日志类型分为:
auth:pam产生的日志
authpriv:ssh,ftp等登陆信息的验证信息
cron:时间任务相关
kern:内核
lpr:打印
mail:邮件
mark(syslog)-rsyslog:服务内部的信息,时间标识
news:新闻组
user:用户程序产生的相关信息
uucp:unix to unix copy,unix主机之间相关的通讯
local 1-7:自定义的日志设备

2.日志级别

日志级别分为:
debug:有调试信息的,日志信息最多
info:一般信息的日志,最常用
notice:最具有重要性的普通条件的信息
warning:警告级别
err:错误级别,阻止某个功能或者模块不能正常工作的信息
crit:严重级别,阻止整个系统或者整个软件不能正常工作的信息
alert:需要立刻修改的信息
emerg:内核奔溃等严重信息
none:什么都不记录

3.日志采集

指定日志采集路径

  • 日志采集规则
    日志类型 日志级别 /var/log/file
操作:
把系统中所有的日志采集到/var/log/westos文件中
配置日志文件:vim /etc/rsyslog.conf
重起日志服务:systemctl restart rsyslog.service 
测试:
重起sshd服务,为了生成日志:systemctl restart sshd.service 
查看日志信息是否出现:cat /var/log/westos 

Linux—系统日志管理_第1张图片

4.日志的远程同步

  • 日志发送方
	配置日志文件 vim /etc/rsyslog.conf    *.*  @接受方ip
	"@"表示udp协议发送,“@@”表示tcp协议发送
	重起日志服务 systemctl restart rsyslog.service 

Linux—系统日志管理_第2张图片

  • 日志接收方
	配置日志文件 vim /etc/rsyslog.cong 15-16行打开日志接收模块,开启接收端口
	重起日志服务 systemctl restart rsyslog.service 
	设置防火墙 firewall-cmd --add-port 14/udp
	或关闭防火墙 systemctl stop firewalld

Linux—系统日志管理_第3张图片

  • 测试
	清空发送方和接收方的日志文件:> /var/log/messages
	发送方 logger test
	接收方 cat /var/log/messages 

Linux—系统日志管理_第4张图片

5.日志采集格式的设定

%timegenerated% 显示日志时间
%FROMHOST-IP% 显示主机ip
%syslogtag% 日志记录目标
%msg% 日志内容
/n 换行

输入vim etc/rsyslog.conf修改rsyslog的配置文件
Linux—系统日志管理_第5张图片
Linux—系统日志管理_第6张图片

  • 在指定的日志中使用LOGFMT格式,在指定日志文件后加上LOGFMT格式
    Linux—系统日志管理_第7张图片
    Linux—系统日志管理_第8张图片
    -将系统中默认的日志采集格式改为设定的LOGFMT格式
    Linux—系统日志管理_第9张图片
    Linux—系统日志管理_第10张图片

6.时间设定timedatectl命令

timedatectl管理系统时间

timedatect		    status		# 显示当前时间信息
				    set-time		# 设定当前时间
				    set-timezone 	# 设定当前时区
				    set-local-rtc 0|1   # 设定是否使用utc时间
				    list-timezone	# 查看支持的所有时区
				    set-ntp true|false	# 设置ntp是否开启(set-local-rtc 0)

Linux—系统日志管理_第11张图片
Linux—系统日志管理_第12张图片

7.系统时间同步服务chronyd

  • 服务端操作:
    输入vim /etc/chrony.conf修改配置文件的22行和29行内容,配置完毕后输入systemctl restart chronyd.service重起chronyd服务
    Linux—系统日志管理_第13张图片
    Linux—系统日志管理_第14张图片
  • 客户端操作:
  • 输入vim /etc/chrony.conf修改配置文件,本机立即同步服务端主机的时间,输入systemctl restart chronyd.service重起chronyd服务
    Linux—系统日志管理_第15张图片
    Linux—系统日志管理_第16张图片
  • 客户端测试:
    输入chronyc sources -v查看是否同步成功,如果是以*^开头表示同步成功
    Linux—系统日志管理_第17张图片

8.查看日志工具journal命令

journalctl		# 日志查看工具
	-n  number	# 查看最近number条日志
	-p err		# 查看错误日志
	-o verbose	# 查看日志的详细参数
	--since		# 查看从什么时间开始的日志
	--until		# 查看到什么时间为止的日志

Linux—系统日志管理_第18张图片
Linux—系统日志管理_第19张图片
Linux—系统日志管理_第20张图片

  • 如何使用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	# 查看是否生成机器码
reboot			# 重起
journalctl 		# 查看日志

Linux—系统日志管理_第21张图片
Linux—系统日志管理_第22张图片

你可能感兴趣的:(Linux)