rsyslog-日志管理 logrotate-日志轮转

日志的管理的方式,以及怎么自己写一个管理日志的小脚本,其实也不能算脚本

管理日志的进程

rsyslogd:绝大部分日志记录,和系统操作有关,安全,认证sshd,su,计划任务at,cron… httpd/nginx/mysql: 可以自己的方式记录日志

ps aux | grep rsyslogd | grep -v grep   # 最后这个管道后面内容则是将本次执行的命令过滤掉,不显示
root        1221  0.0  0.9 166840 14068 ?        Ssl  15:26   0:01 /usr/sbin/rsyslogd -n# 日志主配置文件
/etc/rsyslog.conf

常见的日志类型

tail -f /var/log/messages		        	#动态查看日志文件的尾部,系统主日志文件
tail -f /var/log/secure		            #记录认证、安全的日志
tail /var/log/maillog			            #跟邮件postfix相关
tail /var/log/cron			                #crond、at进程产生的日志
tail /var/log/dmesg			              	#和系统启动相关
tail /var/log/yum.log                       #yum的日志
tail -f /var/log/mysqld.log                 #MySQL日志
tail /var/log/xferlog                  		#和访问FTP服务器相关
/var/log/boot.log                           #系统启动过程日志记录存放
w					   #当前登录的用户 /var/log/wtmp
last				   #最近登录的用户 /var/log/btmp
第一列,用户名;
第二列,终端位置,/pts/0 (伪终端)意味着从诸如ssh或者telnet的远程链接的用户,tty(teletypewriter)意味着直接连接到计算机或者本地链接的用户;
第三列,登录的ip或者内核。
第四列,开始时间;
第五列,结束时间(still login in 还未退出 down 直到正常关机 crash 直到强制关机);lastlog			   #所有用户的登录情况 /var/log/lastlog

日志优先级

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

logrotate日志轮转

logrotate (轮转,日志切割) 
1. 如果没有日志轮转,日志文件会越来越大
2. 将丢弃系统中最旧的日志文件,以节省空间 
3. logrotate本身不是系统守护进程,它是通过计划任务crond每天执行
  • logrotate 配置文件:
主配置文件:/etc/logrotate.conf (决定每个日志文件如何轮转)
副配置文件:/etc/logrotatel.d 下面全都是副配置文件所放的文件夹
  • 语法
配置日志轮转
vim /etc/logrotate.conf	
weekly     			#轮转的周期,一周轮转,单位有年,月,日 
rotate 4			#保留4份 
create				#轮转后创建新文件 
dateext             #使用日期作为后缀 
#compress			#日志轮替时,旧的日志进行压缩 
include /etc/logrotate.d  			 #包含该目录下的配置文件,会引用该目录下面配置的文件/var/log/wtmp {			          	#对该日志文件设置轮转的方法    monthly			                #一月轮转一次  minsize 1M			            	#最小达到1M才轮转,否则就算时间到了也不轮转create 0664 root utmp		        #轮转后创建新文件,并设置权限   rotate 2			                #保留2份 
}/var/log/btmp {    missingok			              	#丢失不提示    monthly			                create 0600 root utmp		        rotate 1			                
} 
  • 选项
vim /etc/logrotate.d/newbee# 指定日志的位置
/var/log/newbee{   # 日志的文件路径,之后只会为这个路径日志进行轮转# 在日志轮转前要做的事
prerotate
# 取消隐藏权限a
chattr -a /var/log/newbee
# 结束脚本
endscript
# 上面这一段就是来时日志轮转的时候提前做的事情# weekly daily monthly yearly
# 以日期为后缀
dateext
# 轮转周期为 1天
daily
# 保留5份日志
rotate 5                 # 必须的,不然无日志轮转后的日志文件生成
# 设置属主属组 权限
create 0644 root root    # 必须的,不然日志轮转之后不生成空文件日志
# 设置压缩
compress# 轮转之后要做的事情
postrotate
# 再次添加a权限
chattr +a /var/log/newbee
# 结束脚本
endscript
}
  • 手动轮转日志文件
logrotate -f /etc/logrotate.d/newbee     # 手动轮转日志文件   后面跟的路径就是配置轮转的文件
  • 查看记录所有日志文件最近轮转的时间
grep yum /var/lib/logrotate/logrotate.status #查看记录所有日志文件最近轮转的时间
  • 配置项说明
size
触发分割的条件是:1.日志大小达到这个值,和时间周期没有关系。
minsize
触发分割的条件是:1.时间周期到了,2.日志大小达到这个值;两个条件都要满足。
maxsize
触发分割的条件是:1.时间周期到了,2. 日志大小大于这个值;两个条件任何一个满足。

其他知识

  • lrzsz
yum install -y lrzsz
# 上传到linux中
rz
# 下载到本地
sz  文件名

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/83400.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2. 两数相加

