ホームページ  >  記事  >  バックエンド開発  >  phpのパフォーマンス分析 php-fpmの遅い実行ログ 遅いログの使用状況の分析

phpのパフォーマンス分析 php-fpmの遅い実行ログ 遅いログの使用状況の分析

coldplay.xixi
coldplay.xixi転載
2020-07-21 17:21:394233ブラウズ

phpのパフォーマンス分析 php-fpmの遅い実行ログ 遅いログの使用状況の分析

この記事の例では、php-fpm の低速実行ログのスローログを php パフォーマンス分析に使用する方法について説明します。

ご存知のとおり、mysql にはスロー クエリ ログがあり、スロー クエリ ログによれば、どの SQL ステートメントにパフォーマンス上の問題があるかがわかります。 mysql の良きパートナーとして、php にもそのような機能があります。 php-fpm を使用して php を管理する場合は、次のオプションを通じて有効にすることができます。

PHP 5.3.3 より前の設定は次のとおりです:

<value name="request_slowlog_timeout">5s</value>
<value name="slowlog">logs/php-fpm-slowlog.log</value>

PHP 5.3.3 以降の設定は次のとおりです:

request_slowlog_timeout = 5s
slowlog = /usr/local/php/log/php-fpm-slowlog.log

手順:

request_slowlog_timeout は、スクリプトがログ ファイルに記録されるまでにかかる時間です。
slowlog は、ログ ファイルのパスです。

## 有効になった後、スクリプトが実行された場合指定された時間を超えると、指定されたログ ファイルに書き込まれます。 次のような情報を入力します。

[19-Dec-2013 16:54:49] [pool www] pid 18575 script_filename = /home/admin/web/htdocs/sandbox_canglong/test /tt.php
[0x0000000003a00dc8]curl_exec() /home/admin/web/htdocs/sandbox_canglong/test/tt.php:2
[0x0000000003a00cd0] exfilter_curl_get() /home/admin/web/htdocs/sandbox_canglong /test/tt.php:6

ログの説明:

script_filenameはエントリファイルです

curl_exec(): このメソッドが実行時間を超えて実行された場合の説明です。
exfilter_curl_get(): 説明curl_exec() を呼び出すメソッドは exfilter_curl_get() です。

各行のコロンの後の数字は行番号です。

これをオンにすると、エラー ログ ファイルにも関連するレコードが記録されます。次のように:

[19-Dec-2013 15:55:37] 警告: [プール www] 子 18575、スクリプト '/home/admin/web/htdocs/sandbox_canglong/test/tt。 php ' (リクエスト: "GET /test/tt.php") の実行が遅すぎます (1.006222 秒)、ログが記録されています[19-Dec-2013 15:55:37] 注意: 子 18575 はトレースのために停止しました
[ 19 -Dec-2013 15:55:37] 通知: 18575
をトレースしようとしています[19-Dec-2013 15:55:37] 通知: 18575

のトレースが完了しました関連する学習の推奨事項:

PHP プログラミングの入門から熟練度まで

以上がphpのパフォーマンス分析 php-fpmの遅い実行ログ 遅いログの使用状況の分析の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はjb51.netで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。