如何将log4j日志文件更改为utf8 [英] how to change log4j log file to utf8

查看:366
本文介绍了如何将log4j日志文件更改为utf8的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我已经交了一个使用log4j作为记录器应用程序的代码。如何为它生成UTF8日志文件? log4j创建的日志文件目前是ASCII格式。

I have been handed a code which uses log4j as the logger application. How can I generate a UTF8 logging file for it?. The logfile being created by log4j is in ASCII format at the moment.

我试过以下

设置按照说明对日志文件进行文件编码

Setting the file encoding of the log file by following instructions

vi current
:set bomb
:set fileencoding=utf-8
:wq

在执行上述操作后,日志文件本身停止工作即由于某种奇怪的原因,没有其他日志被写入文件

Infact after doing the above the logfile itself stops working ie no further logs get written to the file for some strange reason

我也尝试更改.properties文件

I have also tried changing the .properties file

log4j.rootLogger=TRACE, logfile

log4j.appender.logfile=org.apache.log4j.RollingFileAppender
log4j.appender.logfile.encoding=UTF-8
log4j.appender.logfile.File=/usr/vm/log/webconsole/current
log4j.appender.logfile.Append=true
log4j.appender.logfile.MaxFileSize=5MB
log4j.appender.logfile.MaxBackupIndex=1
log4j.appender.logfile.layout=org.apache.log4j.PatternLayout
log4j.appender.logfile.layout.ConversionPattern=[%5p] %d{ISO8601} (%F:%M:%L)%n%m%n%n

log4j.logger.com.company.npm=ALL
log4j.logger.org.apache.axis=OFF

翻转后的日志文件是由于某种原因的ASCII格式

The log file after it rolls over is in ASCII format for some reason

我正在使用log4j 1.2.8

I am using log4j 1.2.8

当我启用log4j调试时我得到了以下输出

When I enabled log4j debugging I got the following output

@4000000053b16b142afa961c log4j: Parsing for [root] with value=[TRACE, logfile, cdr].
@4000000053b16b142afc630c log4j: Level token is [TRACE].
@4000000053b16b142afe85ec log4j: Category root set to DEBUG
@4000000053b16b142aff510c log4j: Parsing appender named "logfile".
@4000000053b16b142e3ebccc log4j: Parsing layout options for "logfile".
@4000000053b16b143333a0bc log4j: Setting property [conversionPattern] to [[%5p] %d{ISO8601} (%F:%M:%L)%n%m%n%n].
@4000000053b16b1433442f04 log4j: End of parsing for "logfile".
@4000000053b16b14343015a4 log4j: Setting property [file] to [/usr/vm/log/webconsole/current].
@4000000053b16b1434331b14 log4j: Setting property [append] to [true].
@4000000053b16b1434350b2c log4j: Setting property [maxFileSize] to [100KB].
@4000000053b16b14343885cc log4j: Setting property [maxBackupIndex] to [1].
@4000000053b16b14343a79cc log4j: Setting property [encoding] to [UTF-8].
@4000000053b16b14343d311c log4j: setFile called: /usr/vm/log/webconsole/current, true
@4000000053b16b1434937edc log4j: setFile ended
@4000000053b16b143496a774 log4j: Parsed "logfile" options.
@4000000053b16b1434a97fac log4j: Parsing appender named "cdr".
@4000000053b16b150111c014 log4j: Parsed "cdr" options.
@4000000053b16b1501166394 log4j: Parsing for [com.company.npm] with value=[ALL].
@4000000053b16b150118d87c log4j: Level token is [ALL].
@4000000053b16b15011abcdc log4j: Category com.company.npm set to ALL
@4000000053b16b150122003c log4j: Handling log4j.additivity.com.company.npm=[null]
@4000000053b16b150123d4fc log4j: Finished configuring.




@4000000053b16b17086f0114 log4j: rolling over count=102406
@4000000053b16b1708703d7c log4j: maxBackupIndex=1
@4000000053b16b170910fdd4 log4j: Renaming file /usr/vm/log/webconsole/current to /usr/vm/log/webconsole/current.1
@4000000053b16b1709140b14 log4j: setFile called: /usr/vm/log/webconsole/current, false
@4000000053b16b170916494c log4j: setFile ended


推荐答案

它应该是:

    log4j.appender.FILE.encoding=UTF-8

这篇关于如何将log4j日志文件更改为utf8的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