返回顶部
首页 > 资讯 > 服务器 >Tomcat解决catalina.out文件过大的问题
  • 287
分享到

Tomcat解决catalina.out文件过大的问题

2024-04-02 19:04:59 287人浏览 独家记忆
摘要

目录前言暴力型技术型前言 有用Tomcat的,绝对都会遇到这样一个问题:catalina.out文件过大。 它是Tomcat默认生成的日志文件,会随着时间的推移,逐渐增大,不断的增长

前言

有用Tomcat的,绝对都会遇到这样一个问题:catalina.out文件过大。

它是Tomcat默认生成的日志文件,会随着时间的推移,逐渐增大,不断的增长,甚至达到几G,几十G的大小。由于文件过大,不仅占系统的存储,我们还将无法使用过常规的编辑工具进行查看,严重影响系统的维护工作。

对此,出现了以下几种解决catalina.out文件过大的方案。

暴力型

除非不需要日志,否则不建议使用

1.手动版

每次监控到tomcat的硬盘空间变小达到阈值,手动登陆服务器,切换到tomcat的logs下,手动清空

echo " "  > catalina.out

2.脚本版

编写脚本,放入计划任务中,定时清空

crontab -e 
0 24 * * *    sh /root/qin_catalina.out.sh

vim qin_catalina.out.sh
 #!/usr/bin/bash 
 echo " " > catalina.out

技术型

1.日志切割工具版0.1

使用cronolog日志切分工具切分Tomcat的catalina.out日志文件

<1>下载cronolog,并进行安装

wget Http://cronolog.org/download/cronolog-1.6.2.tar.gz   (中国服务器可能无法下载或下载缓慢,可先下载到境外服务器上)

tar zxvf cronolog-1.6.2.tar.gz

./cronolog-1.6.2/configure

make

make install

(默认安装在/usr/local/sbin下)

<2>.配置

在tomcat/bin/catalian.sh中

org.apache.catalina.startup.Bootstrap "$@" start \ >> "$CATALINA_BASE"/logs/catalina.out 2&1 &

改成:
org.apache.catalina.startup.Bootstrap"$@" start \ |/usr/local/sbin/cronolog "$CATALINA_BASE"/logs/catalina.%Y-%m-%d.out >> /dev/null 2>&1 &
或
org.apache.catalina.startup.Bootstrap   "$@"  start  2>&1  \   |  /usr/local/sbin/cronolog "$CATALINA_BASE"/logs/catalina.%Y-%m-%d.out >> /dev/null & 

并注释    touch "$CATALINA_OUT"  

<3>重启Tomcat

Tomcat输出日志文件分割成功,输出log文件格式变为:catalina.2017-05-15.out

1.日志切割工具版0.2

Centos6.5后自带logrotate程序,可以解决catalina.out的日志轮转问题

<1>在/etc/logrotate.d/目录下新建一个tomcat的文件

cat >/etc/logrotate.d/tomcat 

/usr/local/tomcat/logs/catalina.out{            要轮转的文件
    copytruncate                                创建新的catalina.out副本,截断源catalina.out文件
    daily                                       每天进行catalina.out文件的轮转
    rotate 7                                    至多保留7个副本
    missinGok                                   文件丢失了,轮转不报错
    compress                                    使用压缩
    size 500M                                    当catalina.out文件大于16MB,就轮转
}

其他参数:

compress                                   通过gzip 压缩转储以后的日志
nocompress                                 不做gzip压缩处理
copytruncate                               用于还在打开中的日志文件,把当前日志备份并截断;是先拷贝再清空的方式,拷贝和清空之间有一个时间差,可能会丢失部分日志数据。
nocopytruncate                             备份日志文件不过不截断
create mode owner group                    轮转时指定创建新文件的属性,如create 0777 nobody nobody
nocreate                                   不建立新的日志文件
delaycompress                              和compress 一起使用时,转储的日志文件到下一次转储时才压缩
nodelaycompress                            覆盖 delaycompress 选项,转储同时压缩。
missingok                                  如果日志丢失,不报错继续滚动下一个日志
errors address                             专储时的错误信息发送到指定的Email 地址
ifempty                                    即使日志文件为空文件也做轮转,这个是logrotate的缺省选项。
notifempty                                 当日志文件为空时,不进行轮转
mail address                               把转储的日志文件发送到指定的E-mail 地址
nomail                                     转储时不发送日志文件
olddir directory                           转储后的日志文件放入指定的目录,必须和当前日志文件在同一个文件系统
noolddir                                   转储后的日志文件和当前日志文件放在同一个目录下
sharedscripts                              运行postrotate脚本,作用是在所有日志都轮转后统一执行一次脚本。如果没有配置这个,那么每个日志轮转后都会执行一次脚本
prerotate                                  在logrotate转储之前需要执行的指令,例如修改文件的属性等动作;必须独立成行
postrotate                                 在logrotate转储之后需要执行的指令,例如重新启动 (kill -HUP) 某个服务!必须独立成
daily                                      指定转储周期为每天
weekly                                     指定转储周期为每周
monthly                                    指定转储周期为每月
rotate count                               指定日志文件删除之前转储的次数,0 指没有备份,5 指保留5 个备份
dateext                                    使用当期日期作为命名格式
datefORMat .%s                             配合dateext使用,紧跟在下一行出现,定义文件切割后的文件名,必须配合dateext使用,只支持 %Y %m %d %s 这四个参数
size(或minsize) log-size                   当日志文件到达指定的大小时才转储,log-size能指定bytes(缺省)及KB (sizek)或

