Nginx访问日志按天拆分

使用 logrotate 来实现

如果系统没有安装logrotate 可以使用

sudo yum install logrotate -y

进行安装

配置 logrotate

接下来我们就来配置 nginx 切割的配置文件,我的 nginx 日志路径在/var/log/nginx

我们在 /etc/logrotate.d/ 目录下新建一个 nginx 的文件

vim nginx
/usr/local/nginx/access.log   # 指定了日志文件的路径和模式
{  #这是一个配置块,包含了针对日志文件的一系列指令。su root root  #指定在执行日志轮转操作时,切换到root用户和root组。daily #指定日志轮转的频率为每天一次。dateext  #指示logrotate在轮转日志文件时,使用日期扩展名,例如access.log-20240101。missingok  #即使日志文件丢失或不可访问,也不会在执行轮转操作时产生错误。rotate 180  #指定保留180个旧的日志文件轮转,超过这个数量的旧文件将被删除。notifempty #如果日志文件为空,则不进行轮转。compress  #指示logrotate使用压缩来减少旧日志文件占用的磁盘空间。create 644  #在轮转后创建新的日志文件,并设置文件权限为644sharedscripts  #指示logrotate在执行轮转操作时,使用共享脚本(如果配置中有定义)。postrotate  #指定在日志轮转后执行的脚本或命令。[ -f /usr/local/nginx/logs/nginx.pid ] && kill -USR1 `cat /usr/local/nginx/logs/nginx.pid`#这是一个条件命令,当nginx.pid文件存在时,向Nginx主进程发送USR1信号,使其重新打开日志文件。endscript
}

我们也可以先手 手动执行一下切割试试看看效果
logrotate -f /etc/logrotate.d/nginx

效果如下:
在这里插入图片描述

logrotate 配置项详解

logrotate 的默认配置文件是 /etc/logrotate.conf。主要参数:

daily–>指定转储周期为每天weekly–>指定转储周期为每周monthly–>指定转储周期为每月dateext–>在文件末尾添加当前日期compress–>通过 gzip 压缩转储以后的日志nocompress–>不需要压缩时,用这个参数copytruncate–>先把日志内容复制到旧日志文件后才清除日志文件内容,可以保证日志记录的连续性nocopytruncate–>备份日志文件但是不截断create mode owner group–>转储文件,使用指定的文件模式创建新的日志文件nocreate–>不建立新的日志文件delaycompress 和 compress –>一起使用时,转储的日志文件到下一次转储时才压缩nodelaycompress–>覆盖 delaycompress 选项,转储同时压缩。errors address–>专储时的错误信息发送到指定的 Email 地址ifempty–>即使是空文件也转储,这个是 logrotate 的缺省选项。notifempty–>如果是空文件的话,不转储mail address–>把转储的日志文件发送到指定的 E-mail 地址nomail–>转储时不发送日志文件olddir directory–>转储后的日志文件放入指定的目录,必须和当前日志文件在同一个文件系统noolddir–>转储后的日志文件和当前日志文件放在同一个目录下rotate count–>指定日志文件删除之前转储的次数,0 指没有备份,5 指保留 5 个备份tabootext [+] list 让 logrotate –> 不转储指定扩展名的文件,缺省的扩展名是:.rpm-orig, .rpmsave, v,~size–> size 当日志文件到达指定的大小时才转储,Size 可以指定 bytes (缺省)以及 KB (sizek)或者 MB (sizem).prerotate/endscript –>在转储以前需要执行的命令可以放入这个对,这两个关键字必须单独成行postrotate/endscript –>在转储以后需要执行的命令可以放入这个对,这两个关键字必须单独成行

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

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

相关文章

C++ Primer 总结索引 | 第十六章:模板与泛型编程

