log4j

log4j

人走茶凉 提交于 2020-02-03 18:28:27
之前做的项目基本都在本地服务器运行,之后有次课程设计为了得到更高的分数把项目发到了阿里云服务器,但是本地服务器和阿里云有些不同的地方,有的地方在本地运行没有问题,一旦发到服务器上就会出现bug,这十分令我头疼,而且在当时我的debug方式只有syso,debug的过程十分艰辛,今天简单学习了log4j,简单的记录一下。 1.log4j输出级别 fatal(致命错误)>error(错误)>warn(警告)>info(普通信息)>debug(调试信息) 在第一行rootCategory控制输出级别和输出目的地 2.关键配置 2.1ConversionPattern:输出表达式 2.2log4j.appender.LOGFILE.File文件位置及名称(日志文件扩展名.log) 3.pattern中常用几个表达式(区分大小写) 3.1 %C 包名+类名 3.2%d{YYYY-MM-dd HH:mm:ss} 时间 3.3%L 行号 3.4%m 信息 3.5%n 换行 log4j配置文件:在src下建 log4j.properties文件(路径和名称都不允许改变) 来源: CSDN 作者: KoBeBrYaNt__king 链接: https://blog.csdn.net/KoBeBrYaNt__king/article/details/104152478

log4j的使用

北慕城南 提交于 2020-02-03 14:06:40
问题的引入:   把所有的信息打印在控制台上不行吗?    01.控制台有行数限制;   02.System.out.println()影响系统性能;    03.如果我们需要对一些用户的行为习惯进行分析,我们找不到用户的数据!   程序中出现了问题怎么办?   01.debug断点调试;(务必掌握)   02.System.out.println()把信息打印在console控制台上(不会debug) 记录日志:   作用:     01.记录代码中变量的变化情况,易于我们的代码调试和后期维护;     02.周期性保存一些数据到文件中,以便于后续使用;     03.可以设置日志信息的级别,便于管理。 组成部分:   01.日志记录器   02.日志的输出格式   03.日志的输出目的地 八个输出级别: OFF 级别最高,用于关闭所有的日志记录 FATAL 严重的错误事件将会导致应用程序的退出 ERROR 错误事件,但仍然不影响系统的继续运行 WARN 会出现潜在错误的情形 INFO 消息在粗粒度级别上突出强调应用程序的运行过程 DEBUG 细粒度信息事件对调试应用程序非常有帮助 TRACE 细粒度比DEBUG更低的信息事件   ALL 级别最低,用于开启所有的日志记录 生产环境时,建议把DEBUG日志级别换成WARN,避免产生大量文件! 日志输出格式(Layout) %p :

Log4j配置文件位置+Spring数据源配置文件位置

≯℡__Kan透↙ 提交于 2020-02-03 09:51:41
一个.Log4j配置文件位置 1.加载自己主动 当应用程序启动,缺省情况下,这将是src文件夹搜索log4j.xml型材。如果不存在。我们将继续寻找log4j.properties文件,仅仅要找到当中一个就会载入该配置文件内容。 2.手动载入 假设将log4j.properties(或log4j.xml)放到其他文件夹下,比方下图中的位置,应用程序就不能自己主动载入log4j的配置文件了,由于应用程序找不到该配置文件,你须要手动载入。 须要在应用程序启动的代码中增加例如以下的代码: //载入config目录下的log4j.properties String log4jPath=System.getProperty("user.dir")+"/config/log4j.properties"; PropertyConfigurator.configure(log4jPath); 二.Spring中数据源配置文件位置 1.普通情况 比較常见的Spring载入数据源配置文件的方式例如以下: <bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> <property name="locations"> <list> <value

log4j的简介

不问归期 提交于 2020-02-03 09:41:52
---恢复内容开始--- 问题的引入 把所有的信息打印在控制太上不行吗? 01.控制太台有行数限制; 02.System.out.prrintlin()影响系统性能; 03.如果我们需要对一些用户的行为习惯进行分析,我们找不到用户的数据! 程序中出现了问题怎么办? 01.debuy断点调试;( 务必掌握 ) 02.System.out.println()把信息打印在console控制台上( 不会debug的情况下 ) ******************************************************************************************************************************************************************* log4j(log for java) 01.是Apache的一个开源项目; 02.是使用java语言编写的一个日志框架; 03.用于记录程序中的日志信息; 04.可以将日志信息输出到控制台,文件等目地。 log(日志,记录):大家平时上网或者安装软件的时候,经常会看到一些以.log结尾的文件,这就是我们的日志文件。 *****************************************************************

log4j配置输出日志文件

…衆ロ難τιáo~ 提交于 2020-02-03 07:24:36
在测试程序时,有时候运行一次可能需要很久,把日志文件保存下来是很有必要的,本文给出了scala程序输出日志文件的方式,同时使用本人的另一篇博客中介绍的将log4j.properties放到程序jar包之外的方式,从而可以方便地修改日志显示的级别,日志文件路径等 链接: http://www.cnblogs.com/starwater/p/6703702.html 配置文件 首先是log4j.properties的配置 要实现的功能有 1、定义日志级别 2、输出日志到文件,并且控制日志文件大小 3、输出日志到控制台 # Define the root logger with appender file log = D:/logs #定义LOG输出级别、输出到控制台、文件 log4j.rootLogger = ERROR,STDOUT, FILE # 定义文件file appender 设置文件大小和个数 以及文件位置 log4j.appender.FILE=org.apache.log4j.RollingFileAppender log4j.appender.FILE.MaxFileSize=10MB log4j.appender.FILE.MaxBackupIndex=3 log4j.appender.FILE.File=${log}/testLog.log # 定义控制台

