Enabling Profiling with Xdebug
Xdebug profiler is incorporated in the Xdebug tool. Therefore you first need to download, install, and enable Xdebug itself and after that enable the profiling functionality within it.
To enable profiling with Xdebug, perform these general steps:
- Configuring the Xdebug Tool
- Enabling the Xdebug Profiler
- Configuring the Way to Toggle the Profiler from the Browser
- Specifying the location for storing accumulated profiling data
Configuring the Xdebug Tool
- Download and install the Xdebug tool.
- Integrate Xdebug with the PHP engine.
- Integrate Xdebug with PhpStorm.
Enabling the Xdebug Profiler
- Open the active
php.ini
file in the editor:- Open the Settings / Preferences Dialog by choosing for Windows and Linux or for OS X, and click PHP under Languages&Frameworks.
-
On the PHP page that opens, click
next to the Interpreter field.
-
In the Interpreters dialog box that opens, the Configuration File read-only field
shows the path to the active
php.ini
file. Click Open in Editor.
-
Set the xdebug.profiler_enable directive to 1:
xdebug.profiler_enable = 1;
-
To enable toggling the profiler from the browser through control over debugger cookies,
set the xdebug.profiler_enable_trigger directive to 1:
xdebug.profiler_enable_trigger = 1;
Configuring the Way to Toggle the Profiler from the Browser
To specify the GET/POST or COOKIE parameters, do one of the following:
- Specify the values manually.
-
Generate the bookmarklets to toggle the debugger through.
These bookmarklets will appear on the toolbar of your browser.
They provide control over the debugger cookie, through them you will activate and deactivate the debugger.
- Enable the Bookmarks toolbar in your browser by doing one of the following depending on the browser type:
- Open the Settings / Preferences Dialog by choosing for Windows and Linux or for OS X. Expand the Languages&Frameworks node, and then click Debug under PHP.
- On the Debug page, that opens, click the Use debugger bookmarklets to initiate debugger from your favorite browser link.
- On the Zend Debugger & Xdebug bookmarklets page that opens, check the debugging engine settings and click Generate. The bookmarks for listed debugging-related actions are generated.
- Drag the generated links to the bookmark toolbar in your browser.
Specifying the location for storing accumulated profiling data
- Open the active
php.ini
file in the editor:- Open the Settings / Preferences Dialog by choosing for Windows and Linux or for OS X, and click PHP under Languages&Frameworks.
-
On the PHP page that opens, click
next to the Interpreter field.
-
In the Interpreters dialog box that opens, the Configuration File read-only field
shows the path to the active
php.ini
file. Click Open in Editor.
-
Define location for accumulating profiling snapshots by specifying the xdebug.profiler_output_dir directive.
xdebug.profiler_output_dir = "<output folder name>"
-
Specify the name of the file to store snapshots in through the value of the
xdebug.profiler_output_name
directive. The default name iscachegrind.out.%p
, where%p
is the name format specifier. Accept the default name or define a custom one in compliance with the following standard:- The name should always be
cachegrind.out
. - Use the supported format specifiers.
- The name should always be
See Also
Last modified: 12 July 2016