red5 1.0.0 rc1: настройка входа для регистрации ошибок от org.red5.server.service.ServiceInvoker - PullRequest
1 голос
/ 27 мая 2010

Это мой файл конфигурации logback:

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<contextName>xpofacebook</contextName>
<appender name="ERROR"
class="ch.qos.logback.core.rolling.RollingFileAppender">
   <File>log/xpofacebook-error.log</File>
   <Append>true</Append>
   <BufferedIO>false</BufferedIO>
   <ImmediateFlush>true</ImmediateFlush>
   <layout class="ch.qos.logback.classic.PatternLayout">
       <Pattern>%date %level [%thread] %logger{10} [%file:%line] %msg%n</Pattern>
   </layout>
   <rollingPolicy
class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
       <FileNamePattern>log/error.log.%i.zip</FileNamePattern>
       <MinIndex>1</MinIndex>
       <MaxIndex>3</MaxIndex>
   </rollingPolicy>
   <triggeringPolicy
class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
       <MaxFileSize>5MB</MaxFileSize>
   </triggeringPolicy>
   <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
       <level>WARN</level>
   </filter>
</appender>
<appender name="FILE"
class="ch.qos.logback.core.rolling.RollingFileAppender">
   <File>log/xpofacebook-application.log</File>
   <Append>true</Append>
   <BufferedIO>false</BufferedIO>
   <ImmediateFlush>true</ImmediateFlush>
   <layout class="ch.qos.logback.classic.PatternLayout">
       <Pattern>%date{ISO8601} [%-5level] %logger{35} - %msg%n</Pattern>
   </layout>
   <rollingPolicy
class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
       <FileNamePattern>log/xpofacebook-application.log.%i.zip</FileNamePattern>
       <MinIndex>1</MinIndex>
       <MaxIndex>3</MaxIndex>
   </rollingPolicy>
   <triggeringPolicy
class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
       <MaxFileSize>5MB</MaxFileSize>
   </triggeringPolicy>
</appender>
<root>
   <level value="DEBUG" />
   <appender-ref ref="ERROR" />
   <appender-ref ref="FILE" />
</root>
</configuration>

пока что отлично работает мне нужно добавить следующий код для каждого класса, в который я хочу регистрировать сообщения:

private static Logger log = Red5LoggerFactory.getLogger(ClassName.class, "xpofacebook");

Я хочу, чтобы основной файл журнала xpofacebook-application.log регистрировал сообщения вне классов, с которыми я работаю.

Если гибкий клиент подключен к серверу red5 и пытается вызвать несуществующую команду, появится следующее сообщение об ошибке:

[NioProcessor-1] org.red5.server.service.ServiceInvoker - Method
getLiveChallenges with parameters [] not found in
com.xpogames.xpofacebook.Application@55e03a61 

Как я могу убедиться, что сообщения об ошибках этого типа также будут включены в мой файл журнала?

1 Ответ

1 голос
/ 04 сентября 2010

Это изменит функциональность регистрации ядра в Red5. Прямо сейчас вещи вне вашего приложения контролируются другим логгером, потому что они находятся внутри загрузчика классов выше вашего. Не вдаваясь в удовольствие от загрузчиков классов Java, я просто скажу, что исправление или обходной путь в конечном итоге придут.

...