Тази статия е огледална статия за машинен превод, моля, кликнете тук, за да преминете към оригиналната статия.

Изглед: 14157|Отговор: 0

[Уеб] Активирайте бавна конфигурация на логове в nginx php-fpm (за откриване на бавно изпълняващи се PHP скриптове)

[Копирай линк]
Публикувано в 23.10.2014 г. 23:49:24 ч. | | |

Много уебмастъри се сблъскват с 500 502 проблема след преминаване към nginx+php-fpm. Когато nginx получи горния код за грешка, може да се установи, че има някакъв проблем с php-парсирането на php в бекенд, като например грешка при изпълнение или таймаут на изпълнение.

php-fpm.conf има параметър request_slowlog_timeout описан по този начин

  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
Копирай код

Когато request_slowlog_timeout е зададен на конкретна секунда request_slowlog_timeout =5, това означава, че ако скриптът се изпълнява повече от 5 секунди, той ще бъде записан в бавния лог файл


request_slowlog_timeout =0 означава, че бавният лог изход е изключен.

Местоположението на бавния лог файл по подразбиране е в папката log в инсталационната директория на php и можеш да го зададеш, като промениш параметъра slowlog = log/$pool.log.slow.

Пример за бавен лог PHP-FPM – бавният лог записва номера на процеса, името на скрипта, конкретния файл, кой ред код, коя функция е твърде дълга за изпълнение.

  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'
Копирай код

request_slowlog_timeout и slowlog трябва да се настроят едновременно, а slowlog трябва да се включи едновременно с включването на 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)
Копирай код

Бавните лог пътища трябва да се създават ръчно


Конкретни стъпки за активиране на 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
Копирай код






Предишен:При публикуване процесът php-fpm мигновено достига 99% от процесора, анализ на грешки
Следващ:Божествената комедия на братята Chopstick "Малката ябълка" Здравей, има красиво момиче
Отричане:
Целият софтуер, програмни материали или статии, публикувани от Code Farmer Network, са само за учебни и изследователски цели; Горното съдържание не трябва да се използва за търговски или незаконни цели, в противен случай потребителите ще понесат всички последствия. Информацията на този сайт идва от интернет, а споровете за авторски права нямат нищо общо с този сайт. Трябва напълно да изтриете горното съдържание от компютъра си в рамките на 24 часа след изтеглянето. Ако ви харесва програмата, моля, подкрепете оригинален софтуер, купете регистрация и получете по-добри услуги. Ако има нарушение, моля, свържете се с нас по имейл.

Mail To:help@itsvse.com