Alan K Holden


Reading Flex trace output in your Flash Player

We programmers will often include trace() lines in our Flex applications, which note when certain processes start and end, and what business rule we are following at any given moment. This helps us to "follow the logic" when we are running the app in debug mode.

When you are reviewing the app (perhaps as a QA Analyst or Program Manager), you might want to see this trace output yourself. Why write up a bug report or email asking "WTF" (using more appropriate business vernacular of course), when you can just check the trace - and possibly find your answer there?

Here's how it easy it is:

  • Download and install the "debug version" of your Flash Player. There's the ActiveX version for Internet Explorer, and the version other browsers use.
    Personally, I use IE when I want to run Flash in debug mode, and the regular player on my preferred browser. That's because the debug version can pop a dialog box for every flaw, and it can be depressing to discover how many slightly flawed applications have been released into production when you are just surfing popular sites as a typical user.
  • You can tell if you're running the debug version if you alt-click (eg right click) on a Flash app and see this:

  • Look for a text file called mm.cfg in your user directory. In a typical Windows7 setup, that would be: C:\Users\YOUR_USER_NAME_GOES_HERE\  If it doesn't exist, just create it. (mm once stood for "Macromedia". Fascinating.)
  • In your mm.cfg file, place the following line (if it's not already there): TraceOutputFileEnable=1
  • That's it! The next time you run a Flex application in your debug Flash player, the super secret debug messages and trace output will be logged here: C:\Users\YOUR_USER_NAME_GOES_HERE\AppData\Roaming\Macromedia\Flash Player\Logs\flashlog.txt
  • The file will be updated in real time as the application runs, so take a look & refresh your view as you perform key tasks. You might see notes the developer made - to explain why the application is doing one things vs. another.
Full Version