<2>当执行以上操作时是自动执行的,也可手动切割

logrotate /etc/logrotate.conf

如果只轮转tomcat配置文件,要指定文件

logrotate --force /etc/logrotate.d/tomcat

<3>删除要清理的日志

手工查找需要清理的日志文件

cd /usr/local/tomcat/logs
rm -rf catalina.out.4.gz

2.日志切割脚本版

使用cron每天来定时备份当前的catalina.out,然后清空他的内容;

<1>crontab -e

01 0 * * *  sh /root/qie_catalina.out.sh

<2>cat qie_catalina.out.sh 参考脚本

 #!/bin/bash 
 DATE=`date "+%Y-%m-%d"`

cp /etc/tomcat/logs/catalina.out  /etc/tomcat/logs/`catalina.out.$DATE`
wait

echo " " > catalina.out

3.修改日志级别版

日志级别:

SEVERE (highest value) > WARNING > INFO > CONFIG > FINE > FINER > FINEST (lowest value)

<1>修改conf/logging.properties日志配置文件,将level级别设置成WARNING减少日志的输出。也可以设置成OFF,直接禁用。

catalina.org.apache.juli.FileHandler.level = WARNING

catalina.org.apache.juli.FileHandler.directory = ${catalina.base}/logs

catalina.org.apache.juli.FileHandler.prefix = catalina.

到此这篇关于Tomcat解决catalina.out文件过大的问题的文章就介绍到这了,更多相关Tomcat catalina.out文件过大内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: Tomcat解决catalina.out文件过大的问题

