teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

追記

2016/07/24 14:50

投稿

moonphase
moonphase

スコア6621

answer CHANGED
@@ -4,4 +4,22 @@
4
4
  SWAPが発生している場合はメモリ使用量が原因の可能性が高いです。psコマンドで確認可能。
5
5
  SWAPが発生していない場合は、ディスクIOの可能性が高いです。vmstatでシステムのIOを確認できます。
6
6
  プロセスを特定する方法はiotop, dstat, pidstat等で確認できます。
7
- これらのコマンドがない場合、/prod/<PID>/ioを確認し、rcharの値やwcharの値が多いPIDがそのプロセスです。
7
+ これらのコマンドがない場合、/prod/<PID>/ioを確認し、rcharの値やwcharの値が多いPIDがそのプロセスです。
8
+
9
+ 以下、追記
10
+
11
+ アクセスログの書式に %P を加えるとプロセスIDを記録します。
12
+ PSで見て重そうなapacheのプロセスIDが居た場合、そのプロセスIDの該当するログに記載されているPHPが記録されます。
13
+
14
+ ```
15
+ LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %P" combined
16
+ ```
17
+
18
+ また、/procファイルシステムで、 /proc/<PID>/cwd がカレントワーキングディレクトリへのリンクとなるため、
19
+ 重い httpd プロセスが居た場合、そのプロセスIDを指定して ls /proc/<PID>/cwd してあげると、
20
+ そのCWD配下のファイル一覧が表示されます。
21
+
22
+ ```
23
+ # ls /proc/1234/cwd/
24
+ hoge.php
25
+ ```