Se você habilitar o log de consultas lentas no mysql, ele lhe dará um ponto de partida para qualquer instrução SQL que consuma muitos recursos. Ele não lhe dirá qual script PHP foi o culpado, mas você terá o banco de dados, a tabela, o SQL e a hora do problema;
link
The slow query log consists of SQL statements that took more than
long_query_time seconds to execute and required at least
min_examined_row_limit rows to be examined.
Execute a seguinte consulta;
set global slow_query_log = 1;
Por padrão, o log de consultas lentas pode ser acessado assim;
mysqldumpslow /var/log/mysql/mysql-slow.log
aqui estão alguns exemplos de análise das informações no log de consultas lentas aqui: link
Você pode combinar isso com o exame dos arquivos de log do servidor da web, para localizar solicitações que ocorreram ao mesmo tempo que a consulta de longa execução. Por exemplo, depois de encontrar uma consulta particularmente lenta, examine os arquivos de log do apache ou nginx;
[root@vps001 www]# vi /var/log/httpd/access_log
mostrará a você qual arquivo php corresponde a uma solicitação de tempo específica;
185.142.237.8 - - [03/Jul/2016:04:27:14 +0000] "POST /xmlrpc.php HTTP/1.1" 200 370 "-" "Googlebot/2.1 (+http://www.google.com/bot.html)"