ProfilerLog for Magento

ProfilerLog for Magento

  • Monitor performance over time
  • Analyse bottlenecks
  • Know what to fix

The ProfilerLog extension logs all profiler-data to its own database-table - as simple as that. But by doing this, it allows you to to profile Magento over a period of time, which is vital for analysing Magento performance under different server loads. Not only that, ProfilerLog also gives you numerous nice graphics from within the Magento backend. A developers must.

  • Instant access to downloads
  • Worth every penny
Cost € 16.90  per 12 months
includes support & downloads
Current version 0.0.6 (Stable)
Requirements Magento CE 1.7 - 1.9
Magento EE 1.10 - 1.14
PHP 5.5.0 or higher (5.5, 5.6, 7.0, 7.1)
Support Support Forum
License OSL (Open Software License)

Getting started

  • Download the extension from our site
  • Install the extension following the download instructions
  • Optionally tune settings under System > Configuration > Advanced > ProfilerLog
  • Use the extension under System > Tools > ProfilerLog

Screenshots

Want to see ProfilerLog for Magento in action?

See screenshots

User Reviews

5
I bought this module as I was having trouble with my Magento Admin Panel running slowly and needed to find out what pages and when the system was running slowly. This module tracks all pages over time and gives you a great picture of whats going on behind the scenes. Would recommend for any Magento administrator

Introduction

When you are experiencing performance-issues with Magento, profiling is key. With profiling you can see which resources are eating up the page. But the standard Magento profiler (and various other third party profilers) only allow you to profile a single page, because the profiling data are added to the bottom of the page. Performance-bottlenecks that seem to occur randomly can not be traced, because nothing of the profiler-data is logged.

Log all profiler-data to the Magento backend

 

This is what our ProfilerLog extension changes: It logs various performance-related details to the Magento database, for later inspection. You can either use the ProfilerLog pages in your Magento Admin to analyse things using statistics-based charts, or you can dive into the details by inspecting the database-table profilerlog_log.

profilerlog hits

Why is this useful?

By using these data, you can easily inspect specific bottlenecks:

  • When does traffic increase?
  • Which Magento page-type (CMS, product, etc) consumes the most memory or performs the most database-queries?
  • How does the PHP execution-time compare to the database-time?
  • Is PHP the bottleneck or the database?
  • ... and many more answers can be provided

Available charts in backend

Charts are drawn in the Magento backend by using a set-interval (for instance, 3 minutes) and a period (the last 24-hours). The following graphical charts are available in the Magento backend:

  • Number of requests over time
  • PHP execution-time vs database-time
  • Average number of database-queries per request over time
  • Average PHP-memory per request over time
  • Total requests per module-controller over time
  • Average PHP execution-time per request per module-controller
  • Average number of queries per request per module-controller

Further details:

  • Top 10 requests with longest execution time
  • Top 10 requests with most database queries

profilerlog piechart

What is logged?

  • Magento-module responsible for serving the page (for instance, a controller of the module Mage_Cms)
  • Full request-string
  • IP-address, user-agent
  • Total PHP execution-time
  • Total PHP memory
  • Total database execution-time
  • Total number of database-queries
  • Store ID

We will be working on adding more details to the log, as long as this doesn't flood the system too much.

About the profiler-log database-table

All profiler-data is logged to the Magento database into a single flat MyISAM table. Inserting new entries to this table costs little extra overhead, so is quite harmless. Ofcourse it costs you an extra database-query for every request, so it is not recommended to have ProfilerLog running continuously.

Another reason to turn on ProfilerLog only when you're actually profiling, is the amount of disk-space consumed by the profilerlog_log table. On average, one record takes up about 1 Kb, which is not much. But having a busy site with 25.000 hits per day will leave you with a 1Gb table after 40 days. We recommend you keep things running for a few days, analyse things and clean up the table afterwards.

  • Instant access to downloads
  • Worth every penny

More extensions

WebP for Magento

WebP for Magento

Implement WebP into Magento Serve smaller images
New Relic

New Relic

Collect more Magento data within your New Relic dashboard
GoogleAnalytics

GoogleAnalytics

Control over your GA code in PHTML and XML layout