Debug and Profiler information processed when not viewing ?profile
This is an open discussion with 4 replies, filed under Troubleshooting.
Search
After speaking with Alistair — this is a known issue and is to be rectified in Symphony 2.1.
I’ve started to rethink my initial assumption. Although it adds overhead, I think the profile information should be built on every page load (even when not viewing ?debug
or ?profile
, but it should only be built if the user is logged in — just as only logged-in users can only see ?debug
anyway.
The reason being is that this information can then be used in other useful ways. One example being an implementation of FirePHP to expose debug information to Firebug for super-quick access:
If this is to remain, without the suggested changes for disabling profiling in the core, then I’ll compile the above into an extension.
It would also be nice if the profiler could display average values over the last n requests since my server tends to be either really quick or, every 20th request, really slow. :-)
Hmm it would require some sort of logging for performance comparisons, but could be written as a self-contained extension I imagine.
Create an account or sign in to comment.
I had a thought today — one that I cannot confirm by looking at the code. Can somebody confirm whether or not the profiler information (execution times, slow queries etc) occurs on every single page load, or only when viewing
?profile
?I'm under the impression that this information is created every single page load, regardless of whether the Profiler is viewed or not. Appending
?profile
simple triggers the profiler to view this information.Is this a waste of resources — could it be a performance burden? I ask because I understand that every single query is logged and its SQL stored as a string inside an array. When there are 1000+ queries on a page, I wonder whether storing all of these strings unnecessarily is eating memory on the server.
Would it be worth streamlining the request stack so that the debugging/profiling bits are only built when required?