SpringBoot之logback 在Linux系统上启动的时候,设置日志按日期分割并设置指定时间自动清除日志

一、在src/main/resources/下创建logback-spring.xml文件

<?xml version="1.0" encoding="UTF-8"?>
<configuration><!-- 日志存放路径 --><property name="log.path" value="/home/xmmc/logs" /><!-- 日志输出格式 --><property name="log.pattern" value="%d{HH:mm:ss.SSS} [%thread] %-5level %logger{20} - [%method,%line] - %msg%n" /><!-- 控制台输出 --><appender name="console" class="ch.qos.logback.core.ConsoleAppender"><encoder><pattern>${log.pattern}</pattern></encoder></appender><!-- 系统日志输出 --><appender name="file_info" class="ch.qos.logback.core.rolling.RollingFileAppender"><file>${log.path}/sys-info.log</file><!-- 循环政策:基于时间创建日志文件 --><rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"><!-- 日志文件名格式 --><fileNamePattern>${log.path}/sys-info.%d{yyyy-MM-dd}.log</fileNamePattern><!-- 日志最大的历史 60--><maxHistory>60</maxHistory></rollingPolicy><encoder><pattern>${log.pattern}</pattern></encoder><filter class="ch.qos.logback.classic.filter.LevelFilter"><!-- 过滤的级别 --><level>INFO</level><!-- 匹配时的操作:接收(记录) --><onMatch>ACCEPT</onMatch><!-- 不匹配时的操作:拒绝(不记录) --><onMismatch>DENY</onMismatch></filter></appender><appender name="file_error" class="ch.qos.logback.core.rolling.RollingFileAppender"><file>${log.path}/sys-error.log</file><!-- 循环政策:基于时间创建日志文件 --><rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"><!-- 日志文件名格式 --><fileNamePattern>${log.path}/sys-error.%d{yyyy-MM-dd}.log</fileNamePattern><!-- 日志最大的历史 60--><maxHistory>60</maxHistory></rollingPolicy><encoder><pattern>${log.pattern}</pattern></encoder><filter class="ch.qos.logback.classic.filter.LevelFilter"><!-- 过滤的级别 --><level>ERROR</level><!-- 匹配时的操作:接收(记录) --><onMatch>ACCEPT</onMatch><!-- 不匹配时的操作:拒绝(不记录) --><onMismatch>DENY</onMismatch></filter></appender><!-- 用户访问日志输出  --><appender name="sys-user" class="ch.qos.logback.core.rolling.RollingFileAppender"><file>${log.path}/sys-user.log</file><rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"><!-- 按天回滚 daily --><fileNamePattern>${log.path}/sys-user.%d{yyyy-MM-dd}.log</fileNamePattern><!-- 日志最大的历史 60--><maxHistory>60</maxHistory></rollingPolicy><encoder><pattern>${log.pattern}</pattern></encoder></appender><!-- 系统模块日志级别控制 设置捕获指定包下的日志信息 --><logger name="com.xmmc" level="info" /><!-- Spring日志级别控制  --><logger name="org.springframework" level="warn" /><root level="info"><appender-ref ref="console" /></root><!--系统操作日志--><root level="info"><appender-ref ref="file_info" /><appender-ref ref="file_error" /></root><!--系统用户操作日志--><logger name="sys-user" level="info"><appender-ref ref="sys-user"/></logger>
</configuration> 

二、通过如下命令启动jar

nohup java -jar demo.jar> spring.log 2>&1 &

启动以后会在/home/xmmc/logs下面按照日期输出日志,并超过60天的自动清除

三、启动以后会在jar旁边生成一个spring.log日志文件

会累计输出所有的日志信息,这里可以通过

rm -rf spring.log

删除日志即可,因为日志已经记录到对应的日志文件里面了,这里删除以后也不会生成对应的日志文件

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/200950.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

《智能决策技术及应用》笔记

团支部有读书会活动可以报销&#xff0c;我挑选买了一本《智能决策技术及应用》&#xff08;刘丽兰 等著&#xff09;&#xff0c;这本书分三篇&#xff0c;第三篇实际应用是在智能制造产业上就对我没啥大用。 内容其实都是主流的&#xff0c;但是编排上是有独特组合的&#x…

【算法】算法题-20231206

这里写目录标题 一、非自身以外数字的乘积二、最大数三、奇数排序 一、非自身以外数字的乘积 给你一个整数数组 nums&#xff0c;返回 数组 answer &#xff0c;其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。 题目数据 保证 数组 nums之中任意元素的全部前缀…

VA05销售报表屏幕增强

业务需求&#xff1a;在VA05报表界面增强两个字段&#xff08;BELNR1/BELNR2&#xff09;. 第一步&#xff1a;扩展VA05相关表结构 由于新增的字段是按照销售订单行维度展示的&#xff0c;所以本篇加在VBAP表里&#xff08;不扩展表字段&#xff0c;直接写增强&#xff0c;会…

融云 Global IM UIKit,灵活易用的即时通讯组件设计思路和最佳实践

&#xff08;全网都在找的《社交泛娱乐出海作战地图》&#xff0c;点击获取&#x1f446;&#xff09; 融云近期推出的 Global IM UIKit&#xff0c;支持开发者高效满足海外用户交互体验需求&#xff0c;且保留了相当的产品张力赋予开发者更多自由和灵活性&#xff0c;是实现全…

朝花夕拾华山平台流水账

2022年8月25日&#xff0c;我加入了诚迈科技&#xff08;南京&#xff09;&#xff0c;加入了华山平台。 跟我一起入职平台的还有三个小伙伴&#xff1a;小帅、小阳、小甘。 小帅能力很强&#xff0c;前后端都会&#xff0c;入职各种考试工具人。 小阳毕业没多久&#xff0c;一…

