私の tomcat ログには現在、さまざまな形式のログ メッセージが混在しています。そこで、JUL-to-SLF4J ブリッジを使用して SLF4J をセットアップしようとしています。
最初は次のようなログメッセージを取得していました
2013 年 5 月 23 日 7:57:17 PM org.apache.catalina.core.StandardService startInternal
INFO: サービス Catalina の開始
2013 年 5 月 23 日 7:57:17 PM org.apache.catalina.core.StandardEngine startInternal
INFO: サーブレット エンジンの開始: Apache Tomcat/7.0.29
2013-05-23 19:57:47,224 [localhost-startStop-1] クラスパス リソースから XML Bean 定義を読み込んでいます [META-INF/cxf/cxf.xml]
2013-05-23 19: 57:47,246 [localhost-startStop-1] クラスパス リソース [META-INF/cxf/cxf-servlet.xml] から XML Bean 定義をロードしています
ここからブログをフォローしました.. http://hwellmann.blogspot.com/2012/11/logging-with-slf4j-and-logback-in.html
SLF4J に次の jar を使用しています: jul-to-slf4j-1.7.5.jar、slf4j-api-1.7.5.jar
および logging.properties で
ハンドラ = org.slf4j.bridge.SLF4JBridgeHandler
現在、混合メッセージは表示されませんが、Tomcat の起動時に表示されます。Tomcat 形式を出力していませんが、Handler エラーがスローされます
以下はログのスニペットです
Handler error
java.lang.ClassNotFoundException: org.slf4j.bridge.SLF4JBridgeHandler
at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
at org.apache.juli.ClassLoaderLogManager.readConfiguration(ClassLoaderLogManager.java:521)
at org.apache.juli.ClassLoaderLogManager.readConfiguration(ClassLoaderLogManager.java:464)
at org.apache.juli.ClassLoaderLogManager.readConfiguration(ClassLoaderLogManager.java:288)
at java.util.logging.LogManager$2.run(LogManager.java:278)
at java.security.AccessController.doPrivileged(Native Method)
at java.util.logging.LogManager.readPrimordialConfiguration(LogManager.java:276)
at java.util.logging.LogManager.getLogManager(LogManager.java:259)
at java.util.logging.Logger.<init>(Logger.java:245)
at java.util.logging.LogManager$RootLogger.<init>(LogManager.java:1104)
at java.util.logging.LogManager$RootLogger.<init>(LogManager.java:1101)
at java.util.logging.LogManager$1.run(LogManager.java:199)
at java.security.AccessController.doPrivileged(Native Method)
at java.util.logging.LogManager.<clinit>(LogManager.java:176)
at java.util.logging.Logger.getLogger(Logger.java:307)
at com.sun.jmx.remote.util.ClassLogger.<init>(ClassLogger.java:55)
at sun.management.jmxremote.ConnectorBootstrap.<clinit>(ConnectorBootstrap.java:739)
at sun.management.Agent.startAgent(Agent.java:147)
at sun.management.Agent.startAgent(Agent.java:289)
***startInternal() called
***startInternal() JoranConfigurator
私は何日もこの問題に取り組み、多くの組み合わせを試しましたが、うまくいきませんでした。
前もって感謝します!