【JAVA技术】构建springboot项目报/tmp/spring.log(Permission denied)问题解决方案

今天运维和我说,部署springboot项目报错tmp/spring.log(Permission denied)。

虽然解决方案很简单,这里简单记录下,方便后续有遇到这方面问题的同学。

首先说下原因:一台linux服务器有多个用户,每个用户分别部署了不同的springboot项目,不同项目默认启动都生成了/tmp/spring.log。

既然知道原因了,解决方案写3种,按需处理:

1、运维最暴力直观的方式。

为/tmp 文件夹授权

linux命令:chmod -R 777 /tmp, /tmp目录权限太大,不是太安全,不推荐。

如果单纯chmod-R 777 /tmp/spring.log , 这个/tmp/spring.log按照linux的默认清除策略 可能30天后就清除/tmp文件下的文件了(过段时间继续赋予权限?),要么修改定时清理/tmp策略不清理某些文件。

java程序员的做法。springboot项目一般用logback日志,这里以logback.xml为例

2、不生成/tmp/spring.log文件,直接修改成default.xml

一般logback.xml默认写法

<include resource="org/springframework/boot/logging/logback/base.xml"/>

修改成

<include resource="org/springframework/boot/logging/logback/default.xml"/>

3、重新指定下 spring.log文件路径, 添加LOG_TEMP临时路径

复制代码
<property name="LOG_TEMP" value="./logs"/>
<include resource="org/springframework/boot/logging/logback/base.xml"/>

随笔所记

原文链接: 【JAVA技术】构建springboot项目报/tmp/spring.log(Permission denied)问题解决方案

相关推荐
像我这样帅的人丶你还8 小时前
Java 后端详解(五):Redis 缓存
java·后端·全栈
plainGeekDev10 小时前
GreenDAO → Room
android·java·kotlin
杨运交15 小时前
[041][公共模块]分布式唯一ID生成器设计与实现:一款灵活可扩展的雪花算法框架
spring boot
亦暖筑序15 小时前
Java 8老系统AI Workflow实战:把一次性AI对话升级成可恢复工作流
java·后端
敲代码的彭于晏16 小时前
Bean 生命周期完全图解:前端同学也能看懂的 Spring 核心机制
java·前端·后端
plainGeekDev17 小时前
ButterKnife → ViewBinding
android·java·kotlin
像我这样帅的人丶你还1 天前
Java 后端详解(四):分页与搜索
java·javascript·后端
她的男孩1 天前
数据权限为什么不能只靠注解?Forge 的 Mapper 层 SQL 改写源码拆解
java·后端·架构
tntxia1 天前
Mybatis的日志输入
java
亦暖筑序1 天前
Java 8老系统Browser Agent实战:三层拦截把AI操作后台变成可审计流程
java·后端·设计模式