(三)Linux-系统日志的总结
Linux-系统日志简介
1、日志的介绍
日志文件记录了时间,地点,人物,事件四大信息,故系统出现故障时,可以查询日志文件。
系统的日志文件默认都集中放置到/var/log/
目录内,其中又以message
记录的信息最多。
2、日志的重要性体现
日志文件的重要性主要体现在以下三方面:
- 解决系统方面的错误
- 解决网络服务的问题
- 过往事件记录
日志文件的权限通常是设置为root能够读取而已。由于日志文件可以记载系统很多的详细信息,所以一个有经验的主机管理员会随时随地查阅自己的日志文件,以掌握系统的最新动态。
注意:系统断电没日志。
3、系统中常见的日志
日志 | 作用 | 权重 |
---|---|---|
/var/log/cron | 定时任务日志 | 了解 |
/var/log/cups | 记录打印信息的日志 | 了解 |
/var/log/dmesg | 记录了系统开机时内核的自检信息 | 了解 |
/var/log/btmp | 记录错误登录的日志,这个文件是二进制文件,只能通过命令lastb命令查看。 | 重点 |
/var/log/lastlog | 记录系统中所有用户最后以此的登录时间的日志,这个文件是二进制文件,只能通过命令lastlog命令查看。 | 重点 |
/var/log/messages | 记录系统重要信息的日志。这个日志文件中会记录linux系统的绝大多数重要的信息,如果系统出现问题时,首先要检查的就应该是这个日志文件 | 重点 |
/var/log/secure | 记录验证和授权方面的信息,只要涉及账户和密码的程序都会记录。例如系统的登录,ssh登录,su切换,sudo授权,政治添加用户和修改用户密码都会记录在这个日志文件中。 | 重点 |
/var/log/maillog | 记录邮件日志 | 了解 |
/var/log/wtmp | 永久记录所有用户的登录、注销信息,同时记录系统的启动、重启、关机事件。同样这个文件也是一个二进制文件,不能直接vi打开,而需要last命令来查看。 | 重点 |
[root@localhost ~]# lastb
btmp begins Tue Sep 1 11:45:01 2020
[root@localhost ~]# last
root pts/2 192.168.0.243 Thu Sep 3 07:35 still logged in
root pts/2 192.168.0.243 Wed Sep 2 18:18 - 23:06 (04:48)
root pts/1 192.168.0.253 Wed Sep 2 16:26 still logged in
root pts/0 192.168.0.253 Wed Sep 2 14:05 still logged in
root pts/0 192.168.0.253 Tue Sep 1 22:04 - 23:00 (00:55)
root pts/0 192.168.0.253 Tue Sep 1 14:15 - 22:04 (07:48)
root pts/0 192.168.0.253 Tue Sep 1 13:18 - 13:42 (00:24)
root pts/1 192.168.0.253 Tue Sep 1 11:00 - 22:04 (11:04)
root pts/0 192.168.0.253 Tue Sep 1 10:10 - 11:00 (00:50)
4、linux日志的服务
在centos6和7中,系统日志服务已经由原来的syslog变成了rsyslog,rsyslog相比syslog具有一些新的特点:
- 基于TCP网络协议传输日志信息;
- 更安全的网络传输方式;
- 有日志消息的及时分析框架;
- 后台数据库;
- 配置文件中可以写简单的逻辑判断;
- 与syslog配置文件相兼容。
5、rsyslog服务的介绍
此服务是用来采集系统日志的,它本身不产生日志,只是起到采集的作用。
5.1 rsyslog特性
多线程
支持UDP, TCP, SSL, TLS, RELP
支持MySQL, PGSQL, Oracle实现日志存储
强大的过滤器,可实现过滤记录日志信息中任意部分
自定义输出格式
5.2 rsyslog的进程
[root@localhost ~]# ps aux |grep rsyslog
root 927 0.0 0.5 258024 5784 ? Ssl 9月01 0:08 /usr/sbin/rsyslogd -n
root 4749 0.0 0.0 112824 980 pts/2 R+ 07:37 0:00 grep --color=auto syslog
5.3 rsyslog的位置
[root@localhost ~]# which rsyslogd
/usr/sbin/rsyslogd
5.4 rsyslog的版本
[root@localhost ~]# rpm -qf /sbin/rsyslogd
rsyslog-8.24.0-52.el7.x86_64
5.5 rsyslog的软件信息
这里以rsyslog-8.24.0-52.el7.x86_64
为例:
[root@localhost ~]# yum info rsyslog-8.24.0-52.el7.x86_64
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile* base: mirrors.aliyun.com* extras: mirrors.aliyun.com* updates: mirrors.aliyun.com
已安装的软件包
名称 :rsyslog
架构 :x86_64
版本 :8.24.0
发布 :52.el7
大小 :1.9 M
源 :installed
来自源:base
简介 : Enhanced system logging and kernel message trapping daemon
网址 :http://www.rsyslog.com/
协议 : (GPLv3+ and ASL 2.0)
描述 : Rsyslog is an enhanced, multi-threaded syslog daemon. It supports MySQL,: syslog/TCP, RFC 3195, permitted sender lists, filtering on any message part,: and fine grain output format control. It is compatible with stock sysklogd: and can be used as a drop-in replacement. Rsyslog is simple to set up, with: advanced features suitable for enterprise-class, encryption-protected syslog: relay chains.
5.6 rsyslog配置文件
vim /etc/rsyslog.conf ##rsyslog服务配置文件
systemctl restart rsyslog.service ##更改配置文件后需重启服务
5.7 日志采集格式的设定
vim /etc/rsyslog.conf$template NAME,"%timegenerated% %FROMHOST-IP% %syslogtag% %msg%\n"
##名字必须大写,参数之间可用'空格','|'等方式断开*.info;masil.none;authpriv.none;cron.none /var/log/messages;NAME
##在需要用该格式的日志路径后面加;NAME
参数 | 解释 |
---|---|
%timegenerated% | 显示日志时间 |
%FROMHOST-IP% | 显示主机IP |
%syslogtag% | 日志记录目标 |
%msg% | 日志内容 |
\n | 换行 |
配置文件中的格式:
cron.* /var/log/cron
什么类型的日志.什么级别的日志 日志采集路径
5.8 日志的类型
auth ##pam产生的日志
authpriv ##ssh,ftp等登陆信息的验证信息
cron ##时间任务相关
kern ##内核
lpr ##打印
mail ##邮件
mark(syslog)-rsyslog ##服务内部的信息,时间标示
news ##新闻组
user ##用户程序产生的相关信息
uucp ##unix to unix copy,unix主机之间相关的通讯
local 1~7 ##自定义的日志设备
5.9 日志级别
debug ##有调试信息的,日志信息最多
info ##一般信息的日志,最常用
notice ##最具有重要性的普通条件的信息
warning ##警告级别
err ##错误级别,阻止某个功能或模块不能正常工作的信息
crit ##严重级别,阻止整个系统或整个软件不能正常工作的信息
alert ##需要立刻修改的信息
emerg ##内核崩溃等严重信息
none ##什么都不记录
注意:从上到下,级别从低到高,记录的信息越来越少
6、日志的远程同步
6.1 在日志发送方
vim /etc/rsyslog.conf
在文件中任意行加入
*.* @172.25.254.210 ##在*.*表示任意类型。任意级别 "@"表示UDP协议发送,“@@”表示TCP协议发送
systemctl restart rsyslong ##更改rsyslog.conf后需要重启服务才能生效
6.2 在日志接受方:
vim /etc/rsyslog.conf
14 # Provides UDP syslog reception ##UDP接口
15 $ModLoad imudp ##日志接收模块
16 $UDPServerRun 514 ##开启接收端口systemctl restart rsyslog ##重启日志服务
systemctl stop firewalld ##关闭防火墙
systemctl disable firewalld ##设定火墙开机关闭
7、日志查看工具journalctl
查看最近3条日志
[root@localhost ~]# journalctl -n 3
-- Logs begin at 三 2020-09-02 04:55:07 CST, end at 四 2020-09-03 08:54:37 CST. --
9月 03 08:54:37 localhost.localdomain kernel: device vethd42dd78 left promiscuous mode
9月 03 08:54:37 localhost.localdomain kernel: br-e0146cb93473: port 1(vethd42dd78) entered disabled state
9月 03 08:54:37 localhost.localdomain NetworkManager[660]: <info> [1599094477.3544] device (vethd42dd78): released from master device br-e0146cb
lines 1-4/4 (END)
查看错误日志
[root@localhost ~]# journalctl -p err
-- No entries --
常用实例:
journalctl --since "8:55" ##查看从什么时间开始的日志
journalctl --until "10:58" ##查看到什么时间为止的日志
journalctl -o verbose ##查看日志的详细参数
journalctl _PID=84 ##查看进程号为84的是日志信息
8、日志分析系统ELK
ELK:elasticsearch, logstash, kibana(日志分析系统,三款开源产品名称的首字母集合)
- Elasticsearch是个开源分布式搜索引擎
- Logstash对日志进行收集、分析,并将其存储供以后使用
- kibana 可以提供的日志分析友好的Web界面
- 非关系型分布式数据库
- 基于apache软件基金会jakarta项目组的项目lucene
由于篇幅原因,elk另行讲解。
(三)Linux-系统日志的总结相关推荐
- 三十六、rsync通过服务同步、Linux系统日志、screen工具
三十六.rsync通过服务同步.Linux系统日志.screen工具 一.rsync通过服务同步 该方式可以理解为:在远程主机上建立一个rsync的服务器,在服务器上配置好各种应用,然后本机将作为客户 ...
- Linux CentOS7 rsync通过服务同步、linux系统日志、screen工具
一.rsync通过服务同步 rsyncd.conf配置文件详解 port:指定在哪个端口启动rsyncd服务,默认是873端口. log file:指定日志文件. pid file:指定pid文件,这 ...
- logrotate 命令切换linux系统日志
logrotate是作为linux系统日志的管理工具存在.他可以轮换,压缩,邮件系统日志文件. 默认的logrotate被加入cron的/etc/cron.daily中作为每日任务执行. /etc/l ...
- linux系统日志排故方案,Linux系统故障排查思路与常见案例
Linux系统故障排查思路与常见案例 1.Linux系统日志与分类 内核及系统日志 这种日志数据由系统服务syslog统一管理,根据其主配置文件"/etc/syslog.conf" ...
- Linux系统日志管理
Linux系统日志管理 ********************************** 目 录 ********************************** Linux rsyslogd ...
- Linux系统日志rsyslogd
Linux系统日志rsyslogd Linux系统日志 Linux上使用rsyslogd守护进程接收用户进程输出的日志和接收内核日志. 用户进程是通过syslogd函数生成系统日志.该函数将日志输出到 ...
- Linux系统日志管理(redhat)
一.Linux系统日志作用 日志对任何一个OS.应用软件.服务进程而言都是必不可少的模块.日志 文件对于系统和网络安全起到中大作用,同时具有审计.跟踪.排错功能. 可以通过日志文件监测系统与网络安全隐 ...
- 如何查看linux系统下的各种日志文件 linux 系统日志的分析大全
如何查看linux系统下的各种日志文件 linux 系统日志的分析大全 日志分类: 1. 连接时间的日志 连接时间日志一般由/var/log/wtmp和/var/run/utmp这两个文件记录,不过这 ...
- Linux系统日志采集
Linux系统日志采集 一. 任务描述 二. 任务目标 三. 任务环境 四. 任务分析 五. 任务实施 步骤1.操作步骤 未经许可,禁止以任何形式转载,若要引用,请标注链接地址 全文共计1821字,阅 ...
- [LINUX]linux系统日志
linux系统日志 second60 20180206 1简介 linux系统拥有非常强大的日志功能,保存着几乎有所有操作记录,包括内核和程序产生的各种错误信息,警告信息或其他提示信息,对这些信息管 ...
最新文章
- antd + react model自定义footer_使用ESLint+Prettier规范React+Typescript项目
- STM32 UART串口驱动程序
- Qt高级——QTestLib单元测试框架
- java 图形绘制_Java Graphics 图形绘制
- 关于直播学习笔记-005-nginx-rtmp-win32在Win10上使用
- 3.4 SE55表维护生成器
- 吴恩达深度学习CNN作业:Convolutional Neural Networks: Step by Step
- 计算机视觉(CV)中HOG算法的主要步骤
- 吴恩达神经网络和深度学习-学习笔记-25-定位数据不匹配
- 游戏开发之友元类和友元函数(C++基础)
- linux之Fedora 20 开启telnet服务
- JAVA-JSP内置对象之request获得所有的参数名称
- visa卡号生成器 在线_作为一名程序员,我都收集了哪些好玩的生成器?
- 基于matlab的捷联惯导算法编程(二)
- jenkins集成kettle
- c语言使用反三角函数,C语言中反三角函数怎样调用?
- [日常] win10系统设置电脑从不休眠睡眠
- 在wamp使用tp5框架开发,连接数据库
- HTML网页图片引用设置
- mysql 索引的命中率_MYSQL索引命中率