Performance insights
Find the websites with the most slow requests and the WordPress plugins behind slow PHP across the server, then open one account's view.
Performance insights shows which websites on the server are slow and why, over the last 7 days. It is a tab of Top accounts: Top accounts shows who uses the most CPU and memory, Performance insights who answers slowly.
Where: Server Admin › Accounts › Top accounts › Performance insights tab (resellers: Reseller Panel › Accounts › Top accounts, for their own customers)
Top offenders
The table lists up to 20 websites with the most requests that took 1 second or more, then the most PHP over 3 seconds, with their account and Average answer time. Click Open to see that website as its owner sees it: its slowest pages, slow PHP and suggestions (see Performance insights in the Control Panel guide). All accounts goes back to the list.
Plugins and themes in slow PHP requests lists the WordPress plugins and themes found in the most slow PHP requests across the server, with how many websites they are on: a plugin that slows down many websites at once shows up here.
To look at one account directly, open Top accounts, click Charts on its row and then Performance insights next to its name.
For administrators, the suggestions of a website also say when the MariaDB slow query log is off (switch it on in Database tools) and point the OPcache suggestion to Web server profiles.
Where the figures come from
Nothing extra runs on the websites; the hourly job that reads the access logs for the visitor statistics
(hf-api visitor-stats) also reads:
- Response times. Every website's Nginx access log ends each line with the time to answer and the time spent
waiting for PHP, Apache or Node.js (
rt=0.412 urt="0.400"). Only requests that waited for one of them are counted, per website, hour and page; at most 50 pages per website and hour keep a row of their own. - The PHP slow log. Each account's PHP-FPM pool writes the stack trace of every request still running after 3
seconds to
~/logs/php-slow.log(request_slowlog_timeout = 3s). It is read as the account; only entries of the account's own pool and files count. - Slow database queries come from MariaDB's slow query log, which Database tools collects (threshold 1 s by default). A customer only ever sees queries of their own databases run by their own database users.
The figures are kept 7 days. The logs are rotated daily with the website's other logs (and earlier when one passes 256 MB), and each hourly run reads at most 64 MB of an account's PHP slow log.
Note: websites that existed before this version get the new log format when HF Panel is updated (every website's configuration is written again); until then their pages have no times.