是否有任何工具可以监控应用程序内存并将其视为图形?
例如,在Windows中有一个perfmon。我可以轻松配置我想要监控的流程和分辨率,并随着时间的推移查看图表。
在Mac或Linux中有类似的东西吗?
感谢。
答案 0 :(得分:1)
一种方法是使用gnuplot
和bash
自行编写脚本:
$ cat memory-plot.pg
#!/usr/bin/gnuplot
reset
set terminal dumb 120,40
set xdata time
set timefmt "%Y-%m-%dT%H:%M:%S"
set format x "%H:%M"
set xlabel "time"
set ylabel "RSS, KB"
set title "Process RSS over time."
set grid
set style data linespoints
plot "< tail -n 90 rss.txt" using 1:2 title "RSS"
$ pid=`pgrep Xorg`; clear; while sleep 1; do (printf "%(%Y-%m-%dT%H:%M:%S)T "; ps -ho rss,cmd -p $pid) >> rss.txt; printf "\033[0;0H"; gnuplot memory-plot.pg; done
在终端输出实时图表:
Process RSS over time.
105500 +-+--+-----+----+----+-----+----+----+-----+----+-----+----+----+-----+----+----+-----+----+----+-----+--+-+
+ + + + + + + + + + +
| :A : : : : : : : RSS +--A--+ |
| :| : : : : : : : : |
| :| A : -A A : : : : : : : |
105000 +-+.........|......|..A.|....A|..........................................................................+-+
| :| | :| | || : : : : : : : |
| :| ||| | || : AA : : : : : : |
| :| ||| | || : || : : : : : : |
104500 +-+.........|.....|.|...|....||....A..|..................................................................+-+
| :|| | A: | || : | | : : : : : : |
| :|| | : | | | : | | : : : : : : |
| :|| | : | | | : | A : : : : : : |
| :|| A : | | | : | | : : : : : : |
104000 +-+.........||.AAA.......|..|..|...|...|.................................................................+-+
| :||A : | | |: | | : : : : : : |
| :||| : | AA |: | | : : : : : : |
| | | : |A |: | | : : : : : : |
| | A : || |: | | : : : : : : |
103500 +-+........|.............||....|..|.....|................................................................+-+
| | : || |: A |AAAAAAAAAAAA-AAAAAAAAAAAA-AA-AAAAAAAAAAAAAA-AAAAAAAAAAAAA |
| | : | |: | || : : : : : : |
| | : | |:| A : : : : : : |
| | : A AAA : : : : : : |
103000 +-+........|.............................................................................................+-+
| | : : : : : : : : |
| | : : : : : : : : |
| | : : : : : : : : |
102500 +-+........|.............................................................................................+-+
| | : : : : : : : : |
| | : : : : : : : : |
AAAAAAAA-AAA : : : : : : : : |
+ + + + + + + + + + +
102000 +-+--+-----+----+----+-----+----+----+-----+----+-----+----+----+-----+----+----+-----+----+----+-----+--+-+
11:49 11:49 11:49 11:49 11:49 11:49 11:50 11:50 11:50 11:50 11:50