0

指定: Red5 0.8.RC3、ライブラリ (.jar) を使用するアプリケーション (.war)。

アプリケーションはロギングに slf4j を使用し、すべてのロガーは次のようにインスタンス化されます。

private static Logger log = Red5LoggerFactory.getLogger(MyClass.class, "webcall"); //"webcall" is a context name

ロギングの構成ファイル: logback-webcall.xml

<?xml version="1.0" encoding="UTF-8"?>
<configuration>

<contextName>webcall</contextName>

<jmxConfigurator contextName="webcall" />

<appender name="WEBCALL" class="ch.qos.logback.core.FileAppender">
    <File>/var/log/lx/webcall.log</File>
    <Append>false</Append>
    <Encoding>UTF-8</Encoding>
    <BufferedIO>false</BufferedIO>
    <ImmediateFlush>true</ImmediateFlush>
    <layout class="ch.qos.logback.classic.PatternLayout">
        <Pattern>
            %date [%thread] %-5level %logger{35} - %msg%n
        </Pattern>
    </layout>
</appender>
<root>
    <level value="DEBUG" /> 
    <appender-ref ref="WEBCALL" />
</root>
</configuration>

これは、上記のようにインスタンス化されたすべてのロガーで機能します。しかし、ライブラリ(Red5LoggerFactory とコンテキストについての手がかりがない) では、ロガーは次のようにインスタンス化されます。

private static Logger log = LoggerFactory.getLogger(MyLibraryClass.class); //org.slf4j.LoggerFactory;

そして、それらは機能しません。

質問: Red5 サーバーのライブラリ内でログを構成する方法を教えてください。

4

1 に答える 1

0

解決策は、red5 / conf/logback.xmlでロギングを構成することでした。

于 2011-06-23T10:42:00.880 に答える