Advanced Metrics for WordPress and PHP Hosting

May 30, 2024

ServerPilot's new monitoring dashboards include extensive metrics that give you a deep and practical understanding of your servers and the WordPress and PHP apps you're hosting. With metrics ranging from MySQL cache status to per-app PHP memory usage, along with built-in explanations of all charts, you can quickly identify code problems, performance issues, and resource limitations that are impossible to see otherwise.

If you're already using ServerPilot, view your monitoring dashboards.

If you're not using ServerPilot, create an account to get started.

Monitoring Dashboards

Server Metrics

CPU usage is broken down both as total CPU usage and per-core usage.

CPU iowait lets you see how much idle CPU time was due to waiting on disk I/O.

As raw memory usage doesn't tell you how much memory is actually available, our effective memory usage chart does.

OOM kills tells you if the kernel's out-of-memory (OOM) killer had to kill processes because a server ran out of memory.

Additional charts include disk usage, inode usage, swap usage, and more.

Click to enlarge

App Metrics

PHP process count and PHP memory usage charts show you which apps are using the most memory due to their number of concurrently executing requests.

The rates of PHP requests and slow PHP requests show you how busy your apps are and how frequently response times are over five seconds.

Nginx requests and Apache requests tell you the total rate of requests to each app, including requests for static files.

Error log rates for PHP, Nginx, and Apache help you correlate errors with traffic spikes or periods of high CPU or memory usage.

Click to enlarge

MySQL Metrics

Query rate and slow query rate let you see how many queries MySQL is answering and how many are performing poorly.

Active MySQL connections along with max seen active connections since MySQL started and MySQL's configured connection limit help you avoid problems without wasting memory.

Cache health including InnoDB buffer pool size and usage as well as open table cache size and usage ensure you know that cache sizes are large enough for your workloads.

Other charts include InnoDB IOPS (disk read/write rates), MySQL traffic, and more.

Click to enlarge

Beyond Averages

Many resource limitations and performance bottlenecks cannot be seen by looking at averages alone.

When you view a one-week chart of server CPU usage at your cloud provider (or with any monitoring tool), the chart does not show every raw, per-minute data point. If it did, you'd see an unreadable mess of lines connecting over 10,000 points. Instead, a single data point may be used to represent each hour. Commonly, the raw values within that hour are averaged to generate a single data point.

Though averages are useful, what they don't tell you are maximum values. That is, averages don't let you see peaks. The CPU usage charts below show an example.

Chart of average CPU usage that hides a peak value.

Chart of max CPU usage provides missing information.

If your chart of averages shows a server's CPU usage reached 20%, the CPU usage might have actually been at 100% for some of the time covered by that data point. And that means your apps were running slower because of CPU limitations.

Data is only as useful as what you can learn from it. Having the correct visualizations to understand your data is essential.

Time Range Selection

Easily change the time range shown in any dashboard by either choosing from a predefined time range or selecting an area within any chart. On mobile devices, use two fingers to pinch and expand any chart.

Server and App Filters

All dashboards can be filtered by server. Additionally, the app metrics dashboards can be filtered by app.

App filters are smart for any server-scoped graphs. When an app filter is applied, the correct server filter for that app is automatically applied to server-scoped graphs.

Linkable dashboards, time ranges, and filters

Whether for bookmarking or to share with team members, it can be useful to link to a particular view of a dashboard. Your selected time range and filters are always included in the URL for easy linking.

Fast Switching Between Dashboards and Views

When you're looking at metrics dashboards, speed matters. Dashboards that are slow to load are worse than wasting your time, they also prevent you from exploring and better understanding your data.

When moving between dashboards or changing filters and time ranges, your charts will be rendered almost instantly.

Mobile-First Design

You shouldn't need a laptop to explore metrics for your servers and apps. ServerPilot's monitoring dashboards are built to be easy to use on mobile devices.

Pricing

See ServerPilot's pricing for information about the metrics available on each plan.

ServerPilot Management + Monitoring

Learn more about ServerPilot's features for hosting WordPress and PHP on cloud servers.