使用Logback日志保存到相对路径的操作

作者:缄默大叔 时间:2021-10-11 16:42:30 

说明

在使用Logback中需要保存输出日志,但是却在保存的时候路径出现问题

项目背景

1、Win7

2、Java Web + Tomcat 7.0(在D盘目录下)

3、Logback 1.1.7

案例一

Logback.xml文件配置


<!-- 路径名称 -->
<property name="log.base" value="logs" />
<!-- 保存的文件名 -->
<property name="log.fileName" value="log" />

注意:value=“logs”

如果是以这种方式配置,那么日志文件则保存到在项目启动的目录下,

即 D:\tomcat7.0\bin\logs\log.txt

案例二

Logback.xml文件配置


<!-- 路径名称 -->
<property name="log.base" value="/logs" />
<!-- 保存的文件名 -->
<property name="log.fileName" value="log" />

注意:value=“/logs”

如果是以这种方式配置,那么日志文件则保存到系统目录下,

即 D:\logs\log.txt

案例三

Logback.xml文件配置


<!-- 路径名称 -->
<property name="log.base" value="../logs" />
<!-- 保存的文件名 -->
<property name="log.fileName" value="log" />

注意:value=“../logs”

如果是以这种方式配置,那么日志文件则保存到系统目录下,

即 D:\tomcat7.0\logs\log.txt

总结

文件相对保存路径设置可分以下三种:

1. value=“logs” – 表示保存到程序运行目录,在tomcat中为bin目录

2. value=“/logs” – 表示保存到系统目录

3. value=“../logs” – 表示保存到程序运行目录的父目录

补充知识:logback-spring.xml中三种相对路径生成的日志文件的位置

logback-spring.xml中关于路径配置的三种写法:

写法1:<property name="log.path" value="logs" />

写法2:<property name="log.path" value="/logs" />

写法3:<property name="log.path" value="../logs" />

项目(路径D:\workspace\Test)启动的三种场景:

场景1:项目所在workspace在D盘,直接从eclipse中启动

场景2:打成jar包放在桌面的test文件夹下,用bat文件(java -jar Test.jar)启动

场景3:jar文件放在centOS的/test目录下,用sh文件(nohup java -jar Test.jar &)启动


场景1

场景2

场景3

写法1

D:\workspace\Test\logs\{name}

C:\Users\{user}\Desktop\logs\{name}

/test/logs/{name}

写法2

D:\logs\{name}

C:\logs\{name}

/logs/{name}

写法3

D:\workspace\logs\{name}

C:\Users\{user}\logs\{name}

/logs/{name}

注:路径中的{user}为C盘中当前用户目录名称,{name}为配置文件中的${log.name}即日志文件名称

来源:https://blog.csdn.net/yy_wg/article/details/54847833

标签:Logback,日志,相对路径
0
投稿

猜你喜欢

  • unity实现翻页按钮功能

    2021-07-15 03:33:47
  • C++中String类型的逆序方式

    2023-11-19 05:46:52
  • C#构造函数详解

    2023-02-25 22:38:50
  • C#执行SQL事务用法实例

    2021-11-23 23:32:27
  • JavaWeb通过IDEA配置Servlet操作流程详解

    2023-10-09 09:26:23
  • Android资源文件与层次式导航超详细讲解

    2022-07-14 16:28:22
  • Android 中HttpURLConnection与HttpClient使用的简单实例

    2022-01-08 23:43:33
  • SpringBoot整合MybatisPlus的教程详解

    2023-12-06 18:05:20
  • Android仿支付宝中余额宝的数字动画效果

    2021-10-17 08:32:54
  • java利用url实现网页内容的抓取

    2023-05-14 11:10:21
  • Android多个TAB选项卡切换效果

    2022-04-10 03:03:15
  • Java list如何根据id获取子节点

    2023-09-04 09:42:37
  • C#获取系统版本信息方法

    2022-12-13 04:45:20
  • Mybatis的详细使用教程

    2022-02-15 21:08:20
  • springboot 如何解决yml没有spring的小叶子标志问题

    2021-06-12 02:57:01
  • java基于递归算法实现汉诺塔问题实例

    2022-10-22 00:16:14
  • 一篇文章带你入门Java之编程规范

    2022-02-25 16:18:40
  • Android Studio实现简易计算器App (Java语言版)

    2023-08-02 01:05:39
  • 详解Java类型擦除机制

    2023-10-29 06:41:21
  • java中的基础运算符

    2022-06-23 04:19:38
  • asp之家 软件编程 m.aspxhome.com