Ok si tu veux effectivement agir en fontion de la moyenne du CPU moyennée sur les dernières 1/5/15 minutes. Si tu as besoin de plus de granularité, tu peux partir su vmstat. Genre sur ma machine, pour faire un check toutes les secondes et ne néclancher l'outil de diagnostic que si le CPU est > 10% du total (à adapter selon la machine, ou regarder les indexes des champs en début de script pour les mapper dynamiquement dans le awk) :
> seuil=10; vmstat 1 | awk '/^[^a-z]*$/ {print 13ドル + 14ドル; fflush ();}' | while read cpu; do case `expr $cpu \< $seuil` in 0) echo "`date` pOwned";; esac; done
Si par contre tu veux faire ça en fonction d'1 nombre restreint de processus, alors tu peux utiliser `top -n 1' et grepper sur les lignes qui t'interressent.
Et attention au machines multicoeurs: avec 4 coeurs, 1 process à fond sur 1 coeur prend 25% de CPU.
[^] # Re: script simple
Posté par defmonkey . En réponse au message Process fautif. Évalué à 1.
Ok si tu veux effectivement agir en fontion de la moyenne du CPU moyennée sur les dernières 1/5/15 minutes. Si tu as besoin de plus de granularité, tu peux partir su vmstat. Genre sur ma machine, pour faire un check toutes les secondes et ne néclancher l'outil de diagnostic que si le CPU est > 10% du total (à adapter selon la machine, ou regarder les indexes des champs en début de script pour les mapper dynamiquement dans le awk) :
> seuil=10; vmstat 1 | awk '/^[^a-z]*$/ {print 13ドル + 14ドル; fflush ();}' | while read cpu; do case `expr $cpu \< $seuil` in 0) echo "`date` pOwned";; esac; done
Si par contre tu veux faire ça en fonction d'1 nombre restreint de processus, alors tu peux utiliser `top -n 1' et grepper sur les lignes qui t'interressent.
Et attention au machines multicoeurs: avec 4 coeurs, 1 process à fond sur 1 coeur prend 25% de CPU.