Troubleshooting


The following steps may help in troubleshooting the Sqreen for PHP.

Check if the Sqreen extension was loaded by PHP

By taking a look at the phpinfo() page, the Sqreen extension section should be present. If it isn't, then probably PHP was not correctly instructed to load the Sqreen PHP extension. Take a look at the manual installation of the php extension section in this documentation.

phpinfo.png

The following can be retrieved in this table:

  • the extension version;
  • the daemon version;
  • the connection status between the extension and the daemon (on the Connected line in the first section).

Ensure the agent is running

A sqreen-agent process should be running:

$ ps aux | grep sqreen
sqreen  19456   0,0  0,0  2522856   6656 s013  S+   Ven10     0:55.18 sqreen-agent

If it isn't, please ensure the sqreen-agent was installed and configured to start automatically.

Check for PHP logs

The PHP errors (in the FPM logs or in the Apache logs) may have Sqreen related messages.

Check the agent logs

The sqreen-agent logs should inform you that the agent was successfully started:

$ cat /var/log/sqreen/sqreen.log
[INFO][2017-09-04 09:42:29,013 #15348.MainThread] sqreen-agent:91 Starting up on TCP socket 0.0.0.0:7773
[INFO][2017-08-31 09:42:29,013 #15348.MainThread] sqreen-agent:104 Sqreen-agent successfully started

Check the agent debug logs

The agent can be asked to report debug logs as well:

$ sqreen-agent --log_level=DEBUG
[INFO][2017-09-04 09:42:29,013 #15348.MainThread] sqreen-agent:91 Starting up on TCP socket 0.0.0.0:7773
[INFO][2017-08-31 09:42:29,013 #15348.MainThread] sqreen-agent:104 Sqreen-agent successfully started

Ensure the extension can join the agent

Since the PHP extension need to contact the agent, run the following command (from the PHP host if different from the daemon host):

$ curl 127.0.0.1:7773

If you are using a different host for the daemon and your PHP host, replace 127.0.0.1 with the address of the host running the daemon.

The command will either:

  • timeout (the connection was successfully performed)
  • terminate with a Connection refused error.

In the case of a timeout, everything is fine: the agent is listening. In case of a Connection refused error, it seems this host cannot join the agent. Check your network configuration.

Get more logs

The Sqreen extension may be configured in debug mode. In the Sqreen .ini file, add the following directive:

sqreen.log_level = 'debug'

Restart Apache or FPM and query your server. The extension should create log files in the /tmp/ directory. Feel free to share these logs with us for further investigation.