Mik*_*eck 5 apache-flex logging
有没有办法在不在调试模式下运行时捕获Flex应用程序的跟踪语句?
或者有没有其他方法可以在不运行调试器时输出日志信息?
目前我正在尝试修复仅在非常具体的部署方案中出现的错误,但我可以看到这在某些情况下对于客户在报告错误或其他问题时将日志发送给技术支持是有用的.
我想您正在谈论针对 Flash Player 的 Adobe Flex?
如果是这样,您可以编写自己的日志记录包装类,将发送给它的日志消息传播到多个目标(例如跟踪堆栈和内部内存),以便您可以从应用程序内部访问日志,例如,当用户同意发送错误报告)。另请参阅Flex 日志记录框架,了解已经存在的此类内容。
我实际上做了类似的事情 - 我有一个类,使用我在应用程序中使用的Log静态方法(如log()、等)调用,并且该类将发送到它的所有消息通过debug()、转发到“日志控制台” “通过 LocalConnection 和/或 Socket 在同一主机上运行的应用程序(套接字连接显然比 LocalConnection 快得多),并且还将它们本地保存到数组中,以便用户可以直接从应用程序内发送错误报告以及日志输出。error()trace()
当然,这种更改意味着您必须将trace()代码中的所有命令转换为对日志记录系统的调用,但这可以通过正则表达式搜索和替换轻松实现。