Deixe o PHP-FPM informar o número da linha atual do script no tempo limite

1

Meu site está sendo executado com sucesso no PHP-FPM com o NGINX no Debian. O período de tempo limite é definido em 300 segundos para o NGINX. Isso é suficiente para a maioria das páginas, mas alguns scripts ficam presos. Não consigo reproduzir o problema nos testes, portanto, gostaria de saber onde o script está preso. O PHP-FPM pode reportar o último número de linha quando ocorre um tempo limite?

    
por i.amniels 23.10.2018 / 10:05

1 resposta

1

Você pode ativar o log lento do php-fpm. Se uma solicitação demorar mais do que um período de tempo configurável, o php-fpm fará o dump de um rastreamento de pilha para um arquivo de log.

Uma configuração de exemplo, que entra no seu arquivo de configuração do pool php-fpm:

slowlog = /var/log/php5/slow.log
request_slowlog_timeout = 5s

Neste caso, qualquer pedido que leve mais de 5 segundos de tempo de relógio de parede receberá um despejo de pilha em /var/log/php5/slow.log .

Note que o pedido continuará a ser executado .

    
por 23.10.2018 / 16:38