シッダールタTrikha:
私はWildflyサーバ(JBossの8)の上に自分のアプリケーションを記録するためのlog4j2を使用しています。
私は、コンソール/端末上のログを見ると完全に正常に動作している私のログをコードするカスタマイズされた色をしたいです。
以下のパターンです。
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
私は、カラーコーディングは、テキストエディタでは動作しません知っているが、どのように私のエディタで、未知の文字を持っているともすることができないように、コンソールでのコーディングの色を参照してください。
Dovmo:
あなたが見ているこれらの文字が呼ばれ、ANSIカラーコードを。ほとんどの端末や一部のテキストビューアは、自動的にそれぞれの色に適切にそれらを翻訳します。
私は一般的にのみに使用し、これらのコードを見てきました
- コンソール/ターミナルのログ
- で表示されるスキャンログ
more <filename>
またはless -r <filename>
- 読み込みおよび他のいくつかのANSI-やすいツールやログパーサでログを分析します
生産および実サーバのログで、私はこれらの色は一般的に使用されていないことを見てきました。これらのエスケープコードを持つことは、ログ検索のための解析に、それはややより困難にすることができ、以下「標準」で、余分なスペースを取るし、ログの内容自体に本当に何を追加しないでください。
あなたが本当にこれらの色は、ビュー・ログにできるようにしたいが、配布またはアーカイブされますサーバーのログにそれらをしたくない場合は、私はあなたに2つのログを設定したいlog4j
設定。一つは、コンソール/端末/プリティ・ビューアのログであり、1は、アーカイブと検索を目的としています。