Tideways
Tideways is a performance monitoring tool for PHP applications. It shows which requests are slow, which database queries take the longest, and where in your code the time is spent.
This article describes how to enable Tideways on an FPM pool, what the two settings do, and the help we offer around it.
Why Tideways for PHP
Three tools come up most often for PHP performance monitoring:
- Sentry — strong on error tracking, limited on performance.
- New Relic — covers everything (PHP, infrastructure, browser, mobile), but the volume of data can make it hard to spot what actually matters.
- Tideways — PHP-only. Smaller scope, fewer screens, and it's easier to find slow requests and queries without wading through unrelated data.
For PHP-only performance work, Tideways is the one we recommend.
Billing
Tideways is a third-party service. You sign up directly with Tideways and pay them — Cyberfusion is not involved in billing.
Enable Tideways on an FPM pool
Add the Tideways PHP module to the cluster (one-time)
Tideways runs as a PHP module. Before any FPM pool can use it, the module must be added to the cluster's installed PHP modules.
- Navigate to 'Servers' > 'Clusters'.
- Select the cluster.
- Navigate to 'Properties' > 'PHP'.
- Under 'Custom PHP Modules', add
tideways. - Save.
Custom PHP modules can't be removed
Once a module is added to the cluster's 'Custom PHP Modules' list, it can't be removed again. See Change PHP settings.
Get an API key
- Create an account at tideways.com and create a project for the application you want to monitor.
- In the Tideways dashboard, go to 'Project Settings' > 'Setup'.
- Under 'Configure PHP with Tideways API-Key', copy the API key.
Add the key in Core
Tideways is configured per FPM pool, under the pool's PHP settings.
There are two ways to navigate there:
Directly
- Navigate to 'Advanced' > 'FPM Pools'.
- Select the FPM pool.
- Under 'Manage', click 'Update PHP Settings'.
- Open the 'Tideways' tab.
Via the project
- Navigate to 'Projects'.
- Select the project.
- Navigate to 'Advanced'.
- Under the 'FPM Pool' tile, click 'Manage'.
- Under 'Manage', click 'Update PHP Settings'.
- Open the 'Tideways' tab.
On the 'Tideways' tab, fill in:
- 'Tideways API Key' — paste the key from the Tideways dashboard.
- 'Tideways Sample Rate (%)' — the percentage of requests Tideways profiles. 100 profiles every request; lower values profile fewer. Lowering it has two effects:
- Less overhead on each request that isn't profiled.
- Fewer profiled requests count against your Tideways plan's monthly limit. Tideways plans are priced by monthly request volume, so a lower sample rate can let you stay on a cheaper plan.
Save the settings. Tideways starts profiling the next requests the pool handles.
For other PHP settings (and how the cluster default vs FPM pool override works), see Change PHP settings.
Free "Welcome to Tideways" workshop
Every Cyberfusion customer can request a free 'Welcome to Tideways' session — an optional meeting of around 20 minutes covering:
- A demo of the most useful Tideways features.
- The basics needed to start using Tideways on your own.
Contact Cyberfusion support to book a session.
Help with using Tideways
For how to use Tideways itself — reading traces, setting up alerts, interpreting the dashboards — see the Tideways documentation.
Paid help with a performance issue
If you've hit a performance issue you can't pin down yourself, Cyberfusion can use Tideways to investigate. Contact support to arrange this.