コンソールには特定の語を持つステートメントのみを表示できますか? EQの選択したLog4jデバッグ・ステートメントのみを表示
:
今logger.debug ("java: hello ");
logger.debug ("groovy: hello ");
logger.debug ("ruby: hello ");
、いくつかの設定か何かをすることによって、グルーヴィーで始まるされているすべてのステートメントは:表示されるはずです。
コンソールには特定の語を持つステートメントのみを表示できますか? EQの選択したLog4jデバッグ・ステートメントのみを表示
:
今logger.debug ("java: hello ");
logger.debug ("groovy: hello ");
logger.debug ("ruby: hello ");
、いくつかの設定か何かをすることによって、グルーヴィーで始まるされているすべてのステートメントは:表示されるはずです。
続きを読むことができます。 onlineを見つけました。ここ
は簡単な例です:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
<appender name="CustomAppender" class="org.apache.log4j.RollingFileAppender">
<param name="File" value="custom.log"/>
<param name="Append" value="true"/>
<param name="MaxFileSize" value="5000KB"/>
<param name="maxBackupIndex" value="5"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss} [%t] %-5p - %m%n" />
</layout>
<filter class="org.apache.log4j.varia.StringMatchFilter">
<param name="StringToMatch" value="Here is DEBUG" />
<param name="AcceptOnMatch" value="true" />
</filter>
<filter class="org.apache.log4j.varia.DenyAllFilter"/>
</appender>
<root>
<appender-ref ref="CustomAppender"/>
</root>
</log4j:configuration>
何についてのあなたの習慣レベル
public class Groovy extends Level
を作成し、ログのプロパティで希望が、これは、 ダビデを助け、あなたの構成として、
をそれらのレベルを設定するファイルです。
Davidさん、ありがとうございます。 –
異なるロガーを使用することができます(たとえば、「java」メッセージのロガーと「groovy」メッセージのロガー)。 Log4Jの設定は、各ロガーごとに異なるレベルで設定できます。
あなたは、あなたがApacheのログから、「エキストラ」パッケージの一部であるのlog4j StringMatchFilterを使用したいhere
一つは、メッセージをフィルタリングするためのツールを使用することができます。 WindowsではBareTailでこれを行うことができます。メッセージのフィルタリングは、プロ(有料)バージョンでのみ可能です。同じ仕事をするツールが他にもあるかもしれません。
SLF4Jマーカーはおそらくあなたの目的に適しています。デバッグや情報などのすべての印刷方法はorg.slf4j.Logger
admit a Marker as a first parameterです。さらに、元のSLF4J実装であるlogback-classicには、MarkerFilter
というフィルターが付属しています。
興味深いと思いますが、詳細を教えてください。 –