如何阻止自定义记录器记录它自己的功能

时间:2010-08-05 15:42:00

标签: flex

我试图通过扩展TraceTarget并覆盖mx_internal函数internalLog来编写自定义记录器目标。我想偶尔将错误日志发送到我们的服务器进行录制。我使用HTTPService执行此操作,并在每次调用internalLog()时发送它。

但是,如果执行以下操作,

logTarget = new StandardLogTarget();
logTarget.filters=["*"];        
logTarget.level = LogEventLevel.ALL;

日志目标选择由StandardLogTarget对象内的HTTPService对象生成的日志。这会产生无限循环。另外,我不关心自定义记录器生成的日志。

有解决这个问题的方法吗?

1 个答案:

答案 0 :(得分:2)

你可能不再关心这个问题了,但是快速谷歌搜索提出了你的问题,然后是一个来自EffectiveUI员工的关于向Flex日志框架添加排除过滤器的博客帖子。

http://www.behindtheui.com/2008/09/adding-exclusion-to-flex-logging.html

它早在2008年,所以它将适用于Flex 3 - 但从那时起,框架的日志记录部分似乎没有太大变化。

或者,您也可以覆盖logEvent函数以排除导致问题的任何调用,如下所示。

http://techpolesen.blogspot.com/2007/07/sending-logs-to-server-using-custom.html