Flex3:开启日志调试功能

三月 30, 2009 in RIA Flex

 

在Flex3中如何需要将Flex客户端中的调试或日志信息输出,需要做以下的配置:

  1. 安装调试版本的Flash Player
  2. 配置mm.cfg文件来启用错误和跟踪日志
  3. 程序中使用全局的trace()方法或Logging API来输出日志调试信息
  4. 查看日志文件 flashlog.txt  的内容

 

 

一,安装调试版本的Flash Player

也不知道Flex中为什么这么考虑,要输出调试信息非的安装调试版本的Flash Player,否则还无法输出。

Flex的开发手册这样描述调试版本Plash Player的功能:

  1. 使用trace()方法来输出语句和应用错误到本地日志文件中
  2. 记录数据服务日志信息到日志文件
  3. 查看运行时错误(run-time,RTEs)
  4. 使用fdb命令行调试器
  5. 使用Flex Builder调试工具
  6. 使用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

控制是否输出错误消息
1 为启用输出
0 为不输出
默认值为0

MaxWarnings

设置警告输出到日志的最大条数,如果达到了设置的数量,Flash Player将从头再开始写信息
默认值为 100
如果设置它的值为0代表输出所有的日志信息,不受限制

TraceOutputFileEnable

控制是否输出跟踪信息
1 为启用输出
0 为不输出
默认值为0

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
-&gt; 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()
&lt;- End call to AS: getSelectedItems, Result = Application1

 

无相关文章.

1 response to Flex3:开启日志调试功能

  1. 好东西好东西!!!!刚接触这几天光用Alert.show 调试结果了,土吧!?哈哈,等我遇到妖怪的问题咱也打一下日志!!!!

Leave a reply

You must be logged in to post a comment.