日志文件分析

article/2025/8/20 23:30:14

文章目录

  • 日志的功能
  • 日志文件的分类
  • 主要日志文件介绍
  • 内核以及系统日志
  • 日志记录的一般格式
  • 程序日志分析
  • 日志管理策略
  • 配置日志服务器收集日志
  • journalctl日志管理工具

日志文件

日志的功能


用于记录系统、程序运行中发生的各种事件

通过阅读日志,有助于诊断和解决系统故障

日志文件的分类

内核及系统日志==:由系统服务syslog统─进行管理,日志格式基本相似配置文件/etc/rsyslog.conf

用户日志:
记录系统用户登录及退出系统的相关信息

程序日志:

程序在允许的过程中,有什么报错,就会记录下来


日志的保存位置:/var/log 目录下

主要日志文件介绍

在这里插入图片描述

/var/log/messages:记录Linux内核消息以及各种应用程序的公共日志信息,包括启动,IO错误,网络错误,程序故障等,对于未使用独立日志文件的应用程序或服务,一般都可以从该日志文件中获得相关的事件记录信息/var/log/cron:记录crond计划任务产生的事件信息/var/log/dmesg:记录Linux系统在引导过程中的各种事件信息/var/log/maillog:记录进入或发出系统的电子邮件活动/var/log/secure:记录用户认证相关的安全事件信息/var/log/lastlog:记录每个用户最近的登录事件,二进制格式/var/log/wtmp:记录每个用户登录,注销及系统启动和停机事件,二进制格式/var/run/btmp:记录失败的,错误的登录尝试及验证事件,二进制格式/var/run/utmp:当前登录的每个用户的详细信息

内核以及系统日志

由系统服务 reyslog 统一管理,配置文件保存在 /etc/rsylog.conf

在这里插入图片描述

*.info #表示info等级及以上的所有等级的信息都写到对应的日志文件里
mail.none #表示某事件的信息不写到日志文件里(这里比如是邮件)

设备字段说明:
auth				#用户认证时产生的日志authpriv 		    #ssh、 ftp等登录信息的验证信息
daemon				#—些守护进程产生的日志
ftp					#ETP产生的日志
lpr	       			#打印相关活动
rmark       		#rsyslog服务内部的信息,时间标识
news         		#网络新闻传输协议(nntp)产生的消息。
syslog		 		#系统日志
uucp		 		#Unix-to-Unix Copy两个unix之间的相关通信
console		 		#针对系统控制台的消息。
cron         		#系统执行定时任务产生的日志。
kern         		#系统内核日志
localo~      		#白定义程序使用
rnail        		#邮件日志
user		 		#用户进程Linux系统内核日志消息的优先级别(数字等级越小,优先级越高,消息越重要)0		EMERG(紧急):会导致主机系统不可用的情况。如系统崩溃
1		ALERT(警告):必须马上采取措施解决的问题。如数据库被破坏
2		CRIT(严重):比较严重的情况。如硬盘错误,可能会阻碍程序的部分功能
3		ERR(错误):运行出现错误。不是非常紧急,尽快修复的
4		WARNING(提醒):可能影响系统功能,需要提醒用户的重要事件。不是错误,如磁盘用了			85%等
5		NOTICE(注意):不会影响正常功能,但是需要注意的事件。无需处理
6		INFO(信息):一般信息。正常的系统信息
7		DEBUG(调试):程序或系统调试信息等。包含详细开发的信息,调试程序时使用none:没有优先级,不记录任何日志消息。

日志记录的一般格式

more /var/log/messagesNov 27 15:10:35 zzz NetworkManager[8821]: <info>  [1637997035.9410] dhcp4 (ens33):   plen 24 (255.255.255.0)时间标签:Nov 27 15:10:35	消息发出的日期和时间
主机名:zzz	生成消息的计算机的名称
子系统名:NetworkManager[8821]:	发出消息的应用程序的名称
消息字段:<info>  [1637997035.9410]	
消息的具体内容:dhcp4 (ens33):   plen 24 (255.255.255.0)

分析工具

last 命令用于查询成功登录到系统的用户记录

