Bagaimana cara mengukur penggunaan memori proses solaris?

11

Bagaimana cara memeriksa berapa banyak memori yang dikonsumsi oleh proses solaris? Saya ingin ruang alamat total dialokasikan dan jumlah yang ada di RAM.

Saya mencoba menjumlahkan output pmap dengan beberapa script awk, tapi itu adalah hack yang jelek. Apakah ada cara yang lebih baik untuk skrip itu?

Tadeusz A. Kadłubowski
sumber

Jawaban:

18
  1. prstat -s rss

    '-s' mengurutkan keluaran prstat berdasarkan kolom rss (lihat halaman manual untuk kolom lain). Coba juga opsi '-a' untuk akumulasi per pengguna.

  2. ps -eo pid,pmem,vsz,rss,comm | sort -rnk2 | head

    10 konsumen RAM teratas. '-o pmem' menampilkan persentase memori tetap yaitu RAM yang digunakan oleh proses.

  3. ls -lh /proc/{pid}/as

    Cara mudah untuk menunjukkan ruang alamat total (vsz) dari suatu proses. Berguna dalam kombinasi dengan pgrep untuk diakumulasikan oleh pengguna, pola, ... misalnya:

    for pid in `pgrep -U webserver`; do ls -lh /proc/$pid/as; done
    

sumber
3

Nah, setelah saya membaca beberapa halaman manual saya mendapat yang berikut

ps -o vsz -p $PID | tail -1

Ini cukup mudah. Format untuk ukuran penduduk adalah rss.

Tadeusz A. Kadłubowski
sumber
2
prstat

Atau mungkin skrip dtrace?

pyhimys
sumber
Prstat adalah pilihan yang jelas untuk pemantauan interaktif.
Tadeusz A. Kadłubowski
2

Saya menggunakan variasi dari output ini dalam skrip:

# prstat -Z 1 1 | tail -3
ZONEID    NPROC  SWAP   RSS MEMORY      TIME  CPU ZONE                        
220       56 1057M  413M   0.3%   1:26:49 0.1% 820f6ce5-7e37-4455-80ab-b28c5de19b43
Total: 56 processes, 169 lwps, load averages: 0.07, 0.06, 0.06
Artur Pędziwilk
sumber
0

$ 0,02 saya sebagai Manajer Komunitas Zenoss ...

Zenoss dapat memantau kesehatan semua perangkat jaringan dan server Anda, serta proses yang berjalan di server Anda. Salah satu anggota Komunitas kami baru-baru ini mengirimkan Pemantauan Proses untuk Solaris melalui SNMP: http://community.zenoss.org/docs/DOC-5882

mray
sumber