现货黄金会面临哪些风险?

进行现货黄金投资&#xff0c;我们除了要了解怎么找到交易机会以外&#xff0c;也要知道我们交易会面临哪些风险&#xff0c;了解风险就是做到知己知彼&#xff0c;了解风险才能控制风险。控制住风险&#xff0c;才能为我们稳定盈利打好基础&#xff0c;那么下面我们就来看看在…

ESP32-Web-Server编程-在网页中插入图片

ESP32-Web-Server编程-在网页中插入图片 概述 图胜与言&#xff0c;在网页端显示含义清晰的图片&#xff0c;可以使得内容更容易理解。 需求及功能解析 本节演示在 ESP32 Web 服务器上插入若干图片。在插入图片时还可以对图片设置一个超链接&#xff0c;用户点击该图片时&a…

本地ip查询介绍(包含公开免费的API接口)-本地ip查询API接口

本机ip和网络ip的区别 网络地址和主机地址 IP 地址&#xff08;Internet Protocol Address&#xff09;&#xff0c;即互联网协议地址&#xff0c;是一种用于唯一标识互联网上设备的地址。它包括网络地址和主机地址两部分&#xff0c;通常用“IPv4”或“IPv6”表示。 本机 …

使用axios处理Cookie、Session和Token(jwt)

在Vue中&#xff0c;可以使用JavaScript来处理Cookie、Session和Token。我们还是以登录为例介绍它们的使用 Cookie&#xff1a; 在Vue中&#xff0c;可以使用JavaScript内置的document.cookie来读取和设置Cookie。在登录过程中&#xff0c;可以将用户的身份信息存储在Cookie中…

Web API

JavaScript中有些API可能使用率比较低 Blob API Blob API 用于处理二进制数据&#xff0c;可以方便地将数据转换为Blob对象或从Blob对象读取数据。 // 创建一个Blob对象 const myBlob new Blob(["Hello, world!"], { type: "text/plain" }); // 读取Bl…

Oracle merge into语句(merge into Statement)

在Oracle中&#xff0c;常规的DML语句只能完成单一功能&#xff0c;&#xff0c;例如insert/delete/update只能三选一&#xff0c;而merge into语句可以同时对一张表进行更新/插入/删除。 目录 一、基本语法 二、用法示例 2.1 同时更新和插入 2.2 where子句 2.3 delete子句 2.4…

Gitee项目推荐-HasChat

最近由于使用的局域网通信工具总是出问题&#xff0c;就在考虑有没有好的替代品。搜索了一番&#xff0c;发现这个还不错&#xff1a; HasChat: 一款极简聊天应用&#xff0c;比较完整&#xff0c;略好看 页面简洁&#xff0c;功能也比较齐全&#xff0c; 感兴趣的小伙伴可以…

Java常识

初识Java 01 特点 面向对象的 跨平台的 02 核心机制 java虚拟机&#xff08;JVM&#xff09;。 java垃圾回收&#xff08;GC&#xff09;&#xff1a;c语言中由程序员负责回收无用的内存链&#xff0c;java垃圾回收在java程序运行的过程中自动进行。 03 命名原则(一) 由26个…

【Redis】redis 高性能--线程模型以及epoll网络框架

目录 一.前言 二.多线程的弊端 2.1 锁的开销问题 2.2 多线程上下文切换带来的额外开销 2.3 多线程占用内存成本增高 三.基本IO模型与epoll 模式 3.1 基本IO模型 3.2 单线程处理机制 四.总结 一.前言 我们经常讨论到&#xff0c;redis 是单线程&#xff0c;那为什么单线…

【1day】致远 A8系统getAjaxDataServlet-xxe接口任意文件读取学习

注:该文章来自作者日常学习笔记,请勿利用文章内的相关技术从事非法测试,如因此产生的一切不良后果与作者无关。 目录 一、漏洞描述 二、影响版本 三、资产测绘 四、漏洞复现

反汇编看指令重排

背景: 这也是一个真实客户案例,但我不能透露代码及问题细节,只讲思想。 问题: 客户说他们现场经常打印一句warning,我们对应源码查看了代码。伪代码如下: void pin() {while (!flag){ sleep(1);}if (hold > 0) {printf("warning: holder already set\n"…

sizeof()、strlen()、length()、size()的区别(笔记)

​ 上面的笔记有点简陋&#xff0c;可以看一下下面这个博主的&#xff1a; c/c中sizeof()、strlen()、length()、size()详解和区别_csize,sizeof,length_xuechanba的博客-CSDN博客

python遇到bug问题汇总

文章目录 dateutil.parser._parser.ParserError: Unknown string format: 20222022/07/19 17:06:59.78 修改前后 dat_df2[time_col] pd.to_datetime(dat_df2[time_col]) # 前 dat_df2[time_col] pd.to_datetime(dat_df2[time_col], errorscoerce) # 后

the name of a constructor must match the name of the enclosing class

构造器名匹配封闭类名 命令码的位置关系不对 解决&#xff1a;调整 命令码所在层级

xxljob学习笔记02(小滴课堂)

分布式调度参数传递和调度日志配置讲解 可以设置任务参数。 代码层面&#xff1a; 可以这样传递参数。 我们在xxljob页面去设置参数&#xff1a; 我们执行一次任务&#xff1a; 我们这里就拿到了参数。 这样我们就能拿到参数了。 日志打印&#xff1a; 在代码中也可以实现&…