supervisor不一样的日志轮转
出于项目需求,需要读取某个进程的最新日志,而这个进程刚好是supervisor管控。
很自然地我就想到了,根据日志的编辑时间排序,获取最新的日志文件。
然而,发现了奇怪的一幕:

发现什么没有?
webcgj-0.std这个最初的日志编辑时间居然比webcgj-0.std.1的编辑时间完。不应该是webcgj-0.std写满了,再去写webcgj-0.std.1, 然后webcgj-0.std.2等等吗?
当然不是!
×××××××××××××××××××××××××××××××××××××××××××× 来自官方文档的解释 ××××××××××××××××××××××××××××××××××××××××××××××××××××××××××××
http://supervisord.org/logging.html#activity-log-rotation

以这个配置为例:
# supervisor配置文件
logfile =xxx.log
logfile_maxbytes = 50MB
logfile_backups=2
当进程启动时,创建xxx.log日志:
1、当xxx.log超过50M(logfile_maxbytes = 50MB)后, xxx.log更名为xxx.log.1(logfile_backups=2), 创建新文件xxx.log;
2、当xxx.log超过50M(logfile_maxbytes = 50MB)后,xxx.log.1更名为xxx.log.2(logfile_backups=2), xxx.log更名为xxx.log.1(logfile_backups=2), 创建新文件xxx.log;
3、当xxx.log超过50M(logfile_maxbytes = 50MB)后,xxx.log.2被删除(logfile_backups=2,且他是最老的日志), xxx.log.1更名为xxx.log.2(logfile_backups=2), xxx.log更名为xxx.log.1(logfile_backups=2), 创建新文件xxx.log;
4、无限循环3
我说清楚没?
得出两个结论:
(1)配置文件中日志名对应的日志是对应进程最新的日志数据;
(2)多看官方文档(我看过一个翻译的帖子,阐述错误)。
supervisor不一样的日志轮转的更多相关文章
- logrotate日志轮转配置文档
转自:http://blog.163.com/bull_linux/blog/static/2138811422013101334544349/ 使用: logrotate CONF_FILE+ ...
- 基于Spring Boot的Logback日志轮转配置
在生产环境下,日志是最好的问题调试和跟踪方法,因此日志的地位是十分重要的.我们平时经常使用的log4j,slf4j,logback等等,他们的配置上大同小异.这里就结合Spring Boot配置一下L ...
- docker中实现服务日志轮转
问题背景 通常我们一个完整的应用镜像有两部分组成,一个是运行时环境,一个是应用程序.我们以php应用为例,一个完整的php应用需要包含openresty + php两个服务来配置运行时环境,然后再加上 ...
- logrotate日志轮转
1)基本介绍 适合应用服务日志,系统日志按天切割 如果没有日志轮转,日志文件会越来越大 将丢弃系统中最旧的日志文件,以节省空间 logrotate本身不是系统守护进程,它是通过计划任务crond每天执 ...
- python日志轮转RotatingFileHandler在django中的一个bug
简介 大量过时的日志会占用硬盘空间,甚至长时间运行不注意会占满硬盘导致宕机,那么就可以使用内建logging模块根据文件大小(logging.handlers.RotatingFileHandler) ...
- 09、日志轮转+rsync同步
logrotate - rotates, compresses, and mails system logs 日志轮转 rotate 日志切割 轮转 切割 备份 归档 常见 ...
- supervisor 日志轮转
Supervisord 会基于 logfile_maxbytes 和 logfile_backups 轮转日志.当活跃日志文件大小达到 logfile_maxbytes,这个文件会被重命名为备份文件, ...
- apache日志轮转
apache默认的日志配置为: ErrorLog "logs/error_log" CustomLog "logs/access_log" co ...
- python logging 日志轮转文件不删除问题
前言 最近在维护项目的python项目代码,项目使用了 python 的日志模块 logging, 设定了保存的日志数目, 不过没有生效,还要通过contab定时清理数据. 分析 项目使用了 logg ...
- Apache自带的rotatelogs实现日志轮转
用Apache自带的rotatelogs程序处理apache生成的日志自动截断重新生成,rotatelogs是一个配合Apache管道日志功能使用的简单程序.设置方法如下: 编辑Apache的主配置文 ...
随机推荐
- 《Unix/Linux系统编程》第十四章学习笔记 20201209戴骏
MySQL数据库系统 知识点总结 一.MySQL MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于Oracle 旗下产品.MySQL 是最流行的关系型数据库管理系统之一 ...
- el-dropdown-item 添加点击 事件无效 (vue)
如图 无效!!! 为什么呢?? 想了一下,可能是因为 el-dropdown-item 没有自定义click事件 so! 解决办法就是 添加原生事件 : @click.native 还有 ...
- ios怎么在自己公司网站扫描下载安装IPA安装包
企业证书(或者99的证书,但是有100个设备限制)打包的IPA安装包,怎么发布给用户安装使用呢? 试了直接给用户.ipa包的链接,手机不能像安卓手机那样安装,平时我们测试放在蒲公英的包蒲公英应该是有做 ...
- prophet安装(ubuntu16 python3.6)
ubuntu16 python3.6 (ubuntu16自带的python3是3.5 升级至3.6可参考https://blog.csdn.net/weixin_42544006/article/de ...
- QT搭建Ffmpeg开发环境gcc版本
1 先安装qt 解压ffmpeg包 2打开qt创建工程 3 导入头文件和库文件 这里一定要注意gcc版本和库的版本一定要一致 4 添加一下简单的源代码 1 #include <libavcode ...
- Python 时间日期获取(今天,昨天或者某一段时间)
日常使用的时间函数: 昨天,或者N天的日期 import time def time_stamp(days): hours = int(days) t = time.strftime("%Y ...
- Spring Cloud学习记录
Eureka和zookeeper都是注册中心为什么zookeeper不适合? 1.CAP原则.一致性,可用性,分区容错性,最多满足两种.zookeeper遵循CP原则,实际项目中不应该为了一致性失去可 ...
- software engineering homework 1
1. 回顾你过去将近3年的学习经历 当初你报考的时候,是真正喜欢计算机这个专业吗? 你现在后悔选择了这个专业吗? 你认为你现在最喜欢的领域是什么(可以是计算机的也可以是其它领域)? 答:一开始感觉编程 ...
- 如何解决7z: command not found问题
7z是一种常见的压缩文件格式,如果你想要压缩或解压缩7z文件,你需要在你的系统上安装p7zip和p7zip-full.但是,有时候你会发现当你尝试运行7z或7za命令时,它会显示"bash: ...
- Verilog语法+:的说明
"+:"."-:"语法看到这个语法的时候是在分析AXI lite 总线源码时碰见的,然后查阅了资料,做出如下解释. 1.用处这两个应该算是运算符,运用在多位的变 ...