log4j设置日志格式为UTF-8

想要log4j输出的日志文件的编码格式为UTF-8.
正常情况下只需要添加下述的代码即可:

log4j.appender.appender_name.Encoding=UTF-8

但是在spring与log4j集成时此种方式就失效了,没有深入探讨其原因,感觉应该是spring做了某些操作将此配置屏蔽掉了(如果有人知道原因,请留言,谢谢)。
我采取的方式是不采用在web.xml中配置org.springframework.web.util.Log4jConfigListener的方式,在web启动时初始化log4j配置。
唯一的问题是通过web.xml配置的方式可以配置webAppRootKey,从而可以在log4j.properties中指定相对路径。
这个的解决方式是,在初始化log4j配置之前,手动设置:System.setProperty("myapp.root", webRootPath),然后在log4j.properties中${myapp.root}引用。

时间: 2024-10-07 15:47:02

log4j设置日志格式为UTF-8的相关文章

log_format为Nginx设置日志格式

nginx服务器日志相关指令主要有两条,一条是log_format,用来设置日志格式, 另外一条是access_log,用来指定日志文件的存放路径.格式和缓存大小,一般在nginx的配置文件中日记配置(/usr/local/nginx/conf/nginx.conf). nginx的log_format有很多可选的参数用于指示服务器的活动状态,默认的是:log_format  access  '$remote_addr - $remote_user [$time_local] "$request

使用Apache pdfbox: 从Linux安装字体到log4j设置日志级别

在使用Apache的pdfbox的过程中,因为Linux环境下没有STSong-Light字体而报警告信息 (PDCIDFontType0.java:147) - Using fallback UKaiCN for CID-keyed font STSong-Light 搜索得知此为Adobe推出的一种OpenType字体,在adobe的安装目录下找到了疑似的字体AdobeSongStd-Light.otf,将此文件copy至Linux的/usr/share/fonts目录中,因为pdfbox会

Nginx 用log_format设置日志格式

1.配置文件#vim /usr/local/nginx/conf/nginx.conflog_format access ‘$remote_addr – $remote_user [$time_local] “$request” ‘‘$status $body_bytes_sent “$http_referer” ‘‘”$http_user_agent” $http_x_forwarded_for’;include /usr/local/nginx/conf/vhost/*.conf; 2.vh

使用 log4j 打印日志

开发阶段:发现程序的问题,排错 产品阶段:记录程序运行的状况 Maven中配置依赖 通过配置文件输出日志的格式,输送的位置等 一.入门实例 1.新建一个JAva工程,导入包log4j-1.2.17.jar,整个工程最终目录如下 2.src同级创建并设置log4j.properties ### 设置### log4j.rootLogger = debug,stdout,D,E ### 输出信息到控制抬 ### log4j.appender.stdout = org.apache.log4j.Con

Java 使用Log4J进行日志操作

使用Log4J进行日志操作   Log4J简介   Log4J是Apache的一个开放源代码项目,它是一个日志操作包,通过使用Log4J,可以指定日志信息输出的目的地,如控制台.文件.CUI组件.NT的事件记录器:还可以控制每一条日志输出格式.此外,通过定义日志信息的级别,能够非常细致地控制日志的输出,最令人感兴趣的是,这些功能可以通过一个配置文件来灵活进行配置,而不需要修改应程序代码. 在应用程序中输出日志有3个目的: l 监视代码中变量的变化情况,把数据周期性记录到文件中供其他应用进行统计分

使用Log4J进行日志操作

简单配置 #指定logger # 配置Logger组件 # 设定Log4j的日志级别(error warn info debug) # 输出目的地(Console, logfile是appender的名字,是自己定义的,后面才赋予具体的含义) log4j.rootLogger=debug, Console, logfile #######################################################################################

关于log4j的日志操作

org.apache.log4j.Logger 详解 概述 1.1. 背景 在应用程序中添加日志记录总的来说基于三个目的 :监视代码中变量的变化情况,周期性的记录到文件中供其他应用进行统计分析工作:跟踪代码运行时轨迹,作为日后审计的依据:担当集成开发环境中的调试器的作用,向文件或控制台打印代码的调试信息. 最普通的做法就是在代码中嵌入许多的打印语句,这些打印语句可以输出到控制台或文件中,比较好的做法就是构造一个日志操作类 来封装此类操作,而不是让一系列的打印语句充斥了代码的主体. http://

Log4j写日志文件使用详解

Log4j输出到控制台成功,写入文件失败 - Log4j和commons log的整合 一.今天在使用commongs-logging.jar和log4j.properties来输出系统日志的时候,发现日志能够成功的输出到控制台,但是去不能写到目的文件中,具体的步骤和原因如下: 1. 只在项目中引入commons-logging.jar commons-logging.jar 使用 Log logger = LogFactory.getLogger(XXX.class), 如果有log4j.pr

log4j设定日志输出格式

在配置文件中可以通过log4j.appender.A1.layout.ConversionPattern设置日志输出格式. 参数: %p: 输出日志信息优先级,即DEBUG,INFO,WARN,ERROR,FATAL, %d: 输出日志时间点的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如:%d{yyy MMM dd HH:mm:ss,SSS},输出类似:2002年10月18日 22:10:28,921 %r: 输出自应用启动到输出该log信息耗费的毫秒数 %c: 输出日志信息