部署DeepSeek模型,进群交流最in玩法!
立即加群
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Logrotate实现Catalina.out日志按小时切割

Logrotate实现Catalina.out日志按小时切割

作者头像
星哥玩云
发布于 2022-07-25 04:24:38
发布于 2022-07-25 04:24:38
1.9K0
举报
文章被收录于专栏:开源部署开源部署

一.Logrotate工具介绍

Logrotate是一个日志文件管理工具,它是Linux默认自带的一个日志切割工具。用来把旧文件轮转、压缩、删除,并且创建新的日志文件。我们可以根据日志文件的大小、天数等来转储,便于对日志文件管理,一般都是通过cron计划任务来完成的,让日志切割实现按小时分割,按天分割等。

二.Logrotate运行机制

系统会定时运行logrotate,一般是每天一次。系统是这么实现按天执行的。crontab会每天定时执行/etc/cron.daily目录下的脚本,而这个目录下有个文件叫logrotate

[root@test01 ~]# cat /etc/cron.daily/logrotate

#!/bin/sh

/usr/sbin/logrotate -s /var/lib/logrotate/logrotate.status /etc/logrotate.conf

EXITVALUE=$?

if [ $EXITVALUE != 0 ]; then

    /usr/bin/logger -t logrotate "ALERT exited abnormally with [$EXITVALUE]"

fi

exit 0

实际运行时,Logrotate会调用配置文件/etc/logrotate.conf

三.Logrotate的组成

/usr/sbin/logrotate        #程序所在位置;

/etc/cron.daily/logrotate    #默认让Cron每天执行logrotate一次;

/etc/logrotate.conf        #全局配置文件;

/etc/logrotate.d/          #应用自个的配置文件存放目录,覆盖全局配置;

注意:logrotate.d 是一个目录,该目录里的所有文件都会被主动的读入/etc/logrotate.conf中执行。另外,如果/etc/logrotate.d/里面的文件中没有设定一些细节,则会以/etc/logrotate.conf这个文件的设定来作为默认值。

四.Logrotate的命令格式

logrotate [OPTION...] <configfile> -d, --debug :debug模式,测试配置文件是否有错误。 -f, --force :强制转储文件。 -m, --mail=command :压缩日志后,发送日志到指定邮箱。 -s, --state=statefile :使用指定的状态文件。 -v, --verbose :显示转储过程。

例如:想强行切割日志文件,不等logrotate切割。

[root@test01 ~]# /usr/sbin/logrotate -vf /etc/logrotate.d/tomcat  #我是用来测试用的嘿嘿

注意:CentOS7 命令是在/usr/sbin/里。

五.常用配置参数说明

Logrotate功能的实现,最重要的就是它的配置参数

下面介绍下它常用的配置参数:

compress

启用压缩,指的是轮替后的旧日志,这里默认用的是gzip压缩的

daily

每天轮替

dateext

使用当期日期作为命名格式

dateformat .%s

配合dateext使用,紧跟在下一行出现,定义文件切割后的文件名,必须配合dateext使用,只支持 %Y %m %d %s 这四个参数

ifempty

即使日志文件是空的也轮替

mail

将轮替后的文件发送到指定E-mail地址

copytruncate

用于还在打开中的日志文件,把当前日志备份并截断,是先拷贝再清空的方式,拷贝和清空之间有一个时间差,可能会丢失部分日志数据。

monthly

一个月轮替一次

nocompress

如果在logrotate.conf中启用了压缩,这里是做不用压缩的参数

nomail

不发送邮件到任何地址

notifempty

如果日志是空的就不轮替(也就是空日志不切割)

olddir + 目录

轮替后日志文件放入指定的目录,必须和当前日志文件在同一个文件系统

rotate +次数

轮替最多保留之前的数据几次,超出的将被删除或邮件接收,设为0则不保存

size size

当日志增长到指定大小的时候开始轮替

weekly

如果当前的星期几比上次轮替的星期几少,或者过了一个多星期,就会发生轮替通常是在每周的第一天轮替,如果logrotate不是每天运行的,会在第一次有机会时进行轮替

yearly

如果当前年份不同于上次轮替的年份,则进行日志轮替

Missingok

如果日志丢失,不报错继续滚动下一个日志

六.安装配置Logrotate

#yum安装下

 [root@test01 ~]# yum -y install logrotate

#机器已经装好tomcat,下面配置切割tomcat日志的配置文件

[root@test01 ~]# vim /etc/logrotate.d/tomcat

注意:logrotate的配置文件是/etc/logrotate.conf,通常不需要对它进行修改。

