- 浏览: 648394 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
ssxszt:
...
解决PopUpManager弹出窗口RangeError: Error #2006: 提供的索引超出范围 -
lijiajia:
木子佳 写道楼主,想要源码学习,谢谢。kajiamuzi@16 ...
DataGrid和AdvancedDataGrid CheckBox全选功能 -
juedi:
很好,是我需要的东东
Flex异常处理设计 -
暖暖fh:
大神,我想要源码,这个功能我折腾了好我啊 fuhan247@1 ...
DataGrid和AdvancedDataGrid CheckBox全选功能 -
chenzi:
一样的代码,两台机器上面,完全不同的报错。。Flex实现htt ...
Flex使用Https协议
log4j对于java开发者最熟悉不过了,log4j不仅可以控制日志输出的目的地,还可以控制日志输出级别,便于调试和发布,一个好的产品需要记录很多日志便于日后的维护,尤其是产品上线之后。
在Flex中也提供了这样的一个框架,Logging API就是最基本的日志控制框架,只不过大部分的人都在用最简单的trace()函数罢了,类似于js开发常用的alert。
Logging API不仅提供了最基本的trace功能,还提供了log target,也就是输出的方式,还提供了destination目的地的配置功能。我们可以根据日志范围过滤掉一些信息。除此之外还可以进行自定义log target,对框架进行扩展,例如我们可以把log信息输出到服务器端或者Alcon等。
下面先来看下Logging API主要类的UML关系图。
LogLogger: 提供了发送log到一个特定target,它实现了ILogger接口。
AbstractTarget:定义了日志的输出地。TraceTarget就是将log输出到trace()函数输出的文件中,也就是flashlog.txt文件中,很多时候我们需要扩展日志输出地满足架构的需求,因为flashlog文件有大小限制,而且输出的日志会覆盖上次的日志。
LogEventLevel:定义了当前系统可输出的日志级别。
如下表所示。如果现在的level是ALL,那么系统中所有的日志都会被输出。如果是INFO,那么高于INFO的DEBUG信息就不会被输出。一般开发测试的时候级别为DEBUG或者INFO,上线之后调整为ERROR。另外,注意一点FATAL的值为1000,很符合扩展性的需求。这种设计理念在实际项目中经常会用到。
log target 过滤filters
logTarget.filters=["mx.rpc.*","mx.messaging.*"];
这个例子中就是指定了我们要输出日志的类和包。只有在mx.rpc和mx.messaging包下的类才能输出log,忽略其他的。也可以是mxml形式:
<mx:TraceTarget id="logTarget" includeDate="true" includeTime="true" includeCategory="true" includeLevel="true"> <mx:filters> <mx:Array> <mx:String>mx.rpc.*</mx:String> <mx:String>mx.messaging.*</mx:String> </mx:Array> </mx:filters> <!-- 0 is represents the LogEventLevel.ALL constant. --> <mx:level>0</mx:level> </mx:TraceTarget>
参数介绍
includeDate="true",输出的log带日期
includeTime="true", 输出的log带时间
includeCategory="true",输出的log带分类信息,也就是哪个类或者控件输出的log
includeLevel="true",输出的log是否带level信息,如[INFO],[DEBUG]等。
Flex提供的log功能如此强大,你是不是想跃跃欲试呢?但是flash并不是那么“完美”,需要完美做以下工作才可以进行log实战。
Flex的日志可以分为前端日志和后端日志,我们先来了解下前端日志。
logging日志文件。
首先要配置mm.cfg文件,如果没有可以自己创建一个,该文件根据操作系统的不同位置也会不同,详见下表格
在mm.cfg文件中写入:
ErrorReportingEnable=1 TraceOutputFileEnable=1 MaxWarnings=0
ErrorReportingEnable
如果值为1,则在导出文件中写入错误报告。默认值为0
MaxWarnings
写入到log文件中的最大的错误条数。如果希望不限制错误条数,将其值设置为0即可
TraceOutputFileEnable
值为1则将trace内容导出到log文件
TraceOutputFileName
导出的log文件的路径和文件名,如果不定义,则会将log内容写入到mm.cfg文件相同目录下的flashlog.txt
配置完mm.cfg文件后,会自动根据TraceOutputFileName生成一个日志文件,默认路径详见下表格:
Flex 提供了一套非常好用的Logging API, 分别在SDK包mx.logging, mx.logging.target和mx.logging.error下。有兴趣的朋友可以去Adobe LiveDoc了解一下其详细用法。
下面是一个简单的测试例子:
<?xml version="1.0" encoding="utf-8"?> <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" creationComplete="init()" xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600"> <fx:Declarations> <!-- 将非可视元素(例如服务、值对象)放在此处 --> </fx:Declarations> <fx:Script> <![CDATA[ import mx.logging.LogLogger; import mx.logging.ILogger; import mx.logging.Log; import mx.logging.LogEventLevel; import mx.logging.targets.TraceTarget; private var logger:ILogger; private function init():void{ var logTarget:TraceTarget = new TraceTarget(); logger = new LogLogger("testlog"); logTarget.filters = ["*"]; logTarget.level = LogEventLevel.ALL; logTarget.includeCategory = true; logTarget.includeDate = true; logTarget.includeLevel = true; logTarget.includeTime = true; logTarget.addLogger(logger); Log.addTarget(logTarget); //trace("create complete"); } private function clickBtn():void{ logger.debug("It's the debug"); logger.info("It's the info"); logger.warn("It's the warn"); logger.error("It's the error"); logger.fatal("It's the fatal"); trace("ceshi dasdasd我来侧四下"); //trace("It's the first click on btn"); } ]]> </fx:Script> <mx:Button id="btn" label="OK" click="clickBtn()"/> </s:Application>
输入结果如下:
评论
我的是win7+flex3
mm.cfg也放到了指定目录,不清楚的是为什么是mm.cfg这个名字很奇怪,程序是怎么加载这个文件的呢?
logging日志文件。
首先要配置mm.cfg文件,如果没有可以自己创建一个,该文件根据操作系统的不同位置也会不同 楼上没认真看
发表评论
-
图片背景使用九宫格
2012-07-24 10:20 0[Embed(source="../ass ... -
Flex弹出窗口做为Module
2012-07-23 18:00 0今天才知道原来TitleWindow也可以单独编译 ... -
Repeater使用简介
2012-05-09 19:26 1667mx组件中的Repeater类似与sprak中的Da ... -
Flex失效机制
2012-02-29 17:19 3025一、什么是失效机 ... -
Image倒影效果
2012-02-20 10:11 1729利用spark的BitmapImage实现倒影效果 ... -
Flex设置z轴的index
2012-02-13 14:58 4802flex4的UIComponent新增了dept ... -
得到一个字符的Unicode编码
2012-02-09 12:59 2019ActionScript 3.0String类中函数charC ... -
解决PopupManager.createPopup报错:状态“inactive”未定义
2012-02-04 21:27 2247出现这种的场景是在Module中使用弹出窗口Pop ... -
用chrome浏览器调试flex程序
2012-02-04 18:55 6926开发flex程序难免需要debug,但是IE8浏 ... -
Flash Player11不能输入中文,请谨慎升级
2011-12-18 01:04 2705很多时候,Flash的程序需要集成到其他系统中 ... -
优化Flash Builder
2011-12-18 00:54 2671Flash Builder4中新增了一个ASDO ... -
设置DataGrid的DataGridColumn的width
2011-12-18 00:42 5205DataGrid的column的width属性不 ... -
RollOver和MouseOver的不同
2011-12-12 15:03 3042共同点:都是针对鼠标的进入和进出事件。 ... -
转 Adobe移动战略失败的幕后
2011-12-08 15:56 1372最近一段时间,Adobe和Apple两个昔日的好伙 ... -
Flash Builder该这样编译,希望adboe的人能看到
2011-12-06 12:17 0从3.0开始使用flash builder,对f ... -
List或DataGrid可变行高
2011-11-29 21:57 3171默认情况下List组件是每行的行高是固定的,但 ... -
访问flex sdk版本和Flash player版本
2011-11-16 15:52 1361下面的代码将flex sdk的版本号和Fla ... -
设置TitleWindow的closeButton的mode
2011-11-16 15:42 1220默认情况下,TitleWindow的closeBu ... -
DataGrid header显示tooltip
2011-11-15 17:18 2544有时需要在DataGrid的header上显示 ... -
flash右键菜单项关键字
2011-11-15 16:26 1250有时需要在flash的右键菜单中添加 删除 ...
相关推荐
综上所述,《Flex 3 RIA开发详解与精深实践》这本书会全面介绍Flex 3的各个方面,帮助开发者掌握这一强大的RIA开发技术,无论是初学者还是有经验的开发者,都能从中受益匪浅。通过学习,开发者可以构建出更具吸引力...
Flex提供了一些内置的调试和日志记录工具。 10. **优化和性能**:优化Flex应用涉及到减少SWF大小、优化组件使用、合理处理数据加载等方面,以提供更快的加载速度和流畅的用户体验。 11. **Flex应用部署**:发布...
《Flex与Java实现的日志管理系统详解》 在IT领域,日志管理是系统维护和故障排查的重要环节。本文将深入探讨如何使用Flex前端与Java后端技术构建一个完整的日志管理系统,包括登录、注册、日志管理和图片上传等功能...
Flex 3 RIA 开发详解与精深实践是关于创建富互联网应用(Rich Internet Applications,简称RIA)的专业指南,尤其侧重于使用Adobe Flex 3框架。这个资源包含第1章到第6章的源代码,这为我们提供了深入理解Flex编程...
Spring MVC与Flex集成示例详解 在现代Web应用开发中,Spring MVC作为强大的后端MVC框架,提供了灵活的控制层实现,而Flex作为一种富互联网应用程序(RIA)开发平台,可以提供丰富的用户交互体验。将两者结合,可以...
### Flex的处理与相应问题详解 #### 一、Flex简介 Flex是一种开源框架,由Adobe Systems维护,用于构建跨浏览器的富互联网应用(RIA)。它允许开发者使用XML和ActionScript来创建复杂的用户界面组件,并且可以很容易...
### Flex3 Compiler API详解 #### 一、简介 Flex3 Compiler API 是一款强大的工具,它允许开发者通过Java应用程序来编译Flex应用。这种能力为那些希望利用Java的强大功能与Flex的丰富界面相结合的开发者提供了极大...
**win-flex-bison工具详解** 在编程世界中,解析器和词法分析器是构建编译器或解释器的关键组成部分。`win-flex-bison`工具是Windows环境下对开源的`flex`和`bison`工具的封装,为开发者提供了一种在Windows系统上...
### Flex 重写组件详解 #### 一、为何需要重写Flex组件? 在Flex开发过程中,经常遇到已有的组件无法完全满足项目需求的情况。这些需求可能包括但不限于改变组件的外观、增加新的功能特性或者实现更复杂的交互逻辑...
《使用Flex与Spring集成开发详解》 在现代Web应用程序开发中,Flex作为一款强大的富互联网应用(RIA)开发框架,以其丰富的用户界面和强大的交互能力备受开发者青睐。与此同时,Spring框架作为Java企业级应用的事实...
《Flex+Java档案管理系统XYZP详解》 在信息化建设中,档案管理系统的存在至关重要,它为企业数据的安全存储、高效检索提供了便利。本文将详细介绍一款基于Flex和Java技术开发的档案管理系统——XYZP,该系统充分...
### Flex on Rails 文档知识点详解 #### 一、关于 Flexible Rails **Flexible Rails** 是一个旨在结合 **Flex** 和 **Rails** 技术优势的框架。通过将这两者结合,可以构建出高度交互且功能丰富的 Web 应用程序。本...
#### 三、Flex 输入文件格式详解 Flex 输入文件通常由三个主要部分组成:定义部分、规则部分和用户代码部分。 - **定义部分**:这部分包含了预处理器指令、包含文件以及其他与 C 语言兼容的声明和定义。 - **规则...
### Flex与Spring整合详解 #### 一、Spring简介与安装 Spring框架是一个开源的应用框架,主要为Java平台设计,提供了一种轻量级的方式来进行应用程序的开发和部署。Spring的核心特性包括依赖注入(DI)和面向切面...
《Flex与Java整合的学生选课系统Java后台代码详解》 在现代教育信息化的背景下,学生选课系统的开发显得尤为重要。本篇文章将详细探讨一个基于Flex前端和Java后端整合实现的学生选课系统,旨在帮助开发者理解和掌握...