我使用log4j2在wildfly服务器(jboss 8)上记录我的应用程序。
我想为我的日志定制一个颜色编码,当我在控制台/终端上看到日志时,它工作得非常好。
模式如下:
Log4J.XML:
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="WARN">
<Appenders>
<Routing name="Routing">
<Routes pattern="$${ctx:logFileName}">
<Route>
<RollingFile name="RollingFile" fileName="standalone/log/platform-${ctx:logFileName}.log" filePattern="standalone/log/platform-${ctx:logFileName}-%d{MM-dd-yyyy}.log.gz" append="true">
<PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss.SSS} [%X{id}] %style{[%X{logFileName}}{magenta}] [%t] %highlight{[%-5level]}{FATAL=red blink, ERROR=red, WARN=yellow bold, INFO=green, DEBUG=green bold, TRACE=magenta} %style{%c{1}:%L}{cyan} - %highlight{%msg%n%throwable}{INFO=white,TRACE=magenta}"/>
.....
但是,当我试图在vi或gedit这样的文本编辑器中打开日志文件时,会得到未知字符,如:
[32m15:56:30.536 DEBUG com.syn.test.Test.main() @15 - this is debug message
[m[32m15:56:30.539 DEBUG com.syn.test.Test.main() @19 - this is debug messge
[m
我知道颜色编码在文本编辑器上不起作用,但是如何在编辑器中不包含未知字符,并且能够
参见控制台中的颜色编码
.