1、面向对象编程(OOP)和泛型编程 都能处理在编写程序时 不知道类型的情况。不同之处在于:OOP 能处理类型 在程序运行之前都未知的情况;而在泛型编程中,在编译时就能获知类型了 2、容器、迭代器 和 算法 都是泛型编程的…

【热梗案例】知识点阶段性综合汇总

文章目录 渲染对象、实现统计功能实现删除功能设置发布按钮实现发布按钮的提交功能 直接用CSS的模板&#xff0c;模板代码如下&#xff1a; <template><view class"title">近期热梗</view><view class"out"> <view class&qu…

全面解析BPMN、CMMN、DMN与XML

欢迎来到我的博客&#xff0c;代码的世界里&#xff0c;每一行都是一个故事 &#x1f38f;&#xff1a;你只管努力&#xff0c;剩下的交给时间 &#x1f3e0; &#xff1a;小破站 全面解析BPMN、CMMN、DMN与XML 前言BPMN&#xff08;业务流程模型与标记法&#xff09;定义与用途…

[数据结构] 基于插入的排序 插入排序希尔排序

标题&#xff1a;[数据结构] 排序#插入排序&希尔排序 水墨不写bug 目录 &#xff08;一&#xff09;插入排序 实现思路&#xff1a; 插入排序实现&#xff1a; &#xff08;二&#xff09;希尔排序 希尔排序的基本思想&#xff1a; 希尔排序的实现&#xff1a; 正…

MybatisPlus 多数据源 @DS 选择深入源码理解原理

文章目录 MybatisPlus 多数据源 DS 选择深入源码理解原理 MybatisPlus 多数据源 DS 选择深入源码理解原理 数据源的选择&#xff0c;拦截器为DynamicDataSourceAnnotationInterceptor 这里利用了一个MethodInterceptor接口&#xff0c;我们看看&#xff0c;我们可以看到这个包…

防御笔记第四天(持续更新)

1.状态检测技术 检测数据包是否符合协议的逻辑顺序&#xff1b;检查是否是逻辑上的首包&#xff0c;只有首包才会创建会话表。 状态检测机制可以选择关闭或则开启 [USG6000V1]firewall session link-state tcp ? check Indicate link state check [USG6000V1]firewall ses…

CLion学习笔记-cmake编译和多main函数编译

这里就不讲怎么配置clion了 项目名字 pcl_kdtree_search 1.新建一个工程名字自己取&#xff0c;我这里用自己学习pcl的&#xff0c;加一个main函数&#xff0c;这个时候Cmake里边就是这样的。 #声明要求的cmake最低版本 cmake_minimum_required(VERSION 3.19) #声明一个工程…

消息称台积电下周开始试产 2nm 芯片,有望率先用于苹果 iPhone 17

消息称台积电下周开始试产 2nm 芯片&#xff0c;有望率先用于苹果 iPhone 17 &#x1f4a1;&#x1f4f1; 大家好&#xff0c;我是猫头虎&#xff0c;科技自媒体博主 &#x1f431;&#x1f42f;&#xff0c;带你洞察科技世界的每一个细节&#xff01;&#x1f525; 关于猫头…

sklearn(Python机器学习库)介绍

0 引言 Sklearn (全称 Scikit-Learn)是基于Python 编程语言的免费软件机器学习库。 Scikit-learn主要是用Python编写的,它建立在 NumPy, SciPy, Pandas 和 Matplotlib 之上,里面API 的设计非常好,所有对象的接口简单,很适合新手上路。 Scikit-learn与许多其他Python库很好地…

MAT(Eclipse Memory Analyzer) Windows安装

MAT&#xff08;Eclipse Memory Analyzer&#xff09; Windows安装 MAT&#xff08;Eclipse Memory Analyzer&#xff09;是一个Java的内存分析工具 MAT下载地址 安装完成之后的目录机构 如若出现java版本过低的解决办法 在配置文件MemoryAnalyzer.ini中添加指定Java的版本…

PD协议诱骗芯片,XSP08Q,XSP16应用笔记

