top または ps aux を使用して実行中の PHP スクリプトを確認する方法

top または ps aux を使用して実行中の PHP スクリプトを確認する方法

PHPプロセスを表示するスクリプトを公開するコマンドはありますかtopps aux

答え1

を使用しているためphp-fpm、それが何を実行しているか/完了したかを確認する方法はいくつかしかありません。

php-fpm ステータスページ
php-fpmステータスページをディレクティブで設定する必要がありますpm.status_pathドキュメント

次に、Web サーバーに、php-fpm で使用したパスを渡すように指示する必要がありますpm.status_path。その方法は、Web サーバーに完全に依存します。

それが完了したら、php-fpm ステータス ページにアクセスし、fullクエリ パラメータを使用してすべてのワーカー (としてhttp://servername/status-phpfpm?full設定した場合) を表示します。pm.status_pathstatus-phpfpm

ただし、これによって、実行されたスクリプトの完全な履歴が表示されるわけではなく、各ワーカーが最後に実行したものと現在実行中のものだけが表示されます。

Web サーバー ログ
Web サーバーのアクセス ログを確認します。

実行された内容が表示され、すべての PHP が特定のディレクトリ内にあるか、拡張子で終わっている場合は.php、 を使用して簡単に見つけられるはずですgrep。ただし、ドキュメント ルート、エイリアス、URL 書き換え、その他の Web サーバー構成によっては、特定のスクリプトの完全なファイル システム パスを見つけるために、これらのログから少し解釈する必要があるかもしれません。

この方法では、現在私の知る限り、ほとんどのウェブサーバーはアクセスログにのみ書き込みを行うため、リクエストが完了し、HTTP 応答が送信されました。これにより、サイズとステータス コードをログに記録できます。

答え2

使用できるコマンド:

pstree | grep php
ps aux | grep php

pstree-pstree 情報

追伸-ps情報

「aux」スイッチには次の内容が表示されます。

  • すべてのユーザーのプロセス
  • プロセスをユーザー指向の形式で(ユーザー名別に)表示します
  • ターミナルに接続されているプロセスだけでなく、すべてのプロセスを表示します。これには、crond、upowerd などのサービスなどのプロセスが含まれます。

グレップ--grep 情報

関連情報