Saya ingin memantau penggunaan memori dari suatu proses, dan saya ingin data ini dicatat. Apakah alat semacam itu ada?
memory
monitoring
tepang
sumber
sumber
Jawaban:
Saya telah menulis naskah untuk melakukan hal ini . Pada dasarnya sampel
ps
pada interval tertentu, untuk membangun profil dari proses tertentu. Proses dapat diluncurkan oleh alat pemantauan itu sendiri, atau dapat berupa proses independen (ditentukan oleh pid atau pola perintah).sumber
Kadang-kadang ketika kebutuhan muncul, saya hanya melakukan:
Ini bukan solusi yang elegan, tetapi menyelesaikan pekerjaan jika Anda ingin nilai mentah cepat untuk memverifikasi hipotesis Anda.
sumber
grep --line-buffered <process> >>somefile
untuk memaksa grep untuk mengeluarkan setiap baris tanpa bufferingsar
( System Activity Reporter ) dari paket sysstat adalah teman Anda jika seperti ini.Cara lain adalah pemantauan yang dikombinasikan dengan data historis, misalnya Munin, pnp4nagios, rrdtools, ...
sumber
sar
difokuskan hanya pada satu proses? sebagian besar tampaknya memantau sistem secara keseluruhanpidstat
perintah juga dari paket sysstat menyediakan antarmuka yang cukup bagus untuk melaporkan statistik proses tunggal.Selain sar yang disebutkan di atas, saya akan merekomendasikan di atas . Ini menyimpan log biner yang dapat Anda teliti setelahnya, dan selain itu memori menyimpan banyak informasi lainnya.
sumber
Anda dapat mencoba Valgrind .
sumber
Saya menyukai jawaban sederhana Sridhar tetapi saya menggulirkan jawaban saya sendiri sebelum mencoba:
Ini pada dasarnya hanya berguna jika Anda ingin output terstruktur. Ubah 7274 yang sesuai. Juga Python 3.5.sesuatu rusak
_asdict()
, jadi gunakan Python 2.File output terlihat seperti:
sumber