web-dev-qa-db-fra.com

Comment mesurer l'utilisation de la mémoire de processus Solaris?

Comment vérifier combien de mémoire un processus Solaris consomme? J'aimerais que les deux espaces d'adresse totale alloués et le montant résident en RAM.

J'ai essayé de sommer la sortie PMAP avec un script Awk, mais c'était un hack moche. Y a-t-il un meilleur moyen de le scripter?

11
  1. prstat -s rss

    '-S' trie la sortie de Prapstat de la colonne RSS (voir page homme pour d'autres colonnes). Essayez également l'option "-a" pour une accumulation par utilisateur.

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

    TOP 10 RAM CONSOMMATEURS. '-O PMEM' Affiche le pourcentage de la mémoire réelle I.E. RAM utilisé par processus.

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

    Manière facile d'afficher l'espace d'adressage total (VSZ) d'un processus. Utile en combinaison avec PGREP pour accumuler par l'utilisateur, le modèle, ... E.g.:

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

Eh bien, après avoir lu des pages d'homme, j'ai eu le suivant

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

C'est assez simple. Le format de la taille du résident est RSS.

J'utilise une variation de cette sortie dans les scripts:

# 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
2
Artur Pędziwilk
prstat

Ou peut-être un script dtrace?

2
pyhimys

Mon 0,02 $ en tant que responsable communautaire ZENOSS ...

ZENOSS peut surveiller la santé de tous vos périphériques et serveurs de votre réseau, ainsi que les processus exécutés sur vos serveurs. L'un de nos membres de notre communauté a récemment soumis une surveillance des processus pour Solaris via SNMP: http://community.zenoss.org/docs/doc-5882

0
mray