Denna artikel är en spegelartikel om maskinöversättning, klicka här för att hoppa till originalartikeln.

Utsikt: 14157|Svar: 0

[Web] Aktivera långsam loggkonfiguration i nginx php-fpm (för att upptäcka långsamt körande PHP-skript)

[Kopiera länk]
Publicerad på 2014-10-23 23:49:24 | | |

Många webbansvariga har problem med 500 502 problem efter att ha bytt till nginx+php-fpm. När nginx får ovanstående felkod kan man fastställa att det finns något slags problem med backend php-fpm-parsing php, såsom exekveringsfel eller exekveringstidsavslutning.

php-fpm.conf har en parameter request_slowlog_timeout beskrivs så här

  1. ; The timeout for serving a single request after which a PHP backtrace will be
  2. ; dumped to the 'slowlog' file. A value of '0s' means 'off'.
  3. ; Available units: s(econds)(default), m(inutes), h(ours), or d(ays)
  4. ; Default Value: 0
  5. ;request_slowlog_timeout = 0
Kopiera koden

När request_slowlog_timeout sätts till en specifik sekund request_slowlog_timeout =5 betyder det att om ett skript körs i mer än 5 sekunder, kommer skriptet att registreras i den långsamma loggfilen


request_slowlog_timeout =0 betyder att långsam logutdata stängs av.

Den långsamma loggfilens plats finns som standard i loggmappen i php:s installationskatalog, och du kan specificera den genom att ändra parametern slowlog = log/$pool.log.slow.

Exempel på en långsam logg från php-fpm kommer den långsamma loggen att registrera processnumret, skriptnamn, specifik fil, vilken kodrad, vilken funktion som är för lång att köra.

  1. [21-Nov-2013 14:30:38] [pool www] pid 11877
  2. script_filename = /usr/local/lnmp/nginx/html/www.quancha.cn/www/fyzb.php
  3. [0xb70fb88c] file_get_contents() /usr/local/lnmp/nginx/html/www.quancha.cn/www/fyzb.php:2
  4. [21-Nov-2013 14:15:23] ERROR: [pool www] 'slowlog' must be specified for use with 'request_slowlog_timeout'
Kopiera koden

request_slowlog_timeout och slowlog måste ställas in samtidigt, och du måste slå på slowlog samtidigt som du slår på request_slowlog_timeout

  1. [21-Nov-2013 14:16:27] ERROR: Unable to create or open slowlog(/usr/local/lnmp/php/log/www.log.slow): No such file or directory (2)
Kopiera koden

Långsamma loggbanor måste skapas manuellt


Specifika steg för att möjliggöra långsam loggning av php-fpm:

  1. cd /usr/local/lnmp/php

  2. vi etc/php-fpm.conf
  3. 去掉request_slowlog_timeout 、slowlog的前缀分号';',设置request_slowlog_timeout =5;
  4. :wq
  5. 保存退出
  6. 创建慢日志目录
  7. mkdir log
  8. 重启php-fpm
  9. kill -INT `cat var/run/php-fpm.pid
  10. sbin/php-fpm
Kopiera koden






Föregående:När du postar når php-fpm-processen omedelbart 99 % av CPU:n, felanalys
Nästa:Chopstick Brothers' gudomliga komedi "Lilla Äpplet" Hej du, där är en vacker flicka
Friskrivning:
All programvara, programmeringsmaterial eller artiklar som publiceras av Code Farmer Network är endast för lärande- och forskningsändamål; Ovanstående innehåll får inte användas för kommersiella eller olagliga ändamål, annars kommer användarna att bära alla konsekvenser. Informationen på denna sida kommer från internet, och upphovsrättstvister har inget med denna sida att göra. Du måste helt radera ovanstående innehåll från din dator inom 24 timmar efter nedladdning. Om du gillar programmet, vänligen stöd äkta programvara, köp registrering och få bättre äkta tjänster. Om det finns något intrång, vänligen kontakta oss via e-post.

Mail To:help@itsvse.com