tomcat7配置log4j解决catalina.out日志过大问题
tomcat默认安装后,会每天会自动切割日志文件,(catalina.2010-10-08.log、catalina.2010-10-09.log、catalina.2010-10-10.log)这样的形式,但是他的catalina.out不清空,任其自由增长,时间长了系统性能急剧下降。
要解决catalina.out过大问题,网上有很多种方法,如:使用日志切割工具、或者自己写定时脚本:
#!/bin/bashcd `dirname $0`
d=`date +%Y%m%d`
d7=`date -d'7 day ago' +%Y%m%d`cd ../logs/cp catalina.out catalina.out.${d}
cat /dev/null > catalina.out
rm -rf catalina.out.${d7}
对其日志进行切割每天生成一个文件,并且删除7天前的文件。
其次,还可以对tomcat进行log4j配置,使用log4j的日志“切割”方式。配置如下:
1)下载与tomcat对应版本的tomcat-juli.jar 和 tomcat-juli-adapters.jar,或者tomcat-extras-juli-7.0.70.jar和tomcat-extras-juli-adapters-7.0.70.jar:
https://mvnrepository.com/artifact/org.apache.tomcat.extras
https://mvnrepository.com/artifact/org.apache.tomcat
2)将log4j.jar 和 tomcat-juli-adapters.jar放到$CATALINA_HOME/lib目录下;
3)将log4j.properties 放到$CATALINA_HOME/lib目录下;
4)用新下载的tomcat-juli.jar替换掉$CATALINA_HOME/bin/中的tomcat-juli.jar;(下载的tomcat-juli.jar包含了所有Commons Logging实现,能够发现log4j和配置)
5)删除$CATALINA_BASE/conf/logging.properties
6)修改 Tomcat 的 conf/context.xml 文件,将<Context>改为<Context swallowOutput="true">
7)重启tomcat
log4j.rootLogger = INFO, CATALINA# Define all the appenders
log4j.appender.CATALINA = org.apache.log4j.DailyRollingFileAppender
log4j.appender.CATALINA.File = ${catalina.base}/logs/catalina
log4j.appender.CATALINA.Append = true
log4j.appender.CATALINA.Encoding = UTF-8
# Roll-over the log once per day
log4j.appender.CATALINA.DatePattern = '.'yyyy-MM-dd'.log'
log4j.appender.CATALINA.layout = org.apache.log4j.PatternLayout
log4j.appender.CATALINA.layout.ConversionPattern = %d [%t] %-5p %c- %m%nlog4j.appender.LOCALHOST = org.apache.log4j.DailyRollingFileAppender
log4j.appender.LOCALHOST.File = ${catalina.base}/logs/localhost
log4j.appender.LOCALHOST.Append = true
log4j.appender.LOCALHOST.Encoding = UTF-8
log4j.appender.LOCALHOST.DatePattern = '.'yyyy-MM-dd'.log'
log4j.appender.LOCALHOST.layout = org.apache.log4j.PatternLayout
log4j.appender.LOCALHOST.layout.ConversionPattern = %d [%t] %-5p %c- %m%nlog4j.appender.MANAGER = org.apache.log4j.DailyRollingFileAppender
log4j.appender.MANAGER.File = ${catalina.base}/logs/manager
log4j.appender.MANAGER.Append = true
log4j.appender.MANAGER.Encoding = UTF-8
log4j.appender.MANAGER.DatePattern = '.'yyyy-MM-dd'.log'
log4j.appender.MANAGER.layout = org.apache.log4j.PatternLayout
log4j.appender.MANAGER.layout.ConversionPattern = %d [%t] %-5p %c- %m%nlog4j.appender.HOST-MANAGER = org.apache.log4j.DailyRollingFileAppender
log4j.appender.HOST-MANAGER.File = ${catalina.base}/logs/host-manager
log4j.appender.HOST-MANAGER.Append = true
log4j.appender.HOST-MANAGER.Encoding = UTF-8
log4j.appender.HOST-MANAGER.DatePattern = '.'yyyy-MM-dd'.log'
log4j.appender.HOST-MANAGER.layout = org.apache.log4j.PatternLayout
log4j.appender.HOST-MANAGER.layout.ConversionPattern = %d [%t] %-5p %c- %m%nlog4j.appender.CONSOLE = org.apache.log4j.ConsoleAppender
log4j.appender.CONSOLE.Encoding = UTF-8
log4j.appender.CONSOLE.layout = org.apache.log4j.PatternLayout
log4j.appender.CONSOLE.layout.ConversionPattern = %d [%t] %-5p %c- %m%n# Configure which loggers log to which appenders
log4j.logger.org.apache.catalina.core.ContainerBase.[Catalina].[localhost] = INFO, LOCALHOST
log4j.logger.org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager] =\INFO, MANAGER
log4j.logger.org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager] =\INFO, HOST-MANAGER
tomcat7配置log4j解决catalina.out日志过大问题相关推荐
- Tomcat下使用Log4j 接管 catalina.out 日志文件生成方式
为什么80%的码农都做不了架构师?>>> Tomcat下使用Log4j 接管 catalina.out 日志文件生成方式,按天存放,解决catalina.out日志文件过大问题 ...
- log4j 打印线程号配置_日志配置log4j 打印线程号
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 # Set root logger level to WARN and a ...
- 巧为tomcat插件配置log4j日志,解决未报错启动不成功
前情摘要 源于Maven项目中整合SSM框架后,运行一个根据商品id查询商品信息的Demo来测试是否整合成功. 在pom文件中配置好Tomcat插件,启动tomcat,如果成功,输出信息如下: May ...
- Spring boot配置log4j输出日志
1. pom.xml文件中配置parent,版本选定[1.2.5.RELEASE] 关于为什么要选这个版本:我尝试使用[1.4.1.RELEASE],但该版本库里没有[spring-boot-star ...
- log4j日志 linux配置,Log4j 日志详细用法
简单的说log4j就是帮助开发人员进行日志输出管理的API类库.它最重要的特点就可以配置文件灵活的设置日志信息的优先级.日志信息的输出目的地.日志信息的输出格式 Log4j 除了可以记录程序运行日志信 ...
- springmvc 项目完整示例05 日志 --log4j整合 配置 log4j属性设置 log4j 配置文件 log4j应用...
log4j 就是log for java嘛,老外都喜欢这样子,比如那个I18n ---internationalization 不就是i和n之间有18个字母... http://logging.a ...
- 解决Linux下Tomcat日志目录下的catalina.log日志文件过大的问题
解决Linux下Tomcat日志目录下的catalina.log日志文件过大的问题 参考文章: (1)解决Linux下Tomcat日志目录下的catalina.log日志文件过大的问题 (2)http ...
- 使用代码形式配置Log4J日志框架
2019独角兽企业重金招聘Python工程师标准>>> 一.使用代码形式配置Log4J日志框架 一般情况下,我们都是使用配置文件形式来配置Log4J日志框架,比如使用"lo ...
- 如何配置log4j每天产生日志,并且当天日志大于10M时自动生成另一个文件
http://bbs.csdn.net/topics/390635339?page=1 如何配置log4j每天产生日志,并且当天日志大于10M时自动生成另一个文件 假设 11-11日 生成comlib ...
最新文章
- 与空连接相关的几条命令
- AutoMapper 入门
- C++中mutable、volatile关键字
- 初级程序员面试不靠谱指南(六)
- 汇编语言(三十四)之输出中文
- django 模板两次for循环_Django模板之基本的 for 循环 和 List内容的显示方式
- 简单的web框架(python)
- iis configuration error
- spark to mysql date_[Spark][Python]Spark 访问 mysql , 生成 dataframe 的例子:
- python如何处理inp文件_python 之文件操作
- python语法总结
- c mysql学生管理系统_C++ 简单的学生信息管理系统
- ​一、什么是射频识别?二、射频识别系统组成及工作原理三、射频识别系统分类四、RFID与物联网​
- 北京课改版三年级英语教案二-Leo老师
- supermap idesktop 许可更新方案
- Android项目迁移到Androidx经验总结
- 阿里云大数据+AI技术沙龙上海站回顾 | ​揭秘TPC-DS 榜单第一名背后的强大引擎...
- vs2010MFC D3D播放YUV格式视频详细制作全过程
- 15.java获取当前主机ip
- 移动开发搭建本地商城接口
热门文章
- 防封链接,无投诉按钮链接,地推链接制作,活动链接制作,防封无投诉按钮链接制作方法。
- Adoby photoshop cs5永久序列号
- 百度搜索结果页面的参数 搜索框提示词搜索方式(rsv_sug2)
- MNE官网解读《Annotating continuous data》
- 操作系统简述复习笔记
- python名片管理系统2.0_python名片管理系统代码
- python实现千牛客服自动回复语_千牛自动回复话术
- dva介绍和官网案例
- c#精华网站收集(转摘自梅川酷子的博客)
- 三个基本的布尔逻辑算符是_布尔逻辑检索的主要运算符有哪些