rsyslog与journal日志架构
系统日志架构概述
在centos7系统中有两个日志服务,分别是传统的rsyslog和新添加的systemd-journal
systemd-journal是一个改进型的日志管理服务,可以收集来自内核、系统早期的启动阶段的日志、系统守护进程在启动和运行中的标准
输出和错误信息、还有syslog的日志。
该日志服务仅仅把日志集中保存在单一结构化的日志文件/run/log默认情况下并不会持久化保存日志、每次重启后,之前的日志都会丢失
。另外,一些rsyslog无法收集的日志也会被jounral记录到
rsyslog作为传统的系统日志服务,把所有收集到的日志都记录到/var/log目录下的各个日志文件中。常见的日志文件如下:
系统日志
/var/log/message //绝大多数的系统日志都记录到文件
/var/log/secure //所有跟安全和认知授权等日志都会记录到此文件中 *****
/var/log/maillog //邮件服务日志
/var/log/cron //计划任务日志 *****
/var/log/boot.log //系统启动相关的日志
/var/log/demsg //内核缓冲信息,系统启动时,硬件相关信息
/var/log/audit/audit.log //系统审计相关的日志 程序日志
/var/log/yum.log //yum相关的日志 ***
/var/log/xferlog //ftp日志
/var/log/httpd/access_log //httpd访问日志 *****
/var/log/httpd/error_log //httpd错误日志 *****
/var/log/mysql.log //mysql日志 *****
... 特殊日志,二进制文件,不能直接查看
/var/log/wtmp //登录用户信息,使用w命令 *****
/var/log/btmp //最近登录用户信息,使用last命令 ***
/var/log/lastlog //所有用户登录信息,使用lastlog命令
案例1:统计远程登录成功的IP地址TOP10
[root@xiaoming log]# grep 'Accepted' /var/log/secure | awk '{print $11}' | sort | uniq -c | head
10.0.1.1 案例2:统计远程登录失败的用户排名
[root@xiaoming log]# grep 'Failed' /var/log/secure | awk '{print $9}' | sort | uniq -c | sort -rn
root
www 采集->排序—>去重->排序
rsyslog日志审查
rsyslog主配置文件是rsyslog.conf
syslog日志类型
syslog日志的级别:
LOG_EMERG //紧急,致命信息,服务无法继续运行,内核奔溃等
LOG_ALERT //报警,需要立即处理,磁盘空间使用95%等
LOG_CRIT //致命行为
LOG_ERR //错误行为
LOG_WARNING //警告信息
LOG_NOTIC //普通信息
LOG_INFO //标准信息
LOG_DEBUG //调试信息,排错所需,一般不建议使用
看懂简单的日志设定规则,分析日志字段
手工发送日志logger
[root@xiaoming log]# logger -p authpriv.info -t "test" "ERR"
[root@xiaoming log]# tail -1l /var/log/secure
Jan :: xiaoming test: ERR
journal日志审查
这是systemd自带的日志服务工具所有日志记录到/run/log文件中,必须使用如下命令才可打开
# journalctl 查看所有日志
# journalctl -n 查看最后5条日志
# journalctl -p err 查看err类型的日志
# journalctl -f 不断输出最后10条日志
# journalctl --since today 查看今天的日志
# journalctl --since "2020-02-03 08:00:00" --until "2020-02-04 09:00:00"
# journalctl -o verbose 查看日志详细信息
# journalctl _SYSTEMD_UNIT=sshd.service
日志轮询logrotate
一个项目一般由多个组件协作实现,各组件会生成不同的日志。为控制日志,组件一般对自己产生的日志会有一定的设置,这些日志配置通常是写死的
,常见控制日志信息的工具有Log43和SLF43。因为磁盘容量有限,在多个组件共同作用下,可能会出现日志未到规定时间删除,而磁盘大小被日
志撑满,不能再写入的情况。
logrotate一定程度上可以简化对会生成大量日志文件的系统的管理。logrotate可以实现自动轮替、删除、压缩和mail日志的功能。
rsyslog与journal日志架构的更多相关文章
- RHEL7通过Rsyslog搭建集中日志服务器
说明:这里是Linux服务综合搭建文章的一部分,本文可以作为单独搭建rsyslog日志服务器的参考. 注意:这里所有的标题都是根据主要的文章(Linux基础服务搭建综合)的顺序来做的. 如果需要查看相 ...
- SQL Server中的事务日志管理(2/9):事务日志架构概述
当一切正常时,没有必要特别留意什么是事务日志,它是如何工作的.你只要确保每个数据库都有正确的备份.当出现问题时,事务日志的理解对于采取修正操作是重要的,尤其在需要紧急恢复数据库到指定点时.这系列文章会 ...
- rsyslog同步history日志(转载)
前言 由于公司业务是由公司内部开人员及外包团队共同开发,所以需要使用rsyslog对history日志做收集.审计.虽然搭建及配置非常简单,但是在日常运维工作中很实用,所以记录下,方便日后快速搭建.如 ...
- journalctl 清理journal日志
在CentOS 7开始使用的systemd使用了journal日志,这个日志的管理方式和以往使用syslog的方式不同,可以通过管理工具维护. 使用df -h检查磁盘文件,可以看到/run目录下有日志 ...
- 日志框架之2 slf4j+logback实现日志架构 · 远观钱途
如何从缤纷复杂的日志系统世界筛选出适合自己的日志框架以及slf4j+logback的组合美妙之处?此文可能有帮助 logback介绍 Logback是由log4j创始人设计的另一个开源日志组件,官方网 ...
- 通过filebeat、logstash、rsyslog采集nginx日志的几种方式
由于nginx功能强大,性能突出,越来越多的web应用采用nginx作为http和反向代理的web服务器.而nginx的访问日志不管是做用户行为分析还是安全分析都是非常重要的数据源之一.如何有效便捷的 ...
- Rsyslog收集应用日志
收集系统其它服务日志,在客户端node1 上操作,示例以openstack-nova 服务的日志为例: 1.先修改配置文件 /etc/rsyslog.conf,完整内容如下: [root@node1 ...
- centos 如何用 rsyslog 搭建本地日志服务(续1: omprog模块与php deamon的配合使用)
上一篇说到了如何用 rsyslog 搭建本地的日志服务,地址在这里,没有看的童鞋可以先瞅一眼 : http://www.cnblogs.com/smallrookie/p/5677004.html 显 ...
- centos 如何用 rsyslog 搭建本地日志服务
一.问题背景 最近项目遇到一个问题,服务器响应很慢,team中的两个有经验的工程师找了一台服务器分析了一下,发现问题出在磁盘写入过于频繁.这里大概介绍一下背景,我们的服务器上面主要是跑各种PHP接口, ...
随机推荐
- 翻译SSD论文(Single Shot MultiBox Detector)
转自http://lib.csdn.net/article/deeplearning/53059 作者:Ai_Smith 本文翻译而来,如有侵权,请联系博主删除.未经博主允许,请勿转载.每晚泡脚,闲来 ...
- UVA_10603 倒水问题 隐式图搜索
这道题目是刘汝佳白书上的例题,没有LRJ在白书上提到的划归为搜索问题,还真是一时难以想到好的解法.即三个瓶子,任意的一个状态都是一个节点,最后就划归为一个搜索问题. 由于题目数据量不大,三个杯子容量都 ...
- POJ 2528 Mayor‘s poster 线段树+离散化
给一块最大为10^8单位宽的墙面,贴poster,每个poster都会给出数据 a,b,表示该poster将从第a单位占据到b单位,新贴的poster会覆盖旧的,最多有10^4张poster,求最后贴 ...
- 代码杂谈-or符号
看到别人的代码里用了 or, 有点巧用. 记录一下. def func(a,b, context=None): # .... ctx = context or global_context() # . ...
- Thread--synchronized&volatile
- c语言:函数的递归调用
c语言可以将代码模块化,这是其很重要的一个特性. 说道代码模块化,我们很自然的就会联想到函数.而函数中,比较难的一个知识点就是函数的递归调用. 值得注意的是,函数的递归调用在现实工作并不是很常用,但是 ...
- Luogu P3031 高于中位数
定义序列\(x_i = f([H_i >=x])\;\;\;\;其中f(0) = -1,f(1) = 1\),那么区间[i,j]满足条件当且仅当sum_j-sum_{i-1} > 0,即s ...
- Java 继承(extends)、抽象类(abstract)的特点用法原理(7)
Java 中的继承 继承: java中的抽象类用法原理: /* 当多个类中出现相同功能,但是功能主体不同, 这是可以进行向上抽取.这时,只抽取功能定义,而不抽取功能主体. 抽象:看不懂. 抽象类的特 ...
- ModernCNN
# 深度卷积神经网络(AlexNet) LeNet: 在大的真实数据集上的表现并不尽如⼈意. 1.神经网络计算复杂. 2.还没有⼤量深⼊研究参数初始化和⾮凸优化算法等诸多领域. 机器学习的特征提取:手 ...
- UML-为什么要使用层?
1.内聚职责:使关系分离.减少耦合和依赖,提高潜在复用性. 2.领域层和技术服务层可以是分布式的 3.利于团队开发