logback整合控制台sysout输出到日志文件

项目中有些地方日志打印是通过sysout的,但是之前logback的操作只能输出info,error这些内容,问题不大,下面的操作可以将控制台的输出打印到日志文件里面

(项目是基于springboot的)

   引入相关依赖

      <!-- https://mvnrepository.com/artifact/uk.org.lidalia/sysout-over-slf4j -->

      <dependency>          <groupId>uk.org.lidalia</groupId>          <artifactId>sysout-over-slf4j</artifactId>          <version>1.0.2</version>      </dependency>
    编写一个listener
        ssm搭建的项目web.xml形式的话可以直接配置listener就好了
        我这儿就是写的一个实现类,命名有些不规范,继承那个SysOutOverSLF4JServletContextListener就好了,下面的实现方法不用去操作它,不用重写也可以,WebListener这个注解很重要

  应用程序启动时调用一个方法(springboot项目就直接在启动类添加方法了)

      SysOutOverSLF4J.sendSysOutAndErrToSLF4J();

这样子经过上面的操作,sysout输出的内容就可以打印到logback配置的info的日志文件里面了

原文地址:https://www.cnblogs.com/zfy-065677/p/12703556.html

时间: 2024-08-28 10:32:57

logback整合控制台sysout输出到日志文件的相关文章

slf4j日志只输出到控制台,没输出到日志文件

最近使用SLF4J遇到了一个比较头疼的坑,日志输出到控制台没有问题,但是始终没有输出到日志文件.无论怎麽修改日志配置,始终是老样子. 有一种绝望,是各种百度.google却还是解决不了问题..直到我在启动项目的时候发现了这样的提示, SLF4J: Class path contains multiple SLF4J bindings.SLF4J: Found binding in [jar:file:/E:/Java/tp-wechat/webapps/wechat-hy/WEB-INF/lib

log4j日志输出到日志文件中和控制台中 +log4j配置详解

1.引入log4j的jar包 https://mvnrepository.com/,可以找到log4j的jar和依赖. 2.创建log4j.properties,并配置log4j #设置日志的级别 ,多个以,分开(没有给出的,则不会被输出) log4j.rootLogger=debug,A,R # log4j.appender.logfile.encoding=UTF-8 #DailyRollingFileAppender每天产生一个日志文件 log4j.appender.R=org.apach

pomelo配置logger时日志无法输出到日志文件的问题解决方案

在使用pomelo的过程中发现log4js的日志无法输出到日志文件,解决办法如下: 1.删除工程目录下 ./node_modules/pomelo/node_modules/pomelo-logger 文件夹 2.修改工程目录下 ./node_modules/pomelo/package.json 文件,找到dependencies中的pomelo-logger,并删除改行 同时还发现,pomelo-admin中的日志也是无法输出到日志文件,解决办法类似: 1.删除工程目录下 ./node_mo

将文件夹下所有文件输出到日志文件中(包括所有子文件夹下的)

转载:http://www.cnblogs.com/lori/p/3529936.html 代码: static void GetFiles(List<string> arr, string dir) { arr.AddRange(Directory.GetFiles(dir)); var subDir = Directory.GetDirectories(dir).ToList(); if (subDir != null && subDir.Count > 0) sub

算法~将文件夹下所有文件输出到日志文件中(包括所有子文件夹下的)

概念: 算法文章,总是带给我们无穷的思考和兴趣,一个问题,多种解决方法,看你如何去思考它,对于标题所引出的问题,我觉得,使用递归是比较有效的方法,当然递归还有很多使用场合,如树型分类列表的操作等等. 注意: 使用递归时,初学者要特别注意的就是“出口”,必须为递归提供一个出口,否则你的内存就要溢出了,呵呵,memory overflow大家肯定都见过,都是从那时候过来的,呵呵. 代码中的递归: 核心代码 static void GetFiles(List<string> arr, string

利用程序重定向输出为日志文件

1 import sys 2 import time 3 import random as rd 4 5 f = open("d:/a.txt",'w') 6 old_fd = sys.stdout 7 sys.stdout = f 8 9 i = 1 10 while(1): 11 if i >1000: 12 break 13 i +=1 14 tm= time.localtime() 15 time.sleep(0.01) 16 # 2019-7-27 19:15:54 3

log4j配置输出到多个日志文件

通常我们项目里,有一些重要的日志想单独的输出到指定的文件,而不是全总输出到系统的日志文件中.那么我们log4j为我们提供了这种功能,以下我们来一步一步看是怎么做的.这里以property的配置方式写.xml方式类似,想了解的,能够看官方文档. 这里測试的项目包结构例如以下: log4j 主要由三部分组成:Loggers, Appenders 和Layouts,(appender 能够理解为输出的目的地) 咱们的log4j.properties或log4j.xml 里能够配置多个logger, 每

log4j配置输出到多个日志文件(转)

參考资料:http://logging.apache.org/log4j/1.2/manual.html 通常我们项目里,有一些重要的日志想单独的输出到指定的文件,而不是全总输出到系统的日志文件中.那么我们log4j为我们提供了这种功能,以下我们来一步一步看是怎么做的.这里以property的配置方式写.xml方式类似,想了解的,能够看官方文档. 这里測试的项目包结构例如以下: log4j 主要由三部分组成:Loggers, Appenders 和Layouts,(appender 能够理解为输

Node.js系列文章:利用console输出日志文件

通常我们在写Node.js程序时,都习惯使用console.log打印日志信息,但这也仅限于控制台输出,有时候我们需要将信息输出到日志文件中,实际上利用console也可以达到这个目的的,今天就来简单介绍一下. 我们首先创建如下文件: // index.js let fs = require('fs'); let options = { flags: 'a', // append模式 encoding: 'utf8', // utf8编码 }; let stdout = fs.createWri