2. 两数相加 迭代 class Solution {public ListNode addTwoNumbers(ListNode l1, ListNode l2) {ListNode h1 l1, h2 l2, dummy new ListNode(-1, h1), d dummy;int carry 0, sum 0;while(h1 ! null && h2 ! null){sum h1.val h2.val carry;carry sum / 10…

基于nRF7002-DK的NFC功能切换系统(nRF Connect SDK+NFC)

目录 项目介绍硬件介绍项目设计开发环境及工程目录总体流程图硬件初始化NFC功能实现文本记录安卓应用打开按键切换功能 功能展示项目总结 👉 【Funpack2-6】基于nRF7002-DK的NFC功能切换系统 👉 Github: EmbeddedCamerata/nRF7002-DK-nfc-function-switc…

ADS放大器模型参数含义

ADS放大器模型参数含义 S21 : Forward Transmission Coefficient, use xj*y, polar(x,y), dbpolar(x,y) for complex value 增益,X是增益大小,y是相位 S11 : Forward Reflection Coefficient, use xj*y, polar(x,y), dbpolar(x,y), vswrpolar(x,y) for …

新手学习:ArcGIS对shp文件裁剪

新手学习:ArcGIS对SHP文件裁剪 新手学习 记录每个步骤,因为有很多控件可能刚开始还不熟悉,根本不知道在哪里,所以写的比较详细。 1.添加要裁剪的shp文件 2.查看shp文件的地理坐标系 双击shp文件,就可以查看shp文件的…

oracle 12c相对oralce 11g的新特性(3)|oracle 12c的自动化管理特性:自动备份、自动恢复、自动维护的功能使用

一、前言: 前面几期讲解了oracle 12c多租户的使用、In-Memory列存储来提高查询性能以及数据库的克隆、全局数据字典和共享数据库资源的使用 今天我们讲讲oracle 12c的另外的一个自动化管理功能新特性:自动备份、自动恢复、自动维护的功能 二、自动备份、自动恢复、自动维护…

C语言——贪吃蛇小游戏

目录 一、ncurse 1.1 为什么需要用ncurse: 1.2 ncurse的输入输出: 1.2.1 如何使用ncurse: 1.2.2 编译ncurse的程序: 1.2.3 测试输入一个按键ncurse的响应速度: 1.3 ncurse上下左右键获取: 1.3.1 如…

TypeScript 从入门到进阶之基础篇(一) ts类型篇

系列文章目录 文章目录 系列文章目录前言一、安装必要软件二、TypeScript 基础类型1.基础类型之 数字类型 number2.基础类型之 字符串类型 string3.基础类型之 布尔类型 boolean4.基础类型之 空值类型 void5.基础类型之 null 、undefined类型6.基础类型之 任意类型 any &#x…

解决ModuleNotFoundError: No module named ‘diffusers.models.cross_attention‘

目录 项目场景: 问题描述 原因分析: 解决方案: 方案一:

3dsmax 2020安装失败报1603错误 解决方法

本文地址:https://blog.csdn.net/t163361/article/details/132779780 想在自己电脑上安装3dsmax 2020,怎么也装不上,一直报1603错误。去网上找了找,官方有个报错处理的页面 安装Autodesk 2020以及更高软件软件提示1603错误 按照步骤一安装最…

面向面试知识--Lottery项目

面向面试知识–Lottery项目 1.设计模式 为什么需要设计模式? (设计模式是什么?优点有哪些?) 设计模式是一套经过验证的有效的软件开发指导思想/解决方案;提高代码的可重用性和可维护性;提高团…

新概念英语(第二册)复习——Lesson 1 - Lesson5

前言 重新整理下自己走过的英语路,算是一次梳理,也是一次简单的常识,更是为了以后做一次备份 不用怀疑,学完我曾经看过,听过,背过的资料,你也可以成为英语高手。 文章目录 前言Lesson 1 - A pr…

vue3 - Element Plus暗黑模式适配、切换及自定义颜色

GitHub Demo 地址 在线预览 Element Plus 2.2.0 版本开始支持暗黑模式,启用方式参考 Element Plus 官方文档 - 暗黑模式 demo通过Element Plus和VueUse 的 useDark 方法实现具有自动数据持久性的响应式暗黑模式。 安装 npm install element-plus --save npm in…

【go.mod file not found in current directory or any parent directory】

go编译程序出现错误提示: go.mod file not found in current directory or any parent directory; see ‘go help modules’ (exit status 1) 解决方法: cmd切换到go工程目录下,执行: go mod init 工程名称

canvas-绘图库fabric.js简介

一般情况下简单的绘制,其实canvas原生方法也可以满足,比如画个线,绘制个圆形、正方形、加个文案。 let canvas document.getElementById(canvas);canvas.width 1200;canvas.height 600;canvas.style.width 1200px;canvas.style.height 6…

9.20金融科技(比特币)

​ 比特币的起源和发展 2008年爆发全球金融危机,同年11月1日,一个自称中本聪(Satoshi Nakamoto)的人在P2P foundation网站上发布了比特币白皮书《比特币:一种点对点的电子现金系 ,陈述了他对电子货币的新设…

Mallox勒索病毒:最新变种malloxx袭击了您的计算机?

导言: 随着互联网的普及和数字化生活的发展,网络安全问题也逐渐成为了我们生活中不可忽视的一部分。其中,勒索病毒是一种恶意软件,它可以将您的数据文件加密,并要求您支付赎金以获取解密密钥。本文91数据恢复将介绍一…

IMX6ULL移植篇-Linux内核源码目录分析二

一. Linux内核源码目录 本文继续来具体说明 Linux内核源码的一些重要文件含义。 本文续上一篇文章,地址如下: IMX6ULL移植篇-Linux内核源码目录分析一_凌肖战的博客-CSDN博客 二. Linux内核源码目录分析 9. init 目录 此目录存放 Linux 内核启动的…

R绘制箱线图

代码大部分来自boxplot()函数的帮助文件,可以通过阅读帮助文件,调整代码中相应参数看下效果,进而可以理解相应的作用,帮助快速掌握barplot()函数的用法。 语法 Usage(来自帮助文件) barplot(height, ...)## Default S3 method: …

就只说 3 个 Java 面试题

在面试时,即使是经验丰富的开发人员,也可能会发现这是一些很棘手的问题: 1、Java中“transient”关键字的用途是什么?如何才能实现这一目标? 在 Java 中,“transient”关键字用于指示类的特定字段不应包含…

使用RKDevTool将update.img完整镜像进行解包,得到单独分区的镜像

(1)使用开发工具高级功能的解包 导入xx.img,然后点击解包(2)在Output/Android/Image得到想要的image