Logback日志存放路径的问题
问题:
将一个应用程序打成了Jar包后,使用命令运行jar包,发现日志存放的路径并不统一:
比如 hello.jar 包放在 /aaa/bbb 目录下
如果在 /aaa/bbb 目录下执行:java -jar hello.jar ,那么日志就会存放在 /aaa/bbb 目录下
如果在 /aaa 目录下执行:java -jar bbb/hello.jar ,那么日志就会存放在 /aaa 目录下
如何才能不同位置执行jar包,但是日志放到一个统一的目录中呢?
解决过程:
查看logback.xml中与日志路径相关的部分如下:
<timestamp key="bySecond" datePattern="yyyyMMdd'-'HHmmss"/>
<appender name="FILE" class="ch.qos.logback.core.FileAppender">
<file>result-${bySecond}.log</file>
<append>true</append>
<encoder>
<pattern>%-4relative [%thread] %-5level %logger{35} - %msg%n</pattern>
</encoder>
</appender>
<file>result-${bySecond}.log</file>指定了存放日志的名称,是result-yyyyMMdd-HHmmss.log格式
其实这里也可以指定路径的,比如:<file>/home/xxx/logs/result-${bySecond}.log</file>
如果能够把这个绝对路径配置一下就好了,而且是在程序外部,这样方便了打成jar包以后也能配置
比如:<file>${logback.home}/result-${bySecond}.log</file>,在外部指定${logback.home}就可以
“随着通用日志组件转入 Slf4j,logback 也变成了默认的日志实现,像 log4j 一样,logback.xml 中也可以使用系统属性或环境变量,如 ${catalina.home}。”
既然logback是可以使用系统属性的,那就可以使用java -D 配置系统属性啊
如下:java -Dlogback.home="/home/xxx/logs" -jar hello.jar
问题解决!
原创文章,欢迎转载,转载请注明出处!
Logback日志存放路径的问题的更多相关文章
- hadoop之 hadoop日志存放路径
环境:[root@hadp-master hadoop-2.7.4]# hadoop versionHadoop 2.7.4 Hadoop的日志大致可以分为两类: (1).Hadoop系统服务输出的日 ...
- Spring boot+ logback环境下,日志存放路径未定义的问题
日志路径未定义 环境:Spring boot + logback 配置文件: <configuration> <springProfile name="dev"& ...
- SCCM日志存放路径
sccm有一些比较重要的日志大家可能经常需要查看.下面是一些比较常用的日志文件的存放位置. 客户端日志文件: 日志位于服务器端 SMS_CCM\Logs 文件夹中 日志位于客户端 %Windir%\S ...
- Spring Boot Logback日志配置
logback的使用: Logback的默认配置 如果配置文件 logback-test.xml 和 logback.xml 都不存在,那么 logback 默认地会调用BasicConfigurat ...
- springBoot(10)---logback日志
logback日志 一.概述 和log4j优点: 实际上,这两个日志框架都出自同一个开发者之手,Logback 相对于 Log4J 有更多的优点 (1)logback不仅性能提升了,初始化内存加载也 ...
- springboot+logback日志输出企业实践(下)
目录 1.引言 2. 输出 logback 状态数据 3. logback 异步输出日志 3.1 异步输出配置 3.2 异步输出原理 4. springboot 多环境下 logback 配置 5. ...
- springboot+logback日志输出企业实践(上)
目录 1.引言 2.logback简介 3. springboot默认日志框架-logback 3.1 springboot示例工程搭建 3.2 日志输出与基本配置 3.2.1 日志默认输出 3.2. ...
- 【使用篇二】SpringBoot的日志体系及如何开启logback日志(15)
抄自:https://blog.csdn.net/liujun03/article/details/82684209 Java应用中,日志一般分为以下5个级别(从高到低): ERROR 错误信息 WA ...
- SpringBoot中Logback日志的配置
说明 在SpringBoot中自带的日志工具是Logback,我们可以在Springboot的配置文件中直接对Logback进行一些简单的配置,如: logging.level.com.nowcode ...
随机推荐
- ceph 池管理
存储池的概念:比如有10个1T的硬盘,作为一个集群,那就可以在这个集群里划分几个池,给不同的组件使用 问题描述: 删除pool的时候提示下面的错误: ceph osd pool delete test ...
- 图文列表,关于Simpleadapter
main.xml: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xm ...
- 使用参数化查询防止SQL注入漏洞(转)
SQL注入的原理 以往在Web应用程序访问数据库时一般是采取拼接字符串的形式,比如登录的时候就是根据用户名和密码去查询: string sql * FROM [User] WHERE UserName ...
- Sqlite 快速批量插入数据 测试
public static int insertDbBatch() { string sql = ""; SQLiteConnection conn = new SQLiteCon ...
- vue build,本地正常访问,服务器上,网页一刷新是404,解决办法
服务器报错如下图: 此原因,是服务器配置的原因,跟build代码本身无关 以ftp为例,在/etc/nginx/conf.d文件夹下,找到xxx.conf,修改成自己需要的路径即可 位置如下两张图:
- Keras实现风格迁移
风格迁移 风格迁移算法经历多次定义和更新,现在应用在许多智能手机APP上. 风格迁移在保留目标图片内容的基础上,将图片风格引用在目标图片上. 风格本质上是指在各种空间尺度上图像中的纹理,颜色和视觉图案 ...
- Ubuntu+Qt+OpenCV+FFMPEG环境搭建
基于ubuntu16.04下opencv3.2安装配置 Ubuntu16.04下安装FFmpeg(超简单版) Qt编译后提示: /usr/bin/ld: 找不到 -lGL 安装libGL: sudo ...
- JS计算混合字符串长度
用的是正则表达式 var str = ”坦克是tank的音译”; var len = str.match(/[^ -~]/g) == null ? str.length : str.length + ...
- SSIS 包配置
在商业智能解决方案中,SSIS工程有两种部署模式:工程部署(project deployment)和包部署(package deployment),默认是工程部署模式,在Package的管理上,工程部 ...
- 如何使用淘宝 NPM 镜像,安装CNPM的方法
npm 版本需要大于 3.0 前提:安装好npm 环境:Linux 直接在linux下输入命令: npm install -g cnpm --registry=https://registry.npm ...