我爱log4j.properties

一个项目的时候启动tomcat的时候卡住了:

spring No Spring WebApplicationInitializer types detected on classpath

左思右想,找不到原因。spring的配置文件看了n遍也没看出问题。

最后,发现log4j.properties都没添加。

果断加上,嘿嘿,错误信息定位了,轻松搞定。这个坑花了我15分钟。少睡了15分钟

log4j.properties

log4j.rootLogger=INFO, toConsole, toFile 
log4j.appender.file.encoding=UTF-8

log4j.appender.toConsole=org.apache.log4j.ConsoleAppender 
log4j.appender.toConsole.Target=System.out  
log4j.appender.toConsole.layout=org.apache.log4j.PatternLayout 
log4j.appender.toConsole.layout.ConversionPattern=[%d{yyyy-MM-dd HH:mm:ss}] [%p] %m%n 
  
log4j.appender.toFile.file=D:\\log\\result.log 
#Daily one log file
log4j.appender.toFile=org.apache.log4j.DailyRollingFileAppender 
log4j.appender.toFile.Append=true  
log4j.appender.toFile.Threshold=info 
log4j.appender.toFile.layout=org.apache.log4j.PatternLayout
log4j.appender.toFile.layout.ConversionPattern=[%d{yyyy-MM-dd HH:mm:ss}] [%p] %m%n
log4j.appender.toFile.DatePattern='.'yyyy-MM-dd'.log'


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 要创建log4j.properties文件,可以按照以下步骤操作: 1. 创建一个文本文件并将其命名为"log4j.properties"。 2. 在文件中添加log4j配置,例如: ``` # 设置日志输出级别为DEBUG log4j.rootLogger=DEBUG, Console # 输出日志到控制台 log4j.appender.Console=org.apache.log4j.ConsoleAppender log4j.appender.Console.layout=org.apache.log4j.PatternLayout log4j.appender.Console.layout.ConversionPattern=%d [%t] %-5p %c - %m%n ``` 3. 将log4j.properties文件保存到项目的classpath中,例如src/main/resources目录。 这样,log4j就可以读取log4j.properties文件中的配置并输出日志了。需要注意的是,log4j的配置非常灵活,可以根据需要进行更改和调整。 ### 回答2: log4j是一种广泛使用的日志记录框架,它可以帮助开发者快速、灵活地记录应用程序的日志信息。在使用log4j时,我们需要创建一个配置文件来指定日志输出目标、日志格式等细节,这个配置文件通常被称为log4j.properties。 创建log4j.properties需要遵循以下步骤: 1. 创建一个文本文件,文件名为log4j.properties,可以使用任何文本编辑器来打开此文件。 2. 在文件中指定要输出的日志信息,例如: log4j.rootLogger=DEBUG, stdout, file 3. 定义日志输出的目标,例如: log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} [%c] %p: %m%n log4j.appender.file=org.apache.log4j.RollingFileAppender log4j.appender.file.File=log/file.log log4j.appender.file.MaxFileSize=4MB log4j.appender.file.MaxBackupIndex=10 log4j.appender.file.layout=org.apache.log4j.PatternLayout log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %-5p %c{1}:%L - %m%n 4. 配置日志输出的级别,例如: log4j.logger.com.mycompany=DEBUG 5. 将配置文件保存到项目的src/main/resources目录中,这样就可以通过类路径加载这个配置文件了。 当log4j.properties配置完成并保存后,我们就可以在应用程序中使用log4j来输出日志信息了。比如,我们可以在Java类中使用以下代码来输出日志信息: import org.apache.log4j.Logger; public class MyClass { private static final Logger logger = Logger.getLogger(MyClass.class); public void doSomething() { logger.debug("entering doSomething()"); // do something... logger.debug("exiting doSomething()"); } } 在以上代码中,我们使用Logger.getLogger()方法获取一个Logger实例,然后使用该实例输出日志信息。Logger提供了多种级别的日志输出方法,如debug()、info()、warn()和error()等。根据需要设置不同的输出级别,就可以将不同级别的日志信息输出到不同的目标上。 ### 回答3: log4j.properties是一个属性配置文件,用于配置log4j日志框架的输出。在创建log4j.properties文件之前,需要先了解一下log4j的基本概念和使用方法。 首先,需要添加log4j的依赖包到项目中,比如通过maven方式引入: ```xml <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.17</version> </dependency> ``` 然后,在项目的classpath路径下创建一个名为log4j.properties(或者log4j.xml)的文件,使用文本编辑器打开。 在log4j.properties文件中,每一行代表一条log4j配置指令,具体语法如下: ``` logger.<logger-name> = <level>, <appender-name>, <additivity> appender.<appender-name> = <appender-class> appender.<appender-name>.<param-name> = <param-value> ``` 其中,logger和appender是两个核心概念,logger用于定义日志输出对象,appender用于定义日志输出方式。下面是一个常用的log4j.properties样例: ``` log4j.rootLogger = INFO, stdout, file log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern=%d{YYYY-MM-dd HH:mm:ss} [%t] %-5p %c{1}:%L - %m%n log4j.appender.file=org.apache.log4j.RollingFileAppender log4j.appender.file.File=/home/user/logs/application.log log4j.appender.file.MaxFileSize=10MB log4j.appender.file.MaxBackupIndex=5 log4j.appender.file.layout=org.apache.log4j.PatternLayout log4j.appender.file.layout.ConversionPattern=%d{YYYY-MM-dd HH:mm:ss} [%t] %-5p %c{1}:%L - %m%n ``` 这个log4j.properties文件中定义了两个输出目标,一个是console(stdout),一个是文件(file)。其中,console输出在标准输出流中,文件输出到“/home/user/logs/application.log”文件中。日志级别为INFO,即只记录INFO级别及以上的日志。日志格式示例为“日期+线程名称+日志级别+类名+日志信息”。 通过这种方式创建log4j.properties文件,可以方便地控制日志的输出目标和格式,避免日志混乱甚至丢失的情况。同时,也可以根据项目需要进行定制,适配不同的应用场景。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值