[root@zzz log]# last
root     pts/1        192.168.232.1    Sat Nov 27 16:50   still logged in   
root     pts/4        192.168.232.1    Sat Nov 27 13:38   still logged in   
root     pts/3        :0               Sat Nov 27 13:37   still logged in   
root     pts/2        :0               Sat Nov 27 13:36   still logged in 

lastb 命令用于查询登录失败的用户记录

[root@zzz log]# lastb
root     ssh:notty    zzz              Sat Nov 27 17:08 - 17:08  (00:00)    
root     ssh:notty    zzz              Sat Nov 27 17:08 - 17:08  (00:00)    
root     ssh:notty    192.168.232.1    Wed Nov  3 17:08 - 17:08  (00:00)    
root     :0           :0               Sun Oct 31 17:02 - 17:02  (00:00) 

程序日志分析

由相应的应用程序独立进行管理,是由开发者写入的

比如 Web服务日志,位于/var/log/httpd/

access_log ##记录客户访问事件

error_log ##记录错误事件


日志管理策略

需要及时做好日志的备份和归档

延长日志保存期限

控制日志访问权限:日志中可能包含各类敏感信息,如账户,口令等

集中管理日志:将服务器的日志文件发到统一的日志文件服务器,便于日志信息的统一收集,整理和分析,杜绝日志信息的意外丢失,恶意篡改和删除


配置日志服务器收集日志

发送服务器:客户端 192.168.232.130

收集服务器:服务端 192.168.232.129

1.两个服务器先关闭防火墙 关闭深层防护

setenforce stop firewalld
systemctl stop firewalld
systemctl disable firewalld

2.进客户端 /etc/rsyslog.conf进行配置

把TCP 和UDP 两个注释取消掉,打开端口模块

在这里插入图片描述

再将配置信息写入

在这里插入图片描述

$template myFormat, "%timestamp% %hostname% %syslogseverity-text% %syslogtag% %msg%\n"
$ActionFileDefaultTemplate myFormat
*.info;mail.none;authpriv.none;cron.none              @@192.168.232.129:514

重启服务

[root@send ~]# systemctl restart rsyslog

查看端口信息

[root@send ~]# netstat -anutp | grep 514

客户端设置完毕


接下来设置服务端

1.进 /etc/rsyslog.conf 配置

还是TCP 和UDP 两个注释取消掉,打开端口模块

在这里插入图片描述

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-y0zPaQXk-1638082066553)(C:\Users\zhuquanhao\Desktop\截图命令集合\linux\日志文件管理\6.png)]

$AllowedSender tcp, 192.168.232.0/24  #允许 192.168.232.0 网段内的主机以tcp协议来传输$template Remote,"/data/log/%fromhost-ip%/%fromhost-ip%_%$YEAR%-%$MONTH%-%$DAY%.log"  #定义模板,接受日志文件路径,区分了不同主机的日志:fromhost-ip, !isequal, "127.0.0.1" ?Remote  #过滤掉 server 本机的日志

2.创建/data/log/目录

mkdir /data/log/

3.重启服务

[root@recive log]# systemctl restart rsyslog

4.cd 到 /data/log/目录当中,ls看一下

在这里插入图片描述

5.在客户端发送一个日志文件 看服务端能不能同步日志信息

客户端:

[root@send ~]# logger "hello world"

服务端:

在这里插入图片描述


journalctl日志管理工具

日志管理工具journalctl是centos7上专有的日志管理工具,该工具是从message这个文件里读取信息。

Systemd统一管理所有Unit的启动日志。带来的好处就是,可以只用journalctl一个命令,查看所有日志(内核日志和应用日志)日志的配置文件是/etc/ systemd/journald.conf

查看最新的日志文件,从尾部开始查看

[root@send ~]# journalctl -r

查看内核日志

[root@send ~]# journalctl -k

查看系统本次启动日志

[root@send ~]# journalctl -b 0

查看上一次启动的日志

[root@send ~]# journalctl -b -1

显示尾部指定 20 行的日志,并动态更新

[root@send ~]# journalctl -n 20 -f

查看某个服务的日志(比如防火墙)

[root@send ~]# journalctl -u firewalld

查看指定进程的日志

[root@send ~]# journalctl _PID=1

查看指定用户的日志

