SpringBoot项目nohup启动运行日志过大的解决方案
SpringBoot项目nohup启动运行日志过大
如下SpringBoot启动命令
nohup java -Xmx2048m -Xms2048m -jar springboot-demo.jar >>./log.los 2>&1 &
使用这条命令启动会导致日志文件和jar包同级,并且随着日积月累,越来越大。最终撑爆目录。
临时解决办法
如果日志已经撑爆了你的盘符,可以使用echo > access.log在日志文件写入一个空,如果直接rm -rf log.log会导致日志不正常打印(不会影响到logback等框架的日志打印)。
解决办法
1、使用日志框架,例如logback.xml,配置打印最近三个月或六个月的日志,超过时间的会自动删除。
2、将日志指定一个黑洞目录,使得本地不打印此日志:
nohup java -Xmx2048m -Xms2048m -jar springboot-demo.jar >>/dev/null 2>&1 &
这样不会影响logback日志的正常打印。
SpringBoot项目nohup运行按日期拆分日志
springboot打包成jar后,通常放于linux使用nohup来执行,如:↓
nohup java -jar PACKAGE_NAME.jar > LOGFILE_NAME 2>&1 &
但是弊端是产生的日志文件只有一个,且会越来越大
这里介绍一个linux工具:cronolog(文件分割工具)
下载地址:https://pkgs.org/download/cronolog
如何使用
使用yum安装cronolog
yum install cronolog -y
修改jar包启动命令
nohup java -jar PACKAGE_NAME.jar | cronolog ./catalina-%Y-%m-%d.out >> /dev/null 2>&1 &
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
基于SpringBoot+Elasticsearch实现一套完整的搜索服务系统
在内容平台场景中,高性能、高相关性、实时可搜是搜索模块的核心诉求,本文基于 SpringBoot 与 Elasticsearch(ES),从零实现一套包含索引初始化、数据同步、增量更新、关键词检索、游标分页的完整搜索服务,需要的朋友可以参考下2026-05-05
Spring Boot集成Shiro并利用MongoDB做Session存储的方法详解
这篇文章主要给大家介绍了关于Spring Boot集成Shiro并利用MongoDB做Session存储的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友下面来一起看看吧。2017-12-12


最新评论