利用logrotate工具对catalina.out进行日志分割实战
logrotate是linux自带的日志分割工具,如果没有可以用yum安装
yum -y install logrotate
要配置日志分割定时任务,需要在/etc/logrotate.d/下创建一个名为catalina的配置文件
(注:logrotate.d目录下的配置文件是用作logrotate.conf的补充)
touch /etc/logrotate.d/catalina
以下是配置文件内容,可以选择vi/vim编辑catalina配置文件输入内容
/home/tomcat/logs/catalina.out
{daily
rotate7
missingok
dateext
compress
notifempty
copytruncate
}
也可以选择用echo命令输入内容到catalina配置文件
1 echo -e "/home/tomcat/logs/catalina.out\n
2 {\ndaily\nrotate7\nmissingok\ndateext\ncompress\nnotifempty\ncopytruncate\n}">/etc/logrotate.d/catalina
这里 echo 必须加 -e 参数启用转义字符,引号必须使用 双引号。不然会出现无法换行等格式错误。
输入完记得
cat /etc/logrotate.d/catalina
查看一下配置文件内容是否正确。
确认无误后,修改/etc/anacrontab来决定任务执行时间
修改之前先对其进行备份
cp /etc/anacrontab /etc/anacrontab.bak
备份后对其进行修改
sed -i 's/START_HOURS_RANGE=3-22/START_HOURS_RANGE=1-22/g' /etc/anacrontab
START_HOURS_RANGE=3-22指的是任务在凌晨三点到二十二点之间执行,我们想让它在凌晨1~22点执行,故修改为
START_HOURS_RANGE=1-22
修改完之后日志分割定时任务就配置完成了
附上批处理命令:
pssh -h ip.list -P 'touch /etc/logrotate.d/catalina;
echo -e "/home/tomcat/logs/catalina.out\n{\ndaily\nrotate7\nmissingok\ndateext\ncompress\nnotifempty\ncopytruncate\n}">/etc/logrotate.d/catalina;
cp /etc/anacrontab /etc/anacrontab.bak;
sed -i 's/START_HOURS_RANGE=3-22/START_HOURS_RANGE=1-22/g' /etc/anacrontab'
还原命令:
pssh -h ip.list -P 'mv /etc/anacrontab.bak /etc/anacrontab;rm -f /etc/logrotate.d/catalina'
至此,日志分割定时任务配置完成。
利用logrotate工具对catalina.out进行日志分割实战的更多相关文章
- 【转】如何利用logrotate工具自动切分滚动中的日志文件
FROM : http://www.2cto.com/os/201503/381812.html 在很多实际项目中,应用程序会持续写日志,如果程序代码中没有调用支持自动切分(如按filesize或da ...
- 利用logrotate切割nginx的access.log日志
一.新建一个nginx的logrotate配置文件 /var/log/nginx/access.log { daily rotate compress delaycompress missingok ...
- 利用shell脚本实现nginx 的logs日志分割
Nginx 是一个非常轻量的 Web 服务器,体积小.性能高.速度快等诸多优点.但不足的是也存在缺点,比如其产生的访问日志文件一直就是一个,不会自动地进行切割,如果访问量很大的话,将 导致日志文件容量 ...
- logrotate实现Mysql慢日志分割
MySQL慢日志? MySQL的慢查询日志是MySQL提供的一种日志记录,它用来记录在MySQL中响应时间超过阀值的语句,具体指运行时间超过long_query_time值的SQL,则会被记录到慢查询 ...
- 日志切割工具logrotate解决Tomcat catalina.out日志过大的问题
一.介绍日志切割logrotate 对于Linux系统安全来说,日志文件是极其重要的工具.不知为何,我发现很多运维同学的服务器上都运行着一些诸如每天切分Nginx日志之类的CRON脚本,大家似乎遗忘了 ...
- MYSQL启用日志,查看日志,利用mysqlbinlog工具恢复MySQL数据库【转载】
转自 MYSQL启用日志,查看日志,利用mysqlbinlog工具恢复MySQL数据库 - _安静 - 博客园http://www.cnblogs.com/xionghui/archive/2012/ ...
- linux使用logrotate工具管理日志轮替
对于Linux系统安全来说,日志文件是极其重要的工具.logrotate程序是一个日志文件管理工具.用于分割日志文件,删除旧的日志文件,并创建新的日志文件,起到"转储"作用.可以节 ...
- Linux环境下使用logrotate工具实现nginx日志切割
一. 前提背景及需求 nginx运行日志默认保存在nginx安装目录下的 /usr/local/nginx/logs 文件夹, 包含access.log和error.log两个文件. (1) acce ...
- Nginx-Tomcat 等运维常用服务的日志分割-logrotate
目录 一 .Nginx-Tomcat 等常用服务日志分析 Nginx 日志 Tomcat日志 MongoDB 日志 Redis 日志 二 .日志切割服务 logrotate 三.日志切割示例 Ngin ...
随机推荐
- golang中channel
1. Channel是Go中的一个核心类型,你可以把它看成一个管道,通过它并发核心单元就可以发送或者接收数据进行通讯(communication). 2. select package main im ...
- 鸿蒙轻内核M核源码分析:LibC实现之Musl LibC
摘要:本文学习了LiteOS-M内核Musl LibC的实现,特别是文件系统和内存分配释放部分. 本文分享自华为云社区<鸿蒙轻内核M核源码分析系列十九 Musl LibC>,作者:zhus ...
- 多选菜单shell脚本
有 很多方法 可以读取Bash脚本中的用户输入. 但是,允许用户键入输入会带来一些问题. 主要问题是输入验证,您必须在其中考虑所有可能的输入. 解决此问题的一种简单方法是为Bash脚本创建一个多选菜单 ...
- 学习Java第5天
今天所做的工作: 1.包装类 2.数字处理类 3.ArrayList数组 4.学生信息管理系统样卷(部分) 明天工作安排: 1.完成学生信息管理系统样卷 2.核心技术接口继承,多态 所遇到的问题及解决 ...
- 【然天一】随机读写(4k)百盘天梯
随机读写适用于大量小文件的读写,是最贴近办公和编程的使用场景.现在很多硬盘厂商只宣传它们的连续读写(Seq),但除了游戏和视频剪辑场景之外并没有什么卵用. 总结一下: 傲腾秒杀全部 NAND SLC ...
- 聊一聊如何用C#轻松完成一个TCC分布式事务
背景 银行跨行转账业务是一个典型分布式事务场景,假设 A 需要跨行转账给 B,那么就涉及两个银行的数据,无法通过一个数据库的本地事务保证转账的 ACID ,只能够通过分布式事务来解决. 在 聊一聊如何 ...
- 「JOI 2015 Final」城墙
「JOI 2015 Final」城墙 复杂度默认\(m=n\) 暴力 对于点\((i,j)\),记录\(ld[i][j]=min(向下延伸的长度,向右延伸的长度)\),\(rd[i][j]=min(向 ...
- 转载_最值得阅读学习的10个C语言开源项目代码
"源代码面前,了无秘密",阅读优秀代码无疑是开发人员得以窥见软件堂奥而登堂入室的捷径.本文选取10个C语言优秀开源项目的代码作为范本,分别给予点评,免去东搜西罗之苦,点赞!那么问题 ...
- onclick="func()"和 onclick = "return func()"区别
onclick="func()" 表示只会执行 func , 但是不会传回 func 中之回传值onclick = "return func()" 则是 执行 ...
- 数据库监测sql执行
SQL Server Profiler可以检测在数据上执行的语句,特别是有的项目不直接使用sql语句,直接使用ORM框架的系统处理数据库的项目,在调试sql语句时,给了很大的帮助. 之前写了使用SQL ...