XSP08Q是3C数码或小家电产品的Type-C接口控制芯片&#xff0c;它负责和PD充电器通讯&#xff0c;获取充电器的快充电压档位&#xff0c;如5V4A&#xff0c;9V3A&#xff0c;12V2A&#xff0c;15V3A&#xff0c;20V5A等等。 XSP08Q支持PD协议&#xff0c;BC1.2协议&#xff0c;Q…

从产业链视角审视工作

从产业链视角审视工作&#xff1a;定位、价值与成长 作为一名技术博客博主&#xff0c;我经常收到各种关于职业发展、技术成长和学习路径的问题。最近&#xff0c;我看了一份学习报告&#xff0c;其中提到了一种非常有趣且实用的视角——从产业链的角度去审视自己的工作。这种视…

Web 自动化测试主流框架都有哪些?

Web移动端自动化测试成为了现代软件开发流程中的重要环节&#xff0c;因此&#xff0c;很多主流框架被开发出来来帮助开发人员提高测试效率。本篇文章将从零到一详细介绍Web移动端自动化测试的主流框架。 一、Web移动端自动化测试框架简介 Web移动端自动化测试框架是一种开发工…

百元平价蓝牙耳机哪款好?平价高性价比蓝牙耳机推荐

随着蓝牙耳机的普及&#xff0c;市面上各种品牌的蓝牙耳机也层出不穷。对于那些预算在百元平价的朋友来说&#xff0c;百元平价蓝牙耳机哪款好&#xff1f;这个问题就显得格外重要了。毕竟&#xff0c;蓝牙耳机作为日常生活中不可或缺的小伙伴&#xff0c;不仅需要音质出众、续…

AD3518 SOP-8封装 单节锂电池保护芯片 可替代XB8608/XB8608A

AD3518 是一款内置 MOSFET 的单节锂电池保护芯片。该芯片具有非常低的功耗和非常低阻抗的内置 MOSFET。该芯片有充电过压&#xff0c;充电过流&#xff0c;放电过压&#xff0c;放电过流&#xff0c;过热&#xff0c;短路&#xff0c;电芯反接等各项保护等功能&#xff0c;确保…

7.深度学习概述

深度学习概述 1. 线性回归1.1 线性回归一般表达式1.2 线性回归内积表达方式&#xff1a;1.3 多个样本时&#xff0c;线性回归的进一步表达&#xff1a;1.4 线性回归方程的解析1.5 线性回归就是求loss函数的最小值 2. 如何求函数最小值2.1 一个例子2.2 求导法——求最小值2.3 求…

使用“nvm use 版本号“命令无效

使用"nvm use 版本号"命令无效 为什么无效?解决 为什么无效? 解决 将这个nodejs文件夹删除,然后在运行nvm use 版本号,则 node生效.

FastAPI 学习之路(三十四)数据库多表操作

之前我们分享的是基于单个表的数据库表的操作&#xff0c;我们在设计数据库的时候也设计了跨表&#xff0c;我们可以看下数据库的设计 class User(Base):__tablename__ "users"id Column(Integer, primary_keyTrue, indexTrue)email Column(String(10), uniqueTr…

不想成为失业大军,就要学习六西格玛?

最近&#xff0c;优思学院收到一封邮件&#xff0c;这封邮件的发送者是一位完成了我们六西格玛绿带课程的学生。 他的公司裡有20%的工程师被裁员&#xff0c;但值得注意的是&#xff0c;留下来的工程师中有70%人竟然都持有六西格玛绿带或黑带证书。 他的公司不仅希望利用这些…

el-table封装popver組件,点击列筛选行数据功能,支持筛选,搜索,排序功能

子组件&#xff1a; <template><div class"tableTool" ref"tableTool" click.stop><el-button click"shengFnc">升序</el-button><el-button click"jiangFnc">降序</el-button><el-input v-m…