日志文件的切割轮循设置在独立的配置文件中,它们是放在/etc/logrotate.d/目录下的。

[root@test01 ~]# mkdir -p /var/log/tomcat/oldlog

[root@test01 ~]# cat /etc/logrotate.d/tomcat

/usr/local/tomcat8/logs/catalina.out {  #要切割的日志路径,如果是多个就用空格分隔

    notifempty    #如果日志是空的就不轮替(也就是空日志不切割)

    rotate 5000    #轮替最多保留之前的数据5000次

    missingok      #如果日志丢失,不报错继续滚动下一个日志

    compress      #启用压缩,指的是轮替后的旧日志,这里默认用的是gzip压缩的

    dateext        #使用当期日期作为命名格式

    dateformat .%Y%m%d-%H点    #配合dateext使用,紧跟在下一行出现,定义文件切割后的文件名,必须配合dateext使用,只支持 %Y %m %d %s

    olddir /var/log/tomcat/oldlog  #轮替后日志文件放入指定的目录 

}

注意:我这个配置里没有设置多久切割一次,但是它也是一天切割一次,因为当/etc/logrotate.d/tomcat这个文件没有配置时,默认是每天定时执行/etc/cron.daily/logrotate这个文件,这个文件是一天一次的。

#强制执行切割,查看/var/log/tomcat/oldlog下是否有日志

[root@test01 ~]# /usr/sbin/logrotate -vf /etc/logrotate.d/tomcat

reading config file /etc/logrotate.d/tomcat

olddir is now /var/log/tomcat/oldlog

Allocating hash table for state file, size 15360 B

Handling 1 logs

rotating pattern: /usr/local/tomcat8/logs/catalina.out  forced from command line (5000 rotations)

olddir is /var/log/tomcat/oldlog, empty log files are not rotated, old logs are removed

considering log /usr/local/tomcat8/logs/catalina.out

  log needs rotating

rotating log /usr/local/tomcat8/logs/catalina.out, log->rotateCount is 5000

Converted ' .%Y%m%d-%H点' -> '.%Y%m%d-%H点'

dateext suffix '.20181226-15点'

glob pattern '.[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]-[0-9][0-9]点'

glob finding old rotated logs failed

fscreate context set to unconfined_u:object_r:usr_t:s0

renaming /usr/local/tomcat8/logs/catalina.out to /var/log/tomcat/oldlog/catalina.out.20181226-15点

compressing log with: /bin/gzip

set default create context to unconfined_u:object_r:usr_t:s0

set default create context

#查看切割结果

#把之前切割的删除了,因为再定时切割文件是相同的,还是catalina.out.20181226-15点.gz这个文件,所以不会切割成功。

[root@test01 ~]# rm -rf /var/log/tomcat/oldlog/catalina.out.20181226-15点.gz [root@test01 ~]# ls /var/log/tomcat/oldlog/ [root@test01 ~]#

#设置定时任务,每一分钟切割一次(注意:日志里要有内容,因为前面定义空的日志文件是不切割的)

[root@test01 ~]# crontab –e */1 * * * * /usr/sbin/logrotate -vf /etc/logrotate.d/tomcat >>/var/log/tomcat/oldlog/cutting.log

#每俩小时切割一次

[root@test02 ~]# crontab -l 0 */2 * * * /usr/sbin/logrotate -vf /etc/logrotate.d/tomcat >> /root/chenjiaxin/cutting.log

#查看定时切割的结果

当然,上面设置一分钟切割一次,是为了实验能尽快看到效果。实际是需要根据公司需要来设置多久来切割一次日志的!

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
数据导入与预处理-第4章-数据获取python读取pdf文档
1、什么是pdf? PDF(Portable Document Foramt)是一种便捷式文本格式,由Adobe系统公司开发,其文件可以在任意操作系统中保持原有的文本格式。PDF文件中可以包含图片、文本、多媒体等多种形式的内容。
IT从业者张某某
2022/11/12
1.2K0
数据导入与预处理-第4章-数据获取python读取pdf文档
高考分数火热出炉!一份最全人工智能专业填报指南请收好
原来,这是广东、福建、云南以及北京等地陆续出台的新政策:对于高考成绩位于全省/市头部的考生,暂不公布高考成绩,为的是避免对「状元」们的过度炒作和曝光。
新智元
2021/07/06
4880
大学开设大数据专业,都安排了哪些课程?
第二批(32所):中国人民大学、复旦大学、北京邮电大学、华东师范大学、电子科技大学、北京信息科技大学、中北大学、长春理工大学、上海工程技术大学、上海纽约大学、浙江财经大学、广西科技大学、昆明理工大学、云南师范大学、云南财经大学、重庆理工大学、晋中学院、福建工程学院、黄河科技学院、湖北经济学院、佛山科学技术学院、广东白云学院、北京师范大学-中国香港浸会大学联合国际学院、成都东软学院、电子科技大学成都学院、贵州大学、贵州师范大学、安顺学院、贵州商学院、贵州理工学院、宁夏理工学、宿州学院。
钱塘数据
2018/03/06
14.2K0
学大数据哪家强?2018全国高职院校“大数据技术与应用” 专业排行榜
导读:在高职院校开设大数据技术与应用专业,符合当今社会经济发展对专业技能型人才的需要。
IT阅读排行榜
2018/09/29
9.2K0
学大数据哪家强?2018全国高职院校“大数据技术与应用” 专业排行榜
数据导入与预处理-第4章-pandas数据获取
数据经过采集后通常会被存储到Word、Excel、JSON等文件或数据库中,从而为后期的预处理工作做好数据储备。数据获取是数据预处理的第一步操作,主要是从不同的渠道中读取数据。Pandas支持CSV、TXT、Excel、JSON这几种格式文件、HTML表格的读取操作,另外Python可借助第三方库实现Word与PDF文件的读取操作。本章主要为大家介绍如何从多个渠道中获取数据,为预处理做好数据准备。
IT从业者张某某
2022/11/12
4.3K0
数据导入与预处理-第4章-pandas数据获取
用Python实现科研自动化
这个学期如期开课了,虽然是在家里。这学期我导开了一门《高等教育管理专题研究》,一口气给了11个专题。为了对这11个专题的文献分布情况有一个粗略的印象,我觉得都得找相关的文献来看看,但是11个专题都要重新检索一遍,重复性工作让人头秃……于是,我写了个python脚本,自动生成各个主题的关键词和引文分布情况的报告,效果如下图。
公众号机器学习与AI生成创作
2020/04/28
2.1K1
用Python实现科研自动化
想本科入读人工智能专业,这篇文章送给准备填志愿的你
在计算机专业和人工智能日益火爆的当下,很多人对这两个专业又是好奇又是憧憬。对此,清华大学刘知远教授近日在知乎上分享了一些内容,以帮助考生更加理性地选择专业,希望更多真正喜欢 CS/AI 的考生选好学校选对专业。
机器之心
2019/07/03
6430
想本科入读人工智能专业,这篇文章送给准备填志愿的你
实用干货:7个实例教你从PDF、Word和网页中提取数据
导读:本文的目标是介绍一些Python库,帮助你从类似于PDF和Word DOCX 这样的二进制文件中提取数据。我们也将了解和学习如何从网络信息源(web feeds)(如RSS)中获取数据,以及利用一个库帮助解析HTML文本并从文档中提取原始文本。
IT阅读排行榜
2019/03/11
5.7K0
实用干货:7个实例教你从PDF、Word和网页中提取数据
一文学会用Python操作Excel+Word+CSV
数据处理是 Python 的一大应用场景,而 Excel 又是当前最流行的数据处理软件。因此用 Python 进行数据处理时,很容易会和 Excel 打起交道。得益于前人的辛勤劳作,Python 处理 Excel 已有很多现成的轮子,比如 xlrd & xlwt & xlutils 、 XlsxWriter 、 OpenPyXL ,而在 Windows 平台上可以直接调用 Microsoft Excel 的开放接口,这些都是比较常用的工具,还有其他一些优秀的工具这里就不一一介绍,接下来我们通过一个表格展示各工具之间的特点:
Python小二
2020/12/18
3.2K0
一文学会用Python操作Excel+Word+CSV
国内高校大数据教研机构调研报告
本篇报告由清华大学大数据研究中心独家支持(原清华-青岛数据科学研究院发起),清华大学新闻传播学院博士后何静(沈阳教授团队)发布,研究内容主要围绕国内高校大数据教研机构的发展现状、教育科研水平及其行业影响力、传播影响力的对比分析等方面。以下为报告部分内容节选:
数据派THU
2021/07/16
7110
上海交大ACM班创始人俞勇:为培养中国的图灵奖得主而教书
采访约在一座商场的咖啡厅里,约定好的时间我迟到了,俞老师就站在店外等我。第一眼见到他时,我觉得「好年轻」,聊下去以后发现,他真的很年轻,尤其是谈到教育和学生有关的话题时,我能清楚地看到他眼里的光。
机器之心
2022/02/23
6890
上海交大ACM班创始人俞勇:为培养中国的图灵奖得主而教书
数据标准化红宝书权威发布!一文速读核心内容~~
👆点击“博文视点Broadview”,获取更多书讯 作为数字经济时代的新型治理范式,数据治理的核心特征是全企业的数据互通、数字化的全面协同与跨部门的流程再造,形成“用数据说话、用数据决策、用数据管理、用数据创新”的治理机制。 在目前数字化转型大趋势的推动下,企业数据治理的需求迫在眉睫。为了促进企业有序开展数据治理工作,进一步厘清企业转型升级的主要痛点和关键需求,被称为数据治理红宝书的《数据标准化:企业数据治理基石》于近日出版面世。 本文根据《数据标准化:企业数据治理基石》核心内容提炼总结,希望在数据标准化
博文视点Broadview
2023/04/04
6630
数据标准化红宝书权威发布!一文速读核心内容~~
大学机器人类公选课(ROS机器人高效编程)申请表、大纲、部分教案、进度表等材料分享
网页版系统演示(课程网址:https://www.shiyanlou.com/courses/854):
zhangrelay
2019/01/23
1.6K0
论文写完了还不知道投哪里?这些AI国际会议你需要知道
 ◆ 【推文专属优惠:转发文章至朋友圈并截图至组委会老师,即可领取100-500元投稿优惠券和免费参会门票】】】 01 机器学习、云计算与智能挖掘国际会议 Part.1 会议信息 【会议简称】:MLCCIM  2022 【截稿日期】:2022年5月10日 【大会官网】:http://www.mlccim.org/ 【投稿邮箱】:mlccim@126.com 【会议地点】:中国·厦门 【收录检索】:EI、Scopus 【主办单位】:上海交通大学、厦门理工学院、厦门理工学院、长沙理工大学、ESBK国际学术交流
zenRRan
2022/04/02
1.4K0
论文写完了还不知道投哪里?这些AI国际会议你需要知道
CAIL2021-阅读理解任务-数据预处理模块(一)
1、任务介绍 该赛道由科大讯飞研究院与哈尔滨工业大学社会计算与信息检索研究中心承办。在法律问答任务中,很多问题需要通过文章中多个片段组合出最终的答案。因此,本次中文法律阅读理解比赛引入多片段回答的问题类型,即部分问题需要抽取文章中的多个片段组合成最终答案。希望多片段问题类型的引入,能够扩大中文机器阅读理解的场景适用性。本次比赛依旧保留单片段、是否类和拒答类的问题类型。
西西嘛呦
2022/06/10
9880
【视频】文本挖掘专题:Python、R用LSTM情感语义分析实例合集|上市银行年报、微博评论、红楼梦、汽车口碑数据采集词云可视化
作为数据科学家,我们始终关注如何从非结构化数据中提取高价值信息。本专题合集聚焦企业年报的文本分析技术,通过Python与R语言实战案例,系统展示如何利用自然语言处理(NLP)技术量化企业年报的情感倾向。以10家上市银行2010-2022年的130份年报为研究对象,我们构建了包含停用词过滤、情感词典匹配、LSTM神经网络分类等完整技术链路,最终生成可量化的乐观指标矩阵(点击文末“阅读原文”获取完整代码、数据、文档)。
拓端
2025/03/18
1610
【视频】文本挖掘专题:Python、R用LSTM情感语义分析实例合集|上市银行年报、微博评论、红楼梦、汽车口碑数据采集词云可视化
银行的大数据应用
“大数据”一词据称最早于1980年出现在美国著名未来学家阿尔文·托夫勒所著的《第三次浪潮》一书中,他在书中将“大数据”称为“第三次浪潮的华彩乐章”。在笔者看来,大数据的应用效果主要取决于两部分,一是大数据的技术部分,二是对数据质量和价值有重要影响的数据治理部分,二者应当并重。本书分别介绍下这两条线的发展历程。
用户6900693
2020/04/10
1.5K0
商业数据分析从入门到入职(9)Python网络数据获取
本文主要讲Python最常见的应用之一——网络数据获取,即爬虫: 先介绍了网页和网络的基础知识,为从网页中获取数据打好基础;接下来以两个案例介绍从网络中获取数据和处理数据的不同方式,以进一步认识Python爬虫和数据处理。
cutercorley
2020/10/09
2.8K0
商业数据分析从入门到入职(9)Python网络数据获取
提供数据代码,基于空间信息的基因表达用于预测疾病结果
◉ 我们对AS、IF和TC区室进行了空间分析(10x Visium和DSP)。◉ 人工智能(AI)分析确定了五种与复发相关的基因,并通过LC–MS/MS蛋白质组学验证。◉ 开发了TIMES评分系统用于预测肝细胞癌(HCC)的复发,随后进行了三维生物打印和动物验证。◉ 图b显示了复发(REC)或非复发(非REC)HCC组织的苏木精和伊红(H&E)染色图像(上)和空间聚类(下)。◉ 图c显示了来自18个Visium样本(6名REC患者和11名非REC患者的18个Visium样本)的空间转录组测序的UMAP嵌入。◉ 图d基于白细胞基因的富集分析。阴影区域对应95%置信区间,中央线表示平均值;非REC(n = 11名患者)与REC(n = 6名患者),未配对双尾Welch t检验:P = 4.3×10^-4(IF)和P = 9.2×10^-4(TC)对于NK细胞。◉ 图e显示了非REC和REC组织中的CD3、CD16、CD56和CD57的多重免疫组化(mIHC)染色。◉ 图f显示了非REC(n = 31)和REC(n = 30)患者在IF处的CD3−CD57+ NK细胞比例。箱线图显示最小值(非REC为0.19,REC为0.18)、最大值(非REC为4.31,REC为1.24)和中位数(非REC为1.06,REC为0.62),须线延伸到最极端的数据点。每个点代表每位患者的所有测量值的平均值。未配对双尾t检验:P = 8.0×10^-4。◉ 图g显示了根据IF处CD3−CD57+ NK细胞计数与DAPI+细胞计数的中位比值(0.9028)分层的HCC患者DFS分析(NK高:非REC n = 21,REC n = 10;NK低:非REC n = 10,REC n = 20)。阴影区域对应95%置信区间,中央线表示中位数。Log-rank检验:P = 0.0066。◉ 图h显示了八个HCC组织中的64个感兴趣区域(白色圆圈)的DSP图像。◉ 图i显示了在CD57高IF区室中NK细胞激活和分化相关的基因集富集。单侧置换检验。对于统计显著性,P < 0.01和*P < 0.001。NES表示标准化富集分数。完整的图注见补充信息。数据来源
生信菜鸟团
2025/04/26
1470
提供数据代码,基于空间信息的基因表达用于预测疾病结果
day06.Hadoop快速入门云服务三种模式IaaS,PaaS和SaaS【大数据教程】
1. HADOOP背景介绍 1.1 什么是HADOOP 1). HADOOP是apache旗下的一套开源软件平台 2). HADOOP提供的功能:利用服务器集群,根据用户的自定义业务逻辑,对海量数据进行分布式处理 3). HADOOP的核心组件有 A. HDFS(分布式文件系统) B. YARN(运算资源调度系统) C. MAPREDUCE(分布式运算编程框架) 4). 广义上来说,HADOOP通常是指一个更广泛的概念——HADOOP生态圈 1.2 HADOOP产生背景 1). HADOOP最早起源于Nu
Java帮帮
2018/06/11
1.4K0
推荐阅读
数据导入与预处理-第4章-数据获取python读取pdf文档
1.2K0
高考分数火热出炉!一份最全人工智能专业填报指南请收好
4880
大学开设大数据专业,都安排了哪些课程?
14.2K0
学大数据哪家强?2018全国高职院校“大数据技术与应用” 专业排行榜
9.2K0
数据导入与预处理-第4章-pandas数据获取
4.3K0
用Python实现科研自动化
2.1K1
想本科入读人工智能专业,这篇文章送给准备填志愿的你
6430
实用干货:7个实例教你从PDF、Word和网页中提取数据
5.7K0
一文学会用Python操作Excel+Word+CSV
3.2K0
国内高校大数据教研机构调研报告
7110
上海交大ACM班创始人俞勇:为培养中国的图灵奖得主而教书
6890
数据标准化红宝书权威发布!一文速读核心内容~~
6630
大学机器人类公选课(ROS机器人高效编程)申请表、大纲、部分教案、进度表等材料分享
1.6K0
论文写完了还不知道投哪里?这些AI国际会议你需要知道
1.4K0
CAIL2021-阅读理解任务-数据预处理模块(一)
9880
【视频】文本挖掘专题:Python、R用LSTM情感语义分析实例合集|上市银行年报、微博评论、红楼梦、汽车口碑数据采集词云可视化
1610
银行的大数据应用
1.5K0
商业数据分析从入门到入职(9)Python网络数据获取
2.8K0
提供数据代码,基于空间信息的基因表达用于预测疾病结果
1470
day06.Hadoop快速入门云服务三种模式IaaS,PaaS和SaaS【大数据教程】
1.4K0
相关推荐
数据导入与预处理-第4章-数据获取python读取pdf文档
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档