Flex3:开启日志调试功能
三月 30, 2009 in RIA Flex
在Flex3中如何需要将Flex客户端中的调试或日志信息输出,需要做以下的配置:
- 安装调试版本的Flash Player
- 配置mm.cfg文件来启用错误和跟踪日志
- 程序中使用全局的trace()方法或Logging API来输出日志调试信息
- 查看日志文件 flashlog.txt 的内容
一,安装调试版本的Flash Player
也不知道Flex中为什么这么考虑,要输出调试信息非的安装调试版本的Flash Player,否则还无法输出。
Flex的开发手册这样描述调试版本Plash Player的功能:
- 使用trace()方法来输出语句和应用错误到本地日志文件中
- 记录数据服务日志信息到日志文件
- 查看运行时错误(run-time,RTEs)
- 使用fdb命令行调试器
- 使用Flex Builder调试工具
- 使用Flex Builder分析工具
调试版本的Flash Player可以从下列的位置找到:
Flex Builder: install_dir/Player/os_version
Flex SDK: install_dir/runtimes/player/os_version/
二,配置mm.cfg文件来启用错误和跟踪日志
安装了调试版的Flash Player之后,需要配置来告诉Player是否要输出错误、是否输出跟踪信息以及输出信息量的控制。通过配置mm.cfg文件来配置是否启用错误和跟踪日志,这个文件配置在用户的主目录下,如果这个文件不存在直接创建它:
Windows 2000/XP的路径在 C:\Documents and Settings\username
Windows Vista 的路径在 C:\Users\username
mm.cfg配置文件中可以设置的选项如下:
|
属性名称 |
描述 |
|
ErrorReportingEnable |
控制是否输出错误消息 |
|
MaxWarnings |
设置警告输出到日志的最大条数,如果达到了设置的数量,Flash Player将从头再开始写信息 |
|
TraceOutputFileEnable |
控制是否输出跟踪信息 |
|
TraceOutputFileName |
从Player 9 update版本开始,Flash Player忽略这个选项,直接hard-coded输出到flashlog.txt文件 |
下面是一个配置实例
1 2 | ErrorReportingEnable=1 TraceOutputFileEnable=1 |
三,使用全局方法trace()打印跟踪信息
在ActionScript或MXML中使用全局方法 trace()来输出信息到客户端日志文件,下面是flex开发手册中提供的一个例子:
1 | <!-- logging/ButtonLifeCycle.mxml --> |
四,通过 flashlog.txt 文件查看日志信息
日志文件 flashlog.txt 的位置:
Windows 95/98/ME/2000/XP的路径:C:\Documents and Settings\username\Application Data\Macromedia\Flash Player\Logs
Windows Vista的路径:C:\Users\username\AppData\Roaming\Macromedia\Flash
点击步骤三中的Click按钮,下面是日志文件flashlog.txt的输出内容:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | flexProject0.b1:preinitialize flexProject0.b1:initialize flexProject0.b1:creationComplete flexProject0.b1:updateComplete flexProject0.b1:updateComplete flexProject0.b1:updateComplete flexProject0.b1:updateComplete flexProject0.b1:updateComplete -> Begin call to AS: setFrameRate(1.0) Begin call to AS: getSelectedItems() Begin call to AS: getSelectedItems() Begin call to AS: getSelectedItems() Begin call to AS: getSelectedItems() Begin call to AS: getSelectedItems() Begin call to AS: getSelectedItems() Begin call to AS: getSelectedItems() Begin call to AS: getSelectedItems() <- End call to AS: getSelectedItems, Result = Application1 |
–
无相关文章.
sail.sun said on 四月 1, 2009
好东西好东西!!!!刚接触这几天光用Alert.show 调试结果了,土吧!?哈哈,等我遇到妖怪的问题咱也打一下日志!!!!