On 20/01/2012 15:42, Alex Harui wrote:
I'm still lost. That is a description of what you want to do, but not why.
I am seriously starting to doubt my english skills. Okay: My "why" is a simple pursuit of excellency. I am not happy with the overhead of current logging systems. After evaluating all options I think this (compiler-injection) would be the best solution to solve my unhappiness with the current options(listed in my former mails) to implement a logging system. The solution might also be useful for other applications, even though I am not knee-deep into them, that is why I am posting this idea here.

If not profiling, what do you want to know about the framework code that
requires a release player?
"requires a release player" is a odd choice of words. Wouldn't it be clearer as "doesn't require a debug player"?

Anyways: A use case is sending the log statements produced in a deployed swf running in on a clients computer with the release player back-home (to the developer) if a error occurs. Improved error debugging!

Another point is that sometimes (more often than appreciated or anticipated) errors do just occur in the release player but not in the debug player. Its a side-effect of compile time flags and debugging specific code. Some people use log statements just to fix these sort of bugs or to never run into them.

A debug SWF has file and line number information in it.  Would it be sufficient 
to simply remove some of that information so it only has information at method 
entry points?
Debug SWFs have line number information that are readable by the flash player. And as far as I know they are not accessible without a stack-trace from a error running in a debug player. Also: deployed swfs are stripped of that information. The stripping is good, it makes the swf lighter. With the suggested implementation there would be a way to selectively enable to keep the information and pass it directly just where they are needed.

On 20/01/2012 15:44, saurabh jain wrote:
How about introducing a framework level flag, say logLevel / logType, and
framwork users setting this depending upon what should be logged. The
setting for this could be done once and the logger class reading framework
level flag and works accordingly.
Again: It is about granularity. The framework users would need to enter a lot of data to have it more granular. Aside from offering this ability. The compiler sits right now on this information.

yours
Martin.


Reply via email to