Java日志记录--log4j and logback

百般思念 提交于 2020-02-03 07:15:49
问题的引入: 把所有的信息打印在控制台上不行吗? 01. 控制台有行数限制; 02.System.out.println() 影响系统性能; 03. 如果我们需要对一些用户的行为习惯进行分析,我们找不到用户的数据! 程序中出现了问题怎么办? 01.debug 断点调试; ( 务必掌握 ) 02.System.out.println() 把信息打印在 console 控制台上(不会 debug ) 记录日志: 作用: 01. 记录代码中变量的变化情况,易于我们的代码调试和后期维护; 02. 周期性保存一些数据到文件中,以便于后续使用 ; 03. 可以设置日志信息的级别,便于管理。 组成部分: 01. 日志记录器 02. 日志的输出格式 03. 日志的输出目的地 七个输出级别: OFF 级别最高,用于关闭所有的日志记录 FATAL 严重的错误事件将会导致应用程序的退出 ERROR 错误事件,但仍然不影响系统的继续运行 WARN 会出现潜在错误的情形 INFO 消息在粗粒度级别上突出强调应用程序的运行过程 DEBUG 细粒度信息事件对调试应用程序非常有帮助 TRACE 细粒度比 DEBUG 更低的信息事件 ALL 级别最低,用于开启所有的日志记录 生产环境时,建议把 DEBUG 日志级别换成 WARN ,避免产生大量文件! 日志输出格式( Layout ) %p : 日志信息的优先级

log4j的properties详细配置,分级输出日志文件

六月ゝ 毕业季﹏ 提交于 2020-02-03 06:38:33
log4j是很常用的日志类包,在此做一下配置的记录 加载jar包和properities配置文件 将 com mons-logging.jar和logging-log4j.jar放在lib中 将log4j.properties放在src根目录中或者resource中。 properties具体配置信息 log4j.rootLogger = INFO , info, warn, error, stdout ###控制台输出 log4j.appender.stdout = org.apache.log4j.ConsoleAppender log4j.appender.stdout.Target = System.out log4j.appender.stdout.layout = org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern = %d{ABSOLUTE} %5p %c{1}:%L - %m%n ###info级别输出 log4j.logger.info = info log4j.appender.info = org.apache.log4j.DailyRollingFileAppender log4j.appender.info.File = ${webroot}/logs

log4j简单配置

﹥>﹥吖頭↗ 提交于 2020-02-03 05:13:52
写在前面:    项目中由于为了查看项目相关调试信息,使用System.out.println()直接在控制台打印不是很方便,故一般配置log4j,它可以将信息输出到文件中。 步骤: 1.导入jar包:log4j-1.2.8.jar 2.编写log4j配置文件:log4j.properties ### set log levels - for more verbose logging change 'info' to 'debug' ### #这里指定了输出info以上级别的信息,并可以输出到控制台stdout,以及file中 log4j.rootLogger=info,stdout,file ### direct log messages to stdout ### #控制台 log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.Target=System.out log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern=%d{yyyy/MM/dd HH:mm:ss,SSS} %5p %c{1}:%L - %m%n ###

Spring Boot自定义log4j2日志文件

ⅰ亾dé卋堺 提交于 2020-02-03 00:44:20
背景:因为 从 Spring Boot 1.4开始的版本就要用log4j2 了,支持的格式有json和xml两种格式,此次实践主要使用的是xml的格式定义日志说明。 Spring Boot 1.5.8.RELEASE 引入log4j2的开发步骤如下: 1.首先把spring-boot-starter-web以及spring-boot-starter包下面的spring-boot-starter-logging排除,然后引入spring-boot-starter-log4j2包。 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <exclusions> <exclusion> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-logging</artifactId> </exclusion> </exclusions></dependency> <!--https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-log4j2

SLF4J简介与使用(整合log4j)

醉酒当歌 提交于 2020-02-02 21:03:29
SLF4J简介与使用(整合log4j) 一、概念 SLF4J的全称是Simple Logging Facade for Java,即简单日志门面。SLF4J并不是具体的日志框架,而是作为一个简单门面服务于各类日志框架,如java.util.logging, logback和log4j。 SLF4J提供了统一的记录日志的接口,对不同日志系统的具体实现进行了抽象化,只要按照其提供的方法记录即可,最终日志的格式、记录级别、输出方式等通过绑定具体的日志系统来实现。 使用SLF4J的好处在于,你只需要按统一的方式写记录日志的代码,如: public class LoggerTest { private static final Logger logger = LoggerFactory.getLogger(Tester.class); public static void main(String[] args) { logger.info("Current Time: {}", System.currentTimeMillis()); } } SLF4J支持{}作为占位符,等价于C语言中的%s,而不必再进行字符串的拼接,效率有显著的提升(见后面运行结果)。 而无需关心日志是通过哪个日志系统,以什么风格输出的。因为它们取决于部署项目时绑定的日志系统。 例如,在项目中使用了SLF4J记录日志