http://blog.csdn.net/zlxluofeng/archive/2010/06/01/5639597.aspx
上一篇文章简单说了一下Red5的配置,其中最后提到web.xml中的一段错误配置,该错误的主要原因就是日志的配置错误,这篇文章就详细说一下Red5中怎么来设置日志,日志是用来调试和查找错误的主要途径,有必要在应用程序中使用日志,并详细记录它。
继续上一篇用到的newapp项目,使用日志需要引入下面几个jar文件
- log4j-over-slf4j-1.5.10.jar
- logback-classic-0.9.18.jar
- logback-core-0.9.18.jar
- slf4j-api-1.5.10.jar
下面在src目录下,创建一个logback-newapp.xml的文件,该文件用来对日志做一些配置,内容如下:
- <?xml version="1.0" encoding="UTF-8"?>
- <configuration>
- <contextName>newapp</contextName>
- <jmxConfigurator contextName="newapp" />
- <appender name="NEWAPP" class="ch.qos.logback.core.FileAppender">
- <File>log/newapp.log</File>
- <Append>true</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>
- <appender-ref ref="NEWAPP" />
- </root>
- <logger name="my.red5.first">
- <level value="DEBUG" />
- </logger>
- </configuration>
里面的newapp可以按照自己的定义来写,另外需注意logger标签的name不能是newapp,可以随便起个名字。
设置完上面的,就可以在程序中使用日志了,在Application类中定义下面的属性
- protected static Logger log = Red5LoggerFactory.getLogger(Application.class, "newapp");
其中getLogger的第二个参数是配置文件中的contextName。
现在可以在应用程序中使用日志了,例如log.DEBUG("调试内容");,除DEBUG外还有其他几种方式:INFO、WARN、ERROR、TRACE,优先级不相同,可以在配置文件的logger的level标签下设置,可以输出指定优先级之下的信息。