Denne artikel er en spejling af maskinoversættelse, klik venligst her for at springe til den oprindelige artikel.

Udsigt: 14157|Svar: 0

[Web] Aktivér langsom logkonfiguration i nginx php-fpm (for at opdage langsomt udførende PHP-scripts)

[Kopier link]
Opslået på 23/10/2014 23.49.24 | | |

Mange webmastere er plaget af 500.502 problemer efter at være skiftet til nginx+php-fpm. Når nginx modtager ovenstående fejlkode, kan det fastslås, at der er et eller andet problem med backend php-fpm parsing php, såsom eksekveringsfejl eller eksekveringstimeout.

php-fpm.conf har en parameter, request_slowlog_timeout beskrevet sådan

  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
Kopier kode

Når request_slowlog_timeout sættes til et bestemt sekund request_slowlog_timeout =5, betyder det, at hvis et script kører i mere end 5 sekunder, vil scriptet blive registreret i den langsomme logfil


request_slowlog_timeout =0 betyder, at langsom log-output er slået fra.

Placeringen af slow log-filen ligger som standard i logmappen i php-installationsmappen, og du kan specificere den ved at ændre slowlog = log/$pool.log.slow.

Eksempel på en PHP-FPM langsom log, den langsomme log vil registrere procesnummer, scriptnavn, specifik fil, hvilken kodelinje, hvilken funktion der er for lang til at udføre.

  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'
Kopier kode

request_slowlog_timeout og slowlog skal sættes samtidig, og du skal tænde slowlog samtidig med, at du tænder for 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)
Kopier kode

Langsomme logstier skal oprettes manuelt


Specifikke trin til at muliggøre php-fpm langsom logning:

  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
Kopier kode






Tidligere:Når jeg poster, når php-fpm-processen straks 99% af CPU'en, fejlanalyse
Næste:Chopstick Brothers' guddommelige komedie "Lille Æble" Hej du, der er en smuk pige
Ansvarsfraskrivelse:
Al software, programmeringsmaterialer eller artikler udgivet af Code Farmer Network er kun til lærings- og forskningsformål; Ovenstående indhold må ikke bruges til kommercielle eller ulovlige formål, ellers skal brugerne bære alle konsekvenser. Oplysningerne på dette site kommer fra internettet, og ophavsretstvister har intet med dette site at gøre. Du skal slette ovenstående indhold fuldstændigt fra din computer inden for 24 timer efter download. Hvis du kan lide programmet, så understøt venligst ægte software, køb registrering og få bedre ægte tjenester. Hvis der er nogen overtrædelse, bedes du kontakte os via e-mail.

Mail To:help@itsvse.com