tomcat catalina localhost 没有项目_实用shell脚本--一键配置tomcat定期日志清理功能
概述
日志文件包含了关于系统中发生的事件的有用信息,在排障过程中或者系统性能分析时经常被用到。对于忙碌的服务器,日志文件大小会增长极快,服务器会很快消耗磁盘空间,这成了个问题。除此之外,处理一个单个的庞大日志文件也常常是件十分棘手的事。
logrotate是个十分有用的工具,它可以自动对日志进行截断(或轮循)、压缩以及删除旧的日志文件。例如,你可以设置logrotate,让/var/log/foo日志文件每30天轮循,并删除超过6个月的日志。配置完后,logrotate的运作完全自动化,不必进行任何进一步的人为干预。
因为服务器比较多,所以简单写了个shell脚本来直接配置logrotate。
logrotate配置文件说明
Logrotate的记录日志
logrotate自身的日志通常存放于/var/lib/logrotate/status目录。如果处于排障目的,我们想要logrotate记录到任何指定的文件,我们可以指定像下面这样从命令行指定。
[root@clsn6 ~]# logrotate -vf -s /var/log/logrotate-status /etc/logrotate.d/log-file
tomcat设置自动切割
对于catalina,localhost,manager,host-manager这四类日志,使用tomcat 8.5.24版本后新添加的maxDays属性进行管理。打开日志配置,将日志配置为3天后自动删除
#vim $tomcat/conf/logging.properties
1catalina.org.apache.juli.AsyncFileHandler.maxDays = 32localhost.org.apache.juli.AsyncFileHandler.maxDays = 33manager.org.apache.juli.AsyncFileHandler.maxDays = 34host-manager.org.apache.juli.AsyncFileHandler.maxDays = 3
对于catalina.out标准输入输出日志,使用linux自带的logrotate进行管理。将日志配置为3天后自动删除
#vim /etc/logrotate.d/tomcat
$tomcat/logs/catalina.out { daily #logrotate周期 rotate 3 #保存多久 missingok notifempty #如果是空文件的话,不转储 compress}
shell脚本配置tomcat自动切割
1、脚本内容
#!/bin/bash#copyright by hwb --2019/7/12tomcat=/home/tomcat8052#配置catalina,localhost,manager,host-manager日志保留3天cat << EOF >> $tomcat/conf/logging.properties1catalina.org.apache.juli.AsyncFileHandler.maxDays = 32localhost.org.apache.juli.AsyncFileHandler.maxDays = 33manager.org.apache.juli.AsyncFileHandler.maxDays = 34host-manager.org.apache.juli.AsyncFileHandler.maxDays = 3EOF#logrotate配置3天cat << EOF >> /etc/logrotate.d/tomcat$tomcat/logs/catalina.out { copytruncate daily rotate 3 missingok}EOFecho "=======配置catalina,localhost,manager,host-manager日志保留3天========="cat $tomcat/conf/logging.properties |grep maxDaysecho "=================logrotate配置catalina.out保留3天====================="cat /etc/logrotate.d/tomcat
2、执行脚本
执行脚本会去配置logrotate
3、测试lorotate功能
# logrotate -d /etc/logrotate.conf
测试成功。
后面会分享更多devops和DBA方面的内容,感兴趣的朋友可以关注一下~
tomcat catalina localhost 没有项目_实用shell脚本--一键配置tomcat定期日志清理功能相关推荐
- tomcat catalina localhost 没有项目_Tomcat简介--01
一.tomcat简介 Tomcat是Apache软件基金会(Apache Software Foundation)的Jakarta项目中的一个核心项目,由Apache,Sun和其他一些公司及个人共同开 ...
- Eclipse的JavaWeb项目导入到IntelliJ IDEA 并且配置Tomcat
Eclipse的JavaWeb项目导入到IntelliJ IDEA 并且配置Tomcat 第一步:准备工具我用的是 IntelliJ IDEA 2016.3(64) 这个版本的,在eclipse中 ...
- shell脚本批量导出MYSQL数据库日志/按照最近N天的形式导出二进制日志[连载之构建百万访问量电子商务网站]...
shell脚本批量导出MYSQL数据库日志/自动本地导出MYSQL二进制日志,按天备份[连载之构建百万访问量电子商务网站] 出处:http://jimmyli.blog.51cto.com/我站在巨人 ...
- shell脚本一键部署lnmp架构
shell脚本一键部署lnmp架构 1. 创建存放脚本的目录 2. 创建脚本文件 3. 编写脚本 4. 通过IP地址直接访问PHP界面 1. 创建存放脚本的目录 [root@localhost ~]# ...
- shell脚本 一键部署 Lnmp 及社区论坛 服务架构
shell脚本 一键部署 Lnmp 一键部署 Lnmp 一键部署 注:亲,记得把所需要的软件包,先放到/opt目录中:以及该机子的内存大小.核数先设置好! #!/bin/bash #先配置好yum e ...
- shell脚本一键部署LNMP
前言 使用shell脚本一键部署LNMP需要的安装包 nginx-1.15.9.tar.gz mysql-boost-5.7.20.tar.gz php-7.1.10.tar.bz2 Discuz_X ...
- shell脚本一键安装nginx
使用shell脚本一键安装Nginx 操作环境Centos7,联网进行安装. 代码如下: #!/bin/bash #this is nginx.sh #date 2018.10.6 [ $(i ...
- shell脚本一键安装二进制Apache
转载来源 :shell脚本一键安装二进制Apache : http://www.178linux.com/23401 安装背景:用的一台最小化安装的centos6. 编译安装安装的必备安装gcc,gc ...
- 超实用的shell脚本--一键获取进程所有信息
转载来源 :超实用的shell脚本–一键获取进程所有信息 :http://www.safebase.cn/article-257427-1.html 摘要: 概述有时我们想只是通过一个进程PID就可以 ...
最新文章
- 不同级域名中的 Cookie 共享
- Learn OpenGL (三):着色器
- AI目前的根本问题——缺乏 自由意志,无法分辨真正的善恶
- python递归深度报错--RuntimeError: maximum recursion depth exceeded
- mysql数据库主从配置
- 【MM】 基于收货的发票校验
- 缓存工具类MyCacheUtil
- 字长16位的计算机表示最大整数_废话不多说跪送计算机选择8前十题
- Apache JMeter 压测webservice接口
- Python 动态获取对象的属性和方法(内含inspect)
- SDWebImage 的简单使用方法
- java游戏抽卡_怎么处理游戏中抽卡概率算法,每个卡有数量限制,抽完概率也会变。...
- linux中查找文件并合并文件
- [JNI] 开发实例(2) 编译libwebsocket,封装jni函数,搭建IM通信基础服务
- mysql安装+navicat激活
- Abaqus CAE2022启动时报错“The desired vendor daemon is down”
- BF发卡网开源源码+详细教程
- python scatter参数详解_Python中scatter函数参数及用法详解
- R语言与多元线性回归+逐步回归
- SDUT-2245 小学数学
热门文章
- html中的标签在xml中被识别为什么,在strings.xml中定义html标签
- C语言题目集-分西瓜
- 光子 量子 DNA计算机的发展情况,科研萌新关于非冯诺依曼结构计算机的一些知识mewo~~...
- ios c语言编译环境搭建,iOS开发之runtime(一):runtime调试环境搭建
- Java黑皮书课后题第9章:*9.3(使用Date类)编写程序创建一个Date对象,设置它的流逝时间分别为...,然后使用toString()方法分别显示上述日期
- cocos2dx java 调用lua_Cocos2d-x Lua实现从Android回调到Lua的方法
- 尚学python课程---11、linux环境下安装python注意
- iOS 网络输入流提供请求体(适用于大容量内容)
- SQL查询语句执行速度快,存储过程执行慢
- arm学习笔记五(c/c++与arm汇编混合编程)