The renewal maintenance has officially ended for Progress iMacros effective November 30, 2023.
This Wiki site will also no longer be moderated from the Progress side.
Thank you again for your business and support.
Sincerely, The Progress Team
Difference between revisions of "Performance Profiler"
(2 intermediate revisions by one other user not shown) | |||
Line 1: | Line 1: | ||
[[File:Performance profiler.png]] | [[File:Performance profiler.png]] | ||
+ | |||
There are three possibilities to switch on the performance profiling. They differ however on its persistence, and where the performance xml data is written (either to a file, or to a variable which can be only retrieved via the scripting interface): | There are three possibilities to switch on the performance profiling. They differ however on its persistence, and where the performance xml data is written (either to a file, or to a variable which can be only retrieved via the scripting interface): | ||
Line 23: | Line 24: | ||
* Commands which throw errors occurred during playback are logged, but not those which throw bad parameter exceptions (parse errors). These syntax errors are logged in the macro status, but since the syntax incorrect command is not even played, it is not logged. Also, if the macro was not loaded (either because the macro was not found, or it contained an unknown command), no performance log is generated. But you can see such a log error in the general iMacros log (and via [[iimGetErrorText]]). | * Commands which throw errors occurred during playback are logged, but not those which throw bad parameter exceptions (parse errors). These syntax errors are logged in the macro status, but since the syntax incorrect command is not even played, it is not logged. Also, if the macro was not loaded (either because the macro was not found, or it contained an unknown command), no performance log is generated. But you can see such a log error in the general iMacros log (and via [[iimGetErrorText]]). | ||
* As profiling itself degrades the performance slightly, we advise not to leave the profiler set permanently. Use it only when you are interested on the results. | * As profiling itself degrades the performance slightly, we advise not to leave the profiler set permanently. Use it only when you are interested on the results. | ||
− | * Times are reported in [http://en.wikipedia.org/wiki/UTC_time Coordinated Universal Time (UTC)]. This is denoted in the output with the suffix "Z" | + | * Times are reported in [http://en.wikipedia.org/wiki/UTC_time Coordinated Universal Time (UTC)]. This is denoted in the output with the suffix "Z" following the [https://en.wikipedia.org/wiki/ISO_8601 international standard to represent for dates and times]. |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
== See Also == | == See Also == | ||
[[STOPWATCH]], [[Web Testing]] | [[STOPWATCH]], [[Web Testing]] |
Latest revision as of 13:26, 12 November 2018
There are three possibilities to switch on the performance profiling. They differ however on its persistence, and where the performance xml data is written (either to a file, or to a variable which can be only retrieved via the scripting interface):
- Check the "Profile macro performance" in the options dialog to set the profiler persistently.
- Command line switch -profiler can be used either in iimOpen(-profiler), or as command line argument for imacros.exe. In contrast to the other command line arguments, there is no need to use -macro.
- Logging is done, independent of the use of SET !FILE_PROFILER. Profile is stored in iMacros\Downloads\Profiler_yyyy-MM-dd.xml, unless SET !FILE_PROFILER changes this (see below).
- SET !FILE_PROFILER [NO|file name]
- NO: no log file will be output. Performance can be retrieved via iimGetPerformance() (new method in this version's scripting interface)
- <file name>: the file for output performance log. A full path can be given as well. Default folder is iMacros\Downloads, default file name is Profiler_yyyy-MM-dd.xml.
- When this command is used, profiling is done for the current macro, starting at this command.
We provide an xsl style sheet in iMacros 7.30 distribution (Downloads folder) for a comfortable visualization of the xml profiler output, by opening the xml file directly in IE for instance.
Output from the scripting interface method iimGetPerformance() is not a complete xml document, but an xml fragment - only the macro node. The calling script or program should append this node to a complete xml document in a root element.
Remarks:
- Commands which throw errors occurred during playback are logged, but not those which throw bad parameter exceptions (parse errors). These syntax errors are logged in the macro status, but since the syntax incorrect command is not even played, it is not logged. Also, if the macro was not loaded (either because the macro was not found, or it contained an unknown command), no performance log is generated. But you can see such a log error in the general iMacros log (and via iimGetErrorText).
- As profiling itself degrades the performance slightly, we advise not to leave the profiler set permanently. Use it only when you are interested on the results.
- Times are reported in Coordinated Universal Time (UTC). This is denoted in the output with the suffix "Z" following the international standard to represent for dates and times.