[root@send ~]# journalctl _UID=0 --since today

查看报错日志

[root@send ~]# journalctl -xe

http://chatgpt.dhexx.cn/article/yQ7F845q.shtml

相关文章

Windows安全日志分析

Windows安全日志分析 0x00 引言 在应急响应初步阶段&#xff0c;我们会对系统日志、中间件安全日志、恶意文件等进行收集。接下来便是要进一步对这些文件进行分析&#xff1a;对恶意文件逆向、日志文件分析、梳理入侵时间线和入侵路径等。本文主要对Windows安全日志进行举例分…

分析日志的流程

Web日志分析常见方法工具 1.编码 某web日志 URL 编码 BASE64编码 16进制编码&#xff08;以\x开头&#xff09; utf-8编码 字符集 Unicode&#xff08;以\u、\u、&#x、&#开头&#xff09;&#xff0c;gb2312&#xff0c;gbk 2.利用解码工具 http://www.mxcz.net/too…

spooling技术和通道及实现打印机共享

spooling技术的作用&#xff1a; 1、spooling技术的引入是为了 缓和高速CPU和低速I/O设备之间的矛盾 &#xff1b; 2、spooling技术能够允许多台外部设备进行联机并发操作&#xff0c; 实现虚拟性 &#xff1b; 在这个技术中用到了缓冲区和通道&#xff0c;缓冲区大家都…

假脱机技术Spooling和守护进程

文章目录 假脱机系统Spooling和守护进程1.假脱机技术的引入2.SPOOling系统的组成3.SPOOling系统的工作过程守护进程 假脱机系统Spooling和守护进程 1.假脱机技术的引入 脱机技术&#xff1a; 为了缓和CPU的高速性与IO设备的低速性间的矛盾&#xff0c;而引入了脱机输入&#…

【操作系统】SPOOLing技术(外部设备联机并行操作/假脱机技术)

SPOOling技术便可将一台物理I/O设备虚拟为多台逻辑I/O设备&#xff0c;同样允许多个用户共享一台物理I/O设备&#xff08;生活中最常见的就是多台电脑共享同一个打印机&#xff09; 目的&#xff1a;为了缓和CPU的高速性与I/O设备低速性之间的矛盾而引入了脱机输入/输出技术。…

操作系统~假脱机SPOOLing技术与缓冲区管理

文章目录 什么是脱机技术假脱机技术—―输入/输出缓冲区共享打印机的实现原理缓冲区的管理缓冲区的工作过程单缓冲双缓冲循环缓冲区缓冲池 什么是脱机技术 在传统的批处理操作系统中, 我们将输入数据统一写到磁带中, 又将输出数据统一写到磁带中, 这就是一种脱机技术 Tips:为…

实验四 模拟SPOOLING技术

实验目的 通过设计一个SPOOLING假脱机输出的模拟程序&#xff0c;更好地理解和掌握SPOOLING假脱机技术.。 实验内容 1.设计一个实现SPOOLING技术的进程 设计一个SPOOLING输出进程和两个请求输出的用户进程。 当用户需要输出时&#xff0c;调用请求输出进程&#xff0c;将需…

输入输出管理:假脱机技术(SPOOLING)

假脱机技术 假脱机技术&#xff08;SPOOLING&#xff09;1.1 脱机技术1.2 假脱机技术1.3 假脱机技术的应用1.4 假脱机技术和缓冲的区别 假脱机技术&#xff08;SPOOLING&#xff09; 下图来自程序员cxuan IO软件层次结构 1.1 脱机技术 脱机处理是一种计算机技术&#xff0c;是…

操作系统实验--spooling技术

实验四 假脱机技术 一、目的和要求 1、目的 假脱机&#xff08;SPOOLING&#xff09;技术是广泛应用于各种计算机系统的一种行之有效的输入输出手段。这种技术使用比较简单的方法&#xff0c;缓和了高速处理机与低速输入输出设备速度不匹配的矛盾&#xff0c;提高了设备的利用率…

操作系统 | 实验七 SPOOLING技术

