psrecord - 特定のプロセスをロギング

psrecord - 特定のプロセスをロギング:

特定のプロセスが突然暴走したり、メモリ使用量が変化していたりする際に使うのがpsであったり、topなどになります。しかしこれらはリアルタイムの状態を表示しており、常に関している訳にはいきません。

そこで使ってみたいのがpsrecordです。特定のプロセスのCPU、メモリ変化をログにしてくれます。

psrecordの使い方

psrecordはプロセス番号を指定して実行します。

$ psrecord 55566 --log activity.txt 
Attaching to process 55566 
そうするとログにCPU、メモリ使用量を記録してくれます。測定するインターバルなどはオプションで指定できます。

$ cat activity.txt 
# Elapsed time   CPU (%)     Real (MB)   Virtual (MB) 
       0.000        0.000       25.766     4264.430 
       0.001        0.000       25.766     4264.430 
       0.001        0.000       25.766     4264.430 
       0.001        0.000       25.766     4264.430 
       0.001        0.000       25.766     4264.430 
       0.001        0.000       25.766     4264.430 
       0.001        0.000       25.766     4264.430 
       0.001        0.000       25.766     4264.430 
       0.001        0.000       25.766     4264.430 
ヘルプです。

 
$ psrecord -h 
 
usage: psrecord [-h] [--log LOG] [--plot PLOT] [--duration DURATION] 
 
                [--interval INTERVAL] [--include-children] 
 
                process_id_or_command 
 
 
 
Record CPU and memory usage for a process 
 
 
 
positional arguments: 
 
  process_id_or_command 
 
                        the process id or command 
 
 
 
optional arguments: 
 
  -h, --help            show this help message and exit 
 
  --log LOG             output the statistics to a file 
 
  --plot PLOT           output the statistics to a plot 
 
  --duration DURATION   how long to record for (in seconds) 

コメント

このブログの人気の投稿

投稿時間:2021-06-17 22:08:45 RSSフィード2021-06-17 22:00 分まとめ(2089件)

投稿時間:2021-06-20 02:06:12 RSSフィード2021-06-20 02:00 分まとめ(3871件)

投稿時間:2021-06-17 05:05:34 RSSフィード2021-06-17 05:00 分まとめ(1274件)