本文链接: https://lsjlt.com/news/139466.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Tomcat解决catalina.out文件过大的问题
    目录前言暴力型技术型前言 有用Tomcat的,绝对都会遇到这样一个问题:catalina.out文件过大。 它是Tomcat默认生成的日志文件,会随着时间的推移,逐渐增大,不断的增长...
    99+
    2024-04-02
  • 浅析Tomcat各种日志的关系与catalina.out文件的分割问题
    Tomcat 各日志之间的关系 一图胜千言! 其他日志如 localhost.{yyyy-MM-dd}.log、localhost-access.{yyyy-MM-dd}.log ...
    99+
    2024-04-02
  • vue中的vendor.js文件过大问题及解决
    目录vue vendor.js文件过大问题1. cdn 引入2. 在使用vue等包的地方,注释掉import引入3. 打包忽视掉vue等包vue打包降低vendors.js文件大小v...
    99+
    2022-11-13
    vue中vendor.js vendor.js文件过大 vue vendor过大
  • Linux下如何解决日志文件过大的问题
    这篇文章主要介绍Linux下如何解决日志文件过大的问题,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!如何让应用程序在后台执行:linux后台执行命令:&与nohup的用法通过以上方法,应用程序的日志会一直输出...
    99+
    2023-06-15
  • 如何解决使用vue打包时文件过大的问题
    这篇文章主要为大家展示了“如何解决使用vue打包时文件过大的问题”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何解决使用vue打包时文件过大的问题”这篇文章吧...
    99+
    2024-04-02
  • 如何解决vue项目打包后文件过大问题
    目录为什么打包后文件过大?如何快速解决1.路由懒加载【使用es6提案的import()方式】2.CDN引入为什么打包后文件过大? 移动app项目,使用vue-cli脚手架搭建,UI主...
    99+
    2024-04-02
  • PDF拆分是怎么完美解决文件过大问题
    今天就跟大家聊聊有关PDF拆分是怎么完美解决文件过大问题,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。最近小编的一位朋友常常跟我吐槽:在工作的时候,要处理大量的PDF文档,有些文档非...
    99+
    2023-06-04
  • 怎么解决vue项目打包后文件过大问题
    这篇文章主要讲解了“怎么解决vue项目打包后文件过大问题”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么解决vue项目打包后文件过大问题”吧!为什么打包后文件过大?移动app项目,使用vu...
    99+
    2023-06-30
  • 解决Access文件越来越大的问题
    有时候在使用Access文件的时候,随着增删改的不断的连续,会导致文件越来越大。即使手动删除或者使用delete语句删除了大量的数据记录,会发现文件的大小依然没有减掉,而且随着你再往里写数据,又会增大。 产生这个现象的原因跟Access本身...
    99+
    2021-10-04
    解决Access文件越来越大的问题 数据库入门 数据库基础教程
  • git仓库清理瘦身解决 .git文件夹过大的问题
    git仓库清理找了很多资料和方案都没有很完美执行成功的;现在找到一个完美方案,分享给大家;希望能帮助大家 问题 gitlab代码开发了仓库开发了五年了,代码只有10M;clone的时候要700多兆很浪...
    99+
    2023-08-31
    git github java
  • 解决docker运行tomcat提示找不到文件的问题
    目录docker运行tomcat提示找不到文件问题描述线索一:容器退出码线索二:无法找到文件顺藤摸瓜:catalina.sh解决方法docker运行tomcat提示找不到文件 问题描...
    99+
    2023-03-07
    docker运行tomcat提示找不到文件 docker启动tomcat提示找不到文件
  • Java通过导出超大Excel文件解决内存溢出问题
    前言 将业务数据导出到Excel表中,导出任务数据量较大时,导出的项目就会内存溢出,本文通过Java操作Poi的SXSSFWorkbook类进行导出,解决内存溢出问题。 1.采用Po...
    99+
    2024-04-02
  • IDEA中的Tomcat中文乱码问题如何解决
    这篇文章主要介绍“IDEA中的Tomcat中文乱码问题如何解决”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“IDEA中的Tomcat中文乱码问题如何解决”文章能帮助大家解决问题。1、IDEA2、VM...
    99+
    2023-07-05
  • Python大数据量文本文件问题怎么解决
    这篇文章主要介绍“Python大数据量文本文件问题怎么解决”,在日常操作中,相信很多人在Python大数据量文本文件问题怎么解决问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Python大数据量文本文件问题怎...
    99+
    2023-07-04
  • SpringMVC文件上传中要解决的问题大汇总
    目录SpringMVC文件上传中要解决的问题一、中文文件名编码问题二、文件位置存储问题三、文件名冲突问题四、控制文件类型和大小 五、上传图片回显问题六、进度条问题七、单独准...
    99+
    2023-01-15
    SpringMVC文件上传问题 SpringMVC文件上传
  • Mysql binlog日志文件过大的解决
    目录1、相关binlog配置2、binlog相关高级设置2.1 改变binlog模式2.2 相关SQL操作binlog磁盘突然报错使用率过大,排查原因,发现mysql的binlog文...
    99+
    2024-04-02
  • Android通过BLE传输文件遇到问题解决
    目录1、遇到的问题2、 能不能通过BLE传输文件3、 如何传输文件4、如何保证可靠性和稳定性1、超时重传2、序列号3、数据校验5、 传输速度提升 RequestMtu1、遇到的问题 ...
    99+
    2023-05-18
    Android BLE传输文件 Android BLE
  • 如何利用Plupload.js解决大文件上传问题
    这篇文章主要介绍如何利用Plupload.js解决大文件上传问题,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!大容量文件上传早已不是什么新鲜问题,在.net 2.0时代,HTML5也...
    99+
    2024-04-02
  • C#中获取文件大小问题怎么解决
    本篇内容主要讲解“C#中获取文件大小问题怎么解决”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“C#中获取文件大小问题怎么解决”吧!C# 获取文件大小直接贴代码吧   ...
    99+
    2023-07-05
  • tomcat崩溃问题怎么解决
    Tomcat崩溃问题可能是由于多种原因引起的,包括配置错误、内存不足、线程死锁等。以下是一些可能的解决方法:1. 检查Tomcat的...
    99+
    2023-09-12
    tomcat
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作