您的位置:首页 > 其它

Parsley 开发指南 15 日志配置

2013-01-25 14:17 337 查看

15 日志配置

因为日志配置经常变化(取决于部署场景和取决于开发者的个人设置),经常是保存在外部XML配置文件中。因此Parsley为日志配置提供了一个可选的扩展和一组XML标签。

对于Flex应用程序可以使用XML标签来构建标准的Flex LogTargets。对于Flash应用程序Parsley包含一组独立的标签用Spicelib Logging Framework创建日志代替。在最后一节中,我们将演示如何配置Parsley框架类内部的日志输出。

这个功能是不属于Parsley Core。扩展可以在Parsley下载页面下载。只需添加下载的SWCs到你的classpath中。

15.1 Flex 日志配

如果你想使用Flex Logging API你有两个选择:你可以用内置MXML标签在MXML中配置 LogTargets——在这种情况下不需要集成Parsley。有关使用Flex Logging API 查看Flex LiveDocs

如果你喜欢使用外部XML文件配置日志你可以使用一个Parsley的扩展XML标签创建LogTargets:

<objects

xmlns="http://www.spicefactory.org/parsley"

xmlns:log="http://www.spicefactory.org/parsley/flex/logging"



xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

xsi:schemaLocation="http://www.spicefactory.org/parsley

http://www.spicefactory.org/parsley/schema/2.3/parsley-core.xsd

http://www.spicefactory.org/parsley/flex/logging

http://www.spicefactory.org/parsley/schema/2.3/parsley-logging-flex.xsd"
>



<log:target level="error">

<log:filter>org.spicefactory.*</log:filter>

</log:target>

<log:target level="debug">

<log:filter>com.bookstore.*</log:filter>

<log:filter>com.mycompany.util.*</log:filter>

</log:target>



<!-- other object definitions -->



</objects>

上面的示例配置,你将只能看到Spicefactory框架类的内部error 日志,还有你自己的应用程序类的debug日志。

标签创建默认的目标类是一个TraceTarget。你可以显式地声明其他目标类型:

<log:target level="debug" type="com.bookstore.util.CustomLogTarget">

<log:filter>com.bookstore.*</log:filter>

</log:target>

由于这是一个扩展,必须在使用XmlContextBuilder之前显式地进行初始化:

FlexLoggingXmlSupport.initialize();

15.2 Flash 日志配置

....

15.3 Parsley框架日志配置

最后你可能想看到Parsleys(和Spicelibs)日志的输出帮助调试。

你可以通过LogContext获得logger 的一个代理:

LogContext.getLogger(MyClass);

你甚至可以在你自己的代码中使用那些代理logger,对于构建应用程序这不是非常有用,因为它们不是Flex就是Flash应用程序,所以你可以简单地决定使用哪些日志API。

最后,实际代理必须被初始化,这取决于环境。

为 Flex Logging API 设置代理

在大多数情况下,代理将自动初始化。如果你使用FlexContextBuilder类的静态入口方法或者15.1 Flex 日志配置展示的XML配置扩展标签。

如果你不是使用的这两种方式你必须手动初始化代理:

LogContext.factory = new FlexLogFactory();
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: