Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

How can I profile the execution time of a custom CMS to see what causing it to load slowly? I can't hard code a microtime in each section, because it will take weeks until I'll finish.

My server is running Linux with Apache.

Note: I couldn't find matching tags, so if an administrator sees this, please correct.


share|improve this question

closed as off topic by womble, Michael Hampton, Ward, HopelessN00b, Scott Pack Oct 6 '12 at 15:56

Questions on Server Fault are expected to relate to server, networking, or related infrastructure administration within the scope defined by the community. Consider editing the question or leaving comments for improvement if you believe the question can be reworded to fit within the scope. Read more about reopening questions here.If this question can be reworded to fit the rules in the help center, please edit the question.

What is the CMS? Is it Drupal, Joomla, Wordpress, or... – Soviero Jul 28 '12 at 4:45
It's a custom one.. – Novak Jul 28 '12 at 4:53
You'll probably get better responses at – Hubert Kario Oct 6 '12 at 14:33

Install NewRelic for Application Monitoring. I don't have any affiliation to NewRelic, but I can tell you for sure that it's excellent for diagnosing performance issues and bottlenecks in code.

You get the Pro service for 14 days for free with a new account, and that should be long enough to diagnose your problem. Last time I used it on a PHP project, it was so very useful that we decided to pay for it for a longer period.

I'm aware this isn't a "free" solution, but neither is the developer's time in adding debug microtime statements in every block and manually tracking queries through the system. This is why the small cost (and free trial) makes for a great idea just to evaluate the NewRelic system. It worked for me in the past for this similar kind of problem.

share|improve this answer

Not the answer you're looking for? Browse other questions tagged or ask your own question.