文章目录 一、实验目的二、实验内容三、数据结构3.1 数据结构3.2 函数以及功能 四、程序流程图五、实验代码六、实验结果七、实验体会总结 一、实验目的 理解和掌握SPOOLING假脱机技术 二、实验内容 通过SPOOLING技术可将一台物理I/O设备虚拟为多台逻辑I/O设备&#xff0c;同…

假脱机技术spooling技术 原理易懂!

原理&#xff1a; 在手工输入&#xff0c;没有操作系统的阶段&#xff0c;只能通过纸带机把程序员的代码读入&#xff0c;然后CPU需要直接与纸袋机交互&#xff0c;由于输入和输出的速度很慢&#xff0c;即使CPU的处理速度很快&#xff0c;但是在数据输入和输出的时候&#xf…

操作系统:SPOOLing技术(假脱机技术)

一、什么是脱机技术&#xff1f; 批处理阶段引入了脱机输入/输出技术&#xff08;用磁带完成&#xff09; 流程如下&#xff1a; 人——> 纸带机——> 外围控制机——>磁带机——>主机——>磁带机——>外围控制机——>纸带机——>人 ①在外围控制器的控…

操作系统第五章_03 假脱机技术 (SPOOLing技术)

&#x1f3eb;中北大学软件学院 &#x1f947; 文章目录 知识总览什么是脱机技术假脱机技术 —— 输入井和输出井共享打印机知识总览 知识总览 什么是脱机技术 为什么称为“脱机”——脱离主机的控制进行的输入/输出操作。 手工操作阶段&#xff1a;主机直接从 I/O设备获得数…

操作系统-设备管理-spooling技术

操作系统-设备管理-spooling技术 思考题&#xff1a;A,B,C,D共用一台打印机x&#xff0c;要进行资料打印时&#xff0c;很容易出现“打印机正在使用&#xff01;”,如何处理该问题&#xff1f; 我们在使用打印机的时候&#xff0c;可能会出现一种情况&#xff0c;就是我们的一…

聊聊SPOOLing技术

SPOOLing系统组成 由上所述得知&#xff0c;SPOOLing技术是对脱机输入、输出系统的模拟。相应地&#xff0c;SPOOLing系统必须建立在具有多道程序功能的操作系统上&#xff0c;而且还应有高速随机外存的支持&#xff0c;这通常是采用磁盘存储技术。 SPOOLing系统主要有以下三部…

spooling技术介绍

SPOOLing&#xff08;Simultaneous Peripheral Operation On-Line&#xff09;技术&#xff0c;即外部设备联机并行操作&#xff0c;是为实现低速输入输出设备与高速的主机之间的高效率数据交换而设计的。通常称为“假脱机技术”&#xff0c;又称为排队转储技术。  具体来说&…

操作系统的SPOOLING技术

SPOOLING技术&#xff08;Simultaneous Peripheral Operating On Line) 同时联机外围操作技术&#xff0c;它是关于慢速字符设备如何与计算机主机进行数据交换的一种技术&#xff0c;通常又称假脱机技术。 在多道程序环境下&#xff0c;利用多道程序中的一道或者两道程序来模拟…

SPOOLing技术的理解

最近在学习操作系统的SPOOLing技术&#xff0c;这篇博客作为一个学习的记录吧&#xff0c;供大家和我将来参考。 SPOOLing系统的组成 &#xff08;1&#xff09;输入井和输出井&#xff1a;输入井和输出井的存储区域是在磁盘上开辟出来的。输入输出井中的数据一般以文件的形式…

操作系统(SPOOLING技术)

SPOOKING技术 一、实验目的二、实验内容三、实验准备1、设计一个实现SPOOLING技术的进程2、设计进程调度算法3、进程状态4、数据结构5、编程说明6、程序框图 四、实验要求1、数据结构2、程序流程图代码运行结果 一、实验目的 理解和掌握SPOOLING假脱机技术 二、实验内容 通过S…

什么是业务对象?业务逻辑是什么?

业务对象通常被认为是代表实体&#xff0c;比如 或者存储的类。 这样的类具有一定的属性&#xff0c;比如价格&#xff0c;颜色&#xff0c;宽度&#xff0c;国际标准图书编号 等等. NET 地图( 对象地图中&#xff0c;它是由所谓的setter和 getter&#xff0c;换句话说&#xf…