Frage

Ist es möglich, nur die Aussagen in der Konsole angezeigt werden, die bestimmte Wörter haben.

Für eq:

   logger.debug ( "java: hello " );
   logger.debug ( "groovy: hello " );
   logger.debug ( "ruby: hello " );

Nun, durch eine Konfiguration zu tun oder was auch immer, alle Aussagen, die sich mit groovigen beginnen: sollte angezeigt werden.

War es hilfreich?

Lösung

Sie möchten die log4j StringMatchFilter , die Teil der "Extras" Paket von apache Logging ist.

Hier ist ein kurzes Beispiel gefunden Online href="http://www.webdeveloper.com/forum/showthread.php?t=91074":

<?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>

Andere Tipps

Was ist erstellen Sie Ihren Zoll Level

public class Groovy extends Level

Und dann in der Log-Eigenschaften diese Werte als Konfigurationssatzdatei

Hope, das hilft, David.

Man kann verschiedene Logger verwenden (zB ein Logger für „java“ Nachrichten und eine für „groovy“ -Nachrichten). Die Log4J Konfiguration kann mit verschiedenen Ebenen für jeden Logger eingestellt werden.

Sie können mehr lesen hier

Man könnte ein Tool verwenden, um Nachrichten herauszufiltern. Für Windows können Sie dies tun, mit BareTail . Filtern von Nachrichten ist nur möglich mit dem Pro (gegen Entgelt) Version. Vielleicht gibt es andere Tools, die die gleiche Arbeit tun.

SLF4J Marker sind für Ihre Zwecke vielleicht geeignet. Alle Druckverfahren wie debug und Informationen in org.slf4j.Logger zugeben eine Markierung als ersten Parameter . Außerdem logback-Klassiker, ein gebürtiger SLF4J Implementierung, Schiffe mit einem Filter namens MarkerFilter was ich denke, das tut, was Sie wollen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top