Gestion des informations système, des processus et des performances dans Oracle® Solaris 11.2

Quitter la vue de l'impression

Mis à jour : Septembre 2014
 
 

Surveillance des activités du système (sar)

    Utilisez la commande sar pour effectuer les tâches suivantes :

  • Organiser et visualiser les données sur l'activité du système.

  • Accéder aux données de l'activité système sur demande spéciale.

  • Générer des rapports automatiques pour mesurer et contrôler les performances du système, ainsi que des rapports sur demande spéciale afin d'identifier les problèmes de performance. Pour plus d'informations sur la configuration de la commande sar afin qu'elle s'exécute sur votre système, ainsi qu'une description de ces outils, reportez-vous à la section Collecte automatique des données sur l'activité du système (sar).

Pour une description plus détaillée de cette commande, reportez-vous à la page de manuel sar(1).

Vérification de l'accès aux fichiers (sar –a)

Affichez les statistiques des opérations d'accès aux fichiers à l'aide de la commande sar -a.

$ sar -a

SunOS t2k-brm-24 5.10 Generic_144500-10 sun4v    ...

00:00:00  iget/s namei/s dirbk/s
01:00:00       0       3       0
02:00:00       0       3       0
03:00:00       0       3       0
04:00:00       0       3       0
05:00:00       0       3       0
06:00:00       0       3       0
07:00:00       0       3       0
08:00:00       0       3       0
08:20:01       0       3       0
08:40:00       0       3       0
09:00:00       0       3       0
09:20:01       0      10       0
09:40:01       0       1       0
10:00:02       0       5       0

Average        0       4       0

Les routines suivantes du système d'exploitation font l'objet des rapports de la commande sar -a :

iget/s

Nombre de demandes effectuées pour les inodes qui ne se trouvaient pas dans le cache de recherche de nom de répertoire (DNLC).

namei/s

Nombre de recherches de chemin d'accès au système de fichiers par seconde. Si namei ne trouve pas un nom de répertoire dans le DNLC, il appelle iget afin d'obtenir l'inode d'un fichier ou d'un répertoire. Par conséquent, la plupart des champs igets sont le résultat d'échecs de DNLC.

dirbk/s

Nombre de lectures de bloc de répertoire par seconde.

Plus les valeurs indiquées des routines du système d'exploitation sont élevées, plus le noyau passe de temps à accéder aux fichiers utilisateurs. La durée reflète l'intensité avec laquelle les programmes et applications utilisent les systèmes de fichiers. L'option –a permet de visualiser le degré de dépendance aux disques d'une application.

Vérification de l'activité du tampon (sar –b)

Affichez les statistiques sur l'activité du tampon avec la commande sar -b.

Le tampon sert à mettre en cache les métadonnées. Les métadonnées comprennent les inodes, les blocs de groupes de cylindres et les blocs indirects.

$ sar -b
00:00:00 bread/s lread/s %rcache bwrit/s lwrit/s %wcache pread/s pwrit/s
01:00:00       0       0     100       0       0      55       0       0

Le tableau suivant décrit les activités du tampon affichées par l'option –b.

Nom du champ
Description
bread/s
Nombre moyen de lectures par seconde qui sont soumises au cache du tampon à partir du disque
lread/s
Nombre moyen de lectures logiques par seconde à partir du cache du tampon
%rcache
Fraction des lectures logiques qui se trouvent dans le cache du tampon (100 % moins le rapport bread/s sur lread/s)
bwrit/s
Nombre moyen de blocs physiques (512 octets) qui sont écrits à partir du cache du tampon sur le disque, par seconde
lwrit/s
Nombre moyen d'écritures logiques sur le cache du tampon, par seconde
%wcache
Fraction des écritures logiques qui se trouvent dans le cache du tampon (100 % moins le rapport bwrit/s sur lwrit/s)
pread/s
Nombre moyen de lectures physiques, par seconde, qui utilisent les interfaces de périphérique de caractère
pwrit/s
Nombre moyen de demandes d'écriture physique, par seconde, qui utilisent les interfaces de périphérique de caractère

Les entrées les plus importantes sont les rapports de succès de %rcache et %wcache. Ces entrées mesurent l'efficacité de la mise en mémoire tampon du système. Si %rcache est inférieur à 90 % ou si %wcache est inférieur à 65 %, il est possible d'améliorer les performances en augmentant l'espace du tampon.

Exemple 3-3  Vérification de l'activité du tampon (sar –b)

L'exemple suivant de la sortie de la commande sar -b montre que les tampons %rcache et %wcache ne sont pas à l'origine des ralentissements. Toutes les données se trouvent dans les limites acceptables.

$ sar -b

SunOS t2k-brm-24 5.10 Generic_144500-10 sun4v    ...

00:00:04 bread/s lread/s %rcache bwrit/s lwrit/s %wcache pread/s pwrit/s
01:00:00       0       0     100       0       0      94       0       0
02:00:01       0       0     100       0       0      94       0       0
03:00:00       0       0     100       0       0      92       0       0
04:00:00       0       1     100       0       1      94       0       0
05:00:00       0       0     100       0       0      93       0       0
06:00:00       0       0     100       0       0      93       0       0
07:00:00       0       0     100       0       0      93       0       0
08:00:00       0       0     100       0       0      93       0       0
08:20:00       0       1     100       0       1      94       0       0
08:40:01       0       1     100       0       1      93       0       0
09:00:00       0       1     100       0       1      93       0       0
09:20:00       0       1     100       0       1      93       0       0
09:40:00       0       2     100       0       1      89       0       0
10:00:00       0       9     100       0       5      92       0       0
10:20:00       0       0     100       0       0      68       0       0
10:40:00       0       1      98       0       1      70       0       0
11:00:00       0       1     100       0       1      75       0       0

Average        0       1     100       0       1      91       0       0

Vérification des statistiques d'appel système (sar –c)

Affichez les statistiques d'appel système en utilisant la commande sar -c.

$ sar -c
00:00:00 scall/s sread/s swrit/s  fork/s  exec/s rchar/s wchar/s
01:00:00      38       2       2    0.00    0.00     149     120

La liste suivante décrit les catégories d'appel système signalées par l'option –c. En règle générale, les opérations de lecture et d'écriture représentent environ la moitié du nombre total d'appels système. Cependant, le pourcentage varie fortement en fonction des activités effectuées par le système.

scall/s

Nombre de tous les types d'appels système par seconde, soit généralement environ 30 par seconde sur un système avec quatre à six utilisateurs.

sread/s

Nombre d'appels système read par seconde.

swrit/s

Nombre d'appels système write par seconde.

fork/s

Nombre d'appels système fork par seconde, soit généralement environ 0,5 par seconde sur un système avec quatre à six utilisateurs. Ce nombre augmente si les scripts shell sont en cours d'exécution.

exec/s

Nombre d'appels système exec par seconde. Si exec/s divisé par fork/s est supérieur à 3, recherchez les variables PATH inefficaces.

rchar/s

Nombre de caractères (octets) transférés par les appels système read par seconde.

wchar/s

Nombre de caractères (octets) transférés par les appels système write par seconde.

Exemple 3-4  Vérification des statistiques d'appel système (sar –c)

L'exemple suivant illustre la sortie de la commande sar -c.

$ sar -c

SunOS balmy 5.10 Generic_144500-10 sun4v ...
00:00:04 scall/s sread/s swrit/s  fork/s  exec/s rchar/s wchar/s
01:00:00      89      14       9    0.01    0.00    2906    2394
02:00:01      89      14       9    0.01    0.00    2905    2393
03:00:00      89      14       9    0.01    0.00    2908    2393
04:00:00      90      14       9    0.01    0.00    2912    2393
05:00:00      89      14       9    0.01    0.00    2905    2393
06:00:00      89      14       9    0.01    0.00    2905    2393
07:00:00      89      14       9    0.01    0.00    2905    2393
08:00:00      89      14       9    0.01    0.00    2906    2393
08:20:00      90      14       9    0.01    0.01    2914    2395
08:40:01      90      14       9    0.01    0.00    2914    2396
09:00:00      90      14       9    0.01    0.01    2915    2396
09:20:00      90      14       9    0.01    0.01    2915    2396
09:40:00     880     207     156    0.08    0.08   26671    9290
10:00:00    2020     530     322    0.14    0.13   57675   36393
10:20:00     853     129      75    0.02    0.01   10500    8594
10:40:00    2061     524     450    0.08    0.08  579217  567072
11:00:00    1658     404     350    0.07    0.06 1152916 1144203

Average      302      66      49    0.02    0.01   57842   55544

Vérification de l'activité du disque (sar –d)

Affichez les statistiques sur l'activité du disque avec la commande sar -d.

$ sar -d

00:00:00   device        %busy   avque   r+w/s  blks/s  avwait  avserv

La liste suivante décrit les activités du périphérique de disque qui sont signalées par l'option –d.

device

Nom du périphérique de disque surveillé.

%busy

Durée pendant laquelle le périphérique a été occupé à traiter une demande de transfert.

avque

Nombre moyen de demandes pendant la période où le périphérique était occupé à traiter une demande de transfert.

r+w/s

Nombre de transferts de lecture et d'écriture vers le périphérique, par seconde.

blks/s

Nombre de blocs de 512 octets transférés vers le périphérique, par seconde.

avwait

Durée moyenne (en millisecondes) pendant laquelle les demandes de transfert restent dans la file d'attente. Cette durée est mesurée uniquement lorsque la file d'attente est occupée.

avserv

Durée moyenne (en millisecondes) requise par le périphérique pour terminer une demande de transfert. Pour les disques, cette valeur comprend les temps de recherche, de latence de rotation et de transfert des données.

Exemple 3-5  Vérification de l'activité du disque

Cet exemple abrégé illustre la sortie de la commande sar -d.

$ sar -d

SunOS balmy 5.10 Generic_144500-10 sun4v    ...

12:36:32   device        %busy   avque   r+w/s  blks/s  avwait  avserv

12:40:01   dad1             15     0.7      26     399    18.1    10.0
           dad1,a           15     0.7      26     398    18.1    10.0
           dad1,b            0     0.0       0       1     1.0     3.0
           dad1,c            0     0.0       0       0     0.0     0.0
           dad1,h            0     0.0       0       0     0.0     6.0
           fd0               0     0.0       0       0     0.0     0.0
           nfs1              0     0.0       0       0     0.0     0.0
           nfs2              1     0.0       1      12     0.0    13.2
           nfs3              0     0.0       0       2     0.0     1.9
           nfs4              0     0.0       0       0     0.0     7.0
           nfs5              0     0.0       0       0     0.0    57.1
           nfs6              1     0.0       6     125     4.3     3.2
           nfs7              0     0.0       0       0     0.0     6.0
           sd1               0     0.0       0       0     0.0     5.4
           ohci0,bu          0     0.0       0       0     0.0     0.0
           ohci0,ct          0     0.0       0       0     0.0     0.0
           ohci0,in          0     0.0       7       0     0.0     0.0
           ohci0,is          0     0.0       0       0     0.0     0.0
           ohci0,to          0     0.0       7       0     0.0     0.0

Notez que la longueur des files d'attente et le temps d'attente sont mesurés lorsqu'une demande se trouve dans la file d'attente. Si la valeur %busy est petite, la longueur des files d'attente et des délais de service représente probablement les efforts périodiques du système pour garantir l'écriture rapide des blocs modifiés sur le disque.

Vérification du renvoi de page et de la mémoire (sar –g)

Utilisez la commande sar -g pour afficher les moyennes des activités de libération de mémoire et de renvoi de page.

$ sar -g
00:00:00  pgout/s ppgout/s pgfree/s pgscan/s %ufs_ipf
01:00:00     0.00     0.00     0.00     0.00     0.00

La sortie affichée par la commande sar -g permet de savoir si un ajout de mémoire est nécessaire. Utilisez la commande ps -elf pour afficher le nombre de cycles utilisés par le démon page. Un nombre élevé de cycles, combiné avec des valeurs élevées pour les champs pgfree/s et pgscan/s, indique une insuffisance de mémoire.

La commande sar -g indique également si les inodes sont recyclées trop rapidement et entraînent une perte de pages réutilisables.

La liste suivante décrit la sortie de l'option –g.

pgout/s

Nombre de demandes de renvoi de page par seconde.

ppgout/s

Nombre réel de pages renvoyées, par seconde. Une seule demande de renvoi de page peut impliquer le renvoi de plusieurs pages.

pgfree/s

Nombre de pages placées sur la liste d'espaces libres, par seconde.

pgscan/s

Nombre de pages analysées par le démon page, par seconde. Si cette valeur est élevée, le démon page consacre beaucoup de temps à chercher de la mémoire libre. Cette situation implique la nécessité d'ajouter de la mémoire.

%ufs_ipf

Le pourcentage d'inodes ufs déduit de la liste d'espaces libres par iget associés à des pages réutilisables. Ces pages sont vidées et ne peuvent pas être récupérées par les processus. Par conséquent, ce champ représente le pourcentage de igets avec des pages vides. Une valeur élevée indique que la liste libre d'inodes est liée à une page et que le nombre d'inodes ufs peut avoir besoin d'être augmenté.

Exemple 3-6  Vérification du renvoi de page et de la mémoire (sar -g)

L'exemple suivant illustre la sortie de la commande sar -g.

$ sar -g

SunOS balmy 5.10 Generic_144500-10 sun4v    ...

00:00:00  pgout/s ppgout/s pgfree/s pgscan/s %ufs_ipf
01:00:00     0.00     0.00     0.00     0.00     0.00
02:00:00     0.01     0.01     0.01     0.00     0.00
03:00:00     0.00     0.00     0.00     0.00     0.00
04:00:00     0.00     0.00     0.00     0.00     0.00
05:00:00     0.00     0.00     0.00     0.00     0.00
06:00:00     0.00     0.00     0.00     0.00     0.00
07:00:00     0.00     0.00     0.00     0.00     0.00
08:00:00     0.00     0.00     0.00     0.00     0.00
08:20:01     0.00     0.00     0.00     0.00     0.00
08:40:00     0.00     0.00     0.00     0.00     0.00
09:00:00     0.00     0.00     0.00     0.00     0.00
09:20:01     0.05     0.52     1.62    10.16     0.00
09:40:01     0.03     0.44     1.47     4.77     0.00
10:00:02     0.13     2.00     4.38    12.28     0.00
10:20:03     0.37     4.68    12.26    33.80     0.00

Average      0.02     0.25     0.64     1.97     0.00

Vérification de l'allocation de mémoire du noyau

L'allocation de mémoire du noyau (KMA) permet à un sous-système du noyau d'allouer et de libérer de la mémoire, en fonction des besoins.

    Au lieu d'allouer de manière statique la quantité maximale de mémoire possiblement requise sous la charge de pointe, la KMA divise les demandes de mémoire en trois catégories :

  • Petite taille (moins de 256 octets)

  • Grande taille (512 octets de 4 Ko)

  • Surdimensionnée (supérieure à 4 Ko)

La KMA conserve deux pools de mémoire pour satisfaire les demandes de petite et grande taille. L'allocation de mémoire satisfait les demandes surdimensionnées à partir du programme d'allocation de pages système.

La commande sar -k s'avère utile si vous vérifiez un système qui sert à écrire des pilotes ou des STREAMS qui utilisent les ressources KMA. Tout pilote ou module qui utilise des ressources KMA, mais ne retourne pas spécifiquement les ressources avant d'être arrêté, peut créer une fuite de mémoire. Une fuite de mémoire entraîne l'augmentation de la quantité de mémoire allouée par KMA au fil du temps. Par conséquent, si les champs alloc de la commande sar -k augmentent progressivement au fil du temps, il est possible qu'il y ait une fuite de mémoire. Les échecs de demande indiquent également une fuite de mémoire. Si un problème de ce type se produit, c'est probablement à cause d'une fuite de mémoire que KMA ne peut pas réserver ni allouer la mémoire.

S'il apparaît qu'une fuite de mémoire s'est produite, vous devez vérifier tous les pilotes ou STREAMS susceptibles d'avoir demandé de la mémoire à KMA et qui ne l'ont pas retournée.

Vérification de l'allocation de mémoire du noyau (sar –k)

Utilisez la commande sar -k pour générer des rapports sur les activités du programme d'allocation de mémoire du noyau (KMA).

$ sar -k
00:00:00 sml_mem   alloc  fail  lg_mem   alloc   fail  ovsz_alloc  fail
01:00:00 2523136 1866512     0 18939904 14762364    0      360448     0
02:00:02 2523136 1861724     0 18939904 14778748    0      360448     0

La liste suivante décrit la sortie de l'option –k.

sml_mem

Volume de mémoire (en octets) disponible pour KMA dans le pool des demandes de faibles quantités de mémoire. Dans ce pool, une petite demande est inférieure à 256 octets.

alloc

Volume de mémoire (en octets) que KMA a alloué à des demandes de faibles quantités de mémoire en puisant dans son pool.

fail

Nombre de demandes de faibles quantités de mémoire qui ont échoué.

lg_mem

Volume de mémoire (en octets) disponible pour KMA dans le pool des demandes de grandes quantités de mémoire. Dans ce pool, une grande demande va de 512 octets à 4 Ko.

alloc

Volume de mémoire (en octets) que KMA a alloué à des demandes de grandes quantités de mémoire en puisant dans son pool.

fail

Nombre de demandes de grandes quantités de mémoire qui ont échoué.

ovsz_alloc

Volume de mémoire alloué à des demandes surdimensionnées, c'est-à-dire supérieures à 4 Ko. Ces demandes sont satisfaites par le programme d'allocation de page. Il n'existe donc aucun pool.

fail

Nombre de demandes de quantités surdimensionnées de mémoire qui ont échoué.

Exemple 3-7  Vérification de l'allocation de mémoire du noyau (sar –k)

L'exemple suivant illustre un exemple abrégé de sortie de la commande sar -k.

$ sar -k

SunOS balmy 5.10 Generic_144500-10 sun4v    ...
00:00:04 sml_mem   alloc  fail  lg_mem   alloc  fail  ovsz_alloc  fail
01:00:00 6119744 4852865     0 60243968 54334808   156     9666560     0
02:00:01 6119744 4853057     0 60243968 54336088   156     9666560     0
03:00:00 6119744 4853297     0 60243968 54335760   156     9666560     0
04:00:00 6119744 4857673     0 60252160 54375280   156     9666560     0
05:00:00 6119744 4858097     0 60252160 54376240   156     9666560     0
06:00:00 6119744 4858289     0 60252160 54375608   156     9666560     0
07:00:00 6119744 4858793     0 60252160 54442424   156     9666560     0
08:00:00 6119744 4858985     0 60252160 54474552   156     9666560     0
08:20:00 6119744 4858169     0 60252160 54377400   156     9666560     0
08:40:01 6119744 4857345     0 60252160 54376880   156     9666560     0
09:00:00 6119744 4859433     0 60252160 54539752   156     9666560     0
09:20:00 6119744 4858633     0 60252160 54410920   156     9666560     0
09:40:00 6127936 5262064     0 60530688 55619816   156     9666560     0
10:00:00 6545728 5823137     0 62996480 58391136   156     9666560     0
10:20:00 6545728 5758997     0 62996480 57907400   156     9666560     0
10:40:00 6734144 6035759     0 64389120 59743064   156    10493952     0
11:00:00 6996288 6394872     0 65437696 60935936   156    10493952     0

Average  6258044 5150556     0 61138340 55609004   156     9763900     0

Vérification de la communication interprocessus (sar –m)

Utilisez la commande sar -m pour signaler les activités de communication interprocessus.

$ sar -m
00:00:00   msg/s  sema/s
01:00:00    0.00    0.00

Ces chiffres sont généralement nuls (0,00), sauf si vous exécutez des applications qui utilisent des messages ou des sémaphores.

La sortie de l'option –m est la suivante :

msg/s

Nombre d'opérations de message (envois et réceptions) par seconde

sema/s

Nombre d'opérations de sémaphore par seconde

L'exemple abrégé suivant illustre la sortie de la commande sar -m.

$ sar -m

SunOS balmy 5.10 Generic_144500-10 sun4v    ...

00:00:00   msg/s  sema/s
01:00:00    0.00    0.00
02:00:02    0.00    0.00
03:00:00    0.00    0.00
04:00:00    0.00    0.00
05:00:01    0.00    0.00
06:00:00    0.00    0.00

Average     0.00    0.00

Vérification de l'activité de chargement de page (sar –p)

Utilisez la commande sar -p pour obtenir un rapport sur l'activité de chargement de page, qui inclut les défauts de protection et de traduction.

$ sar -p
00:00:00  atch/s  pgin/s ppgin/s  pflt/s  vflt/s slock/s
01:00:00    0.07    0.00    0.00    0.21    0.39    0.00

La liste suivante décrit les statistiques rapportées à partir de l'option –p.

atch/s

Nombre de défauts de page, par seconde, qui sont résolus en récupérant une page actuellement en mémoire (pages jointes par seconde). Les instances comprennent la réallocation d'une page incorrecte dans la liste des espaces libres et le partage d'une page de texte actuellement utilisée par un autre processus. Par exemple, plusieurs processus qui accèdent au même le texte du programme.

pgin/s

Nombre de fois, par seconde, où les systèmes de fichiers reçoivent des demandes de chargement de page.

ppgin/s

Nombre de pages transférées en mémoire par seconde. Une seule demande de chargement de page, par exemple une demande de verrou logiciel (voir slock/s) ou d'une grande taille de bloc, peut impliquer le chargement de plusieurs pages.

pflt/s

Nombre de défauts de page résultant d'erreurs de protection. Les instances d'erreurs de protection indiquent un accès non autorisé à une page et la copie sur écriture. En règle générale, ce nombre est essentiellement constitué de copies sur écriture.

vflt/s

Nombre de défauts de page liés à la traduction de l'adresse, par seconde. Ces erreurs sont appelées erreurs de validité ; elles se produisent lorsqu'une entrée de table de processus n'existe pas pour une adresse virtuelle donnée.

slock/s

Nombre d'erreurs, par seconde, causées par des demandes de verrou logiciel nécessitant des E/S physiques. Le transfert de données d'un disque vers la mémoire constitue un exemple d'occurrence de demande de verrou logiciel. Le système bloque la page qui doit recevoir les données de sorte qu'elle ne puisse être ni réclamée ni utilisée par un autre processus.

Exemple 3-8  Vérification de l'activité de chargement de page (sar –p)

L'exemple suivant illustre la sortie de la commande sar –p.

$ sar -p

SunOS balmy 5.10 Generic_144500-10 sun4v    ...

00:00:04  atch/s  pgin/s ppgin/s  pflt/s  vflt/s slock/s
01:00:00    0.09    0.00    0.00    0.78    2.02    0.00
02:00:01    0.08    0.00    0.00    0.78    2.02    0.00
03:00:00    0.09    0.00    0.00    0.81    2.07    0.00
04:00:00    0.11    0.01    0.01    0.86    2.18    0.00
05:00:00    0.08    0.00    0.00    0.78    2.02    0.00
06:00:00    0.09    0.00    0.00    0.78    2.02    0.00
07:00:00    0.08    0.00    0.00    0.78    2.02    0.00
08:00:00    0.09    0.00    0.00    0.78    2.02    0.00
08:20:00    0.11    0.00    0.00    0.87    2.24    0.00
08:40:01    0.13    0.00    0.00    0.90    2.29    0.00
09:00:00    0.11    0.00    0.00    0.88    2.24    0.00
09:20:00    0.10    0.00    0.00    0.88    2.24    0.00
09:40:00    2.91    1.80    2.38    4.61   17.62    0.00
10:00:00    2.74    2.03    3.08    8.17   21.76    0.00
10:20:00    0.16    0.04    0.04    1.92    2.96    0.00
10:40:00    2.10    2.50    3.42    6.62   16.51    0.00
11:00:00    3.36    0.87    1.35    3.92   15.12    0.00

Average     0.42    0.22    0.31    1.45    4.00    0.00

Vérification de l'activité de la file d'attente (sar –q)

Utilisez la commande sar –q pour signaler les informations suivantes :

  • Longueur moyenne de la file d'attente lorsqu'elle est occupée.

  • Pourcentage de temps pendant lequel la file d'attente est occupée.

$ sar -q
00:00:00 runq-sz %runocc swpq-sz %swpocc

La sortie de l'option –q est décrite ci-dessous.

runq-sz

Nombre de threads de noyau dans la mémoire qui attendent l'exécution d'une CPU. En règle générale, cette valeur doit être inférieure à 2. Des valeurs toujours plus élevées indiquent que le système est lié à la CPU.

%runocc

Pourcentage de temps pendant lequel les files d'attente de répartition sont occupées.

swpq-sz

Nombre moyen de processus extraits du swap.

%swpocc

Pourcentage de temps pendant lequel les processus sont extraits du swap.

Exemple 3-9  Vérification de l'activité de la file d'attente

L'exemple suivant illustre la sortie de la commande sar -q. Si la valeur %runocc est élevée (supérieure à 90 %) et si la valeur runq-sz est supérieure à 2, la CPU est très chargée et la réponse est altérée. Dans ce cas, une nouvelle capacité de CPU peut être nécessaire pour obtenir une réponse acceptable du système.

# sar -q
SunOS balmy 5.10 Generic_144500-10 sun4v    ...

00:00:00 runq-sz %runocc swpq-sz %swpocc
01:00:00     1.0       7     0.0       0
02:00:00     1.0       7     0.0       0
03:00:00     1.0       7     0.0       0
04:00:00     1.0       7     0.0       0
05:00:00     1.0       6     0.0       0
06:00:00     1.0       7     0.0       0

Average      1.0       7     0.0       0

Vérification de la mémoire non utilisée (sar –r)

Utilisez la commande sar -r pour indiquer le nombre de pages de mémoire et de blocs de disque de fichier swap qui ne sont actuellement pas utilisés.

$ sar -r
00:00:00 freemem freeswap
01:00:00    2135   401922

La sortie de l'option –r est la suivante :

freemem

Nombre moyen de pages de mémoire disponibles pour les processus utilisateur dans les intervalles échantillonnés par la commande. La taille de page dépend de la machine.

freeswap

Nombre de blocs de disque de 512 octets qui sont disponibles pour la permutation de page.

Exemple 3-10  Vérification de la mémoire non utilisée (sar –r)

L'exemple suivant illustre la sortie de la commande sar -r.

$ sar -r

SunOS balmy 5.10 Generic_144500-10 sun4v    ...

00:00:04 freemem freeswap
01:00:00   44717  1715062
02:00:01   44733  1715496
03:00:00   44715  1714746
04:00:00   44751  1715403
05:00:00   44784  1714743
06:00:00   44794  1715186
07:00:00   44793  1715159
08:00:00   44786  1714914
08:20:00   44805  1715576
08:40:01   44797  1715347
09:00:00   44761  1713948
09:20:00   44802  1715478
09:40:00   41770  1682239
10:00:00   35401  1610833
10:20:00   34295  1599141
10:40:00   33943  1598425
11:00:00   30500  1561959

Average    43312  1699242

Vérification de l'utilisation de la CPU (sar –u)

Utilisez la commande sar -u pour afficher les statistiques d'utilisation de CPU.

$ sar -u
00:00:00    %usr    %sys    %wio   %idle
01:00:00       0       0       0     100

La commande sar sans aucune option est équivalente à la commande sar -u. A un moment donné, le processeur est occupé ou inactif. Lorsqu'il est occupé, le processeur est en mode utilisateur ou système. Lorsqu'il est inactif, le processeur attend la fin de l'E/S ou n'a aucune tâche à effectuer.

La sortie de l'option –u est la suivante :

%usr

Pourcentage de temps pendant lequel le processeur est en mode utilisateur.

%sys

Pourcentage de temps pendant lequel le processeur est en mode système.

%wio

Pourcentage de temps pendant lequel le processeur est inactif et en attente de fin d'E/S.

%idle

Pourcentage de temps pendant lequel le processeur est inactif et n'attend pas la fin d'E/S.

Une valeur %wio élevée signifie généralement qu'un ralentissement de disque s'est produit.

Exemple 3-11  Vérification de l'utilisation de la CPU (sar -u)

L'exemple suivant illustre la sortie de la commande sar -u.

$ sar -u

00:00:04    %usr    %sys    %wio   %idle
01:00:00       0       0       0     100
02:00:01       0       0       0     100
03:00:00       0       0       0     100
04:00:00       0       0       0     100
05:00:00       0       0       0     100
06:00:00       0       0       0     100
07:00:00       0       0       0     100
08:00:00       0       0       0     100
08:20:00       0       0       0      99
08:40:01       0       0       0      99
09:00:00       0       0       0      99
09:20:00       0       0       0      99
09:40:00       4       1       0      95
10:00:00       4       2       0      94
10:20:00       1       1       0      98
10:40:00      18       3       0      79
11:00:00      25       3       0      72

Average        2       0       0      98

Vérification du statut des tables système (sar –v)

Utilisez la commande sar -v pour indiquer le statut de la table des processus, d'inodes, de fichiers et d'enregistrements de mémoire partagée.

$ sar -v
00:00:00  proc-sz    ov  inod-sz    ov  file-sz    ov   lock-sz
01:00:00   43/922     0 2984/4236    0  322/322     0    0/0   

La liste suivante décrit la sortie de l'option –v.

proc-sz

Nombre d'entrées de processus (structures proc) en cours d'utilisation ou d'allocation dans le noyau.

inod-sz

Nombre total d'inodes en mémoire par rapport au nombre maximal d'inodes alloués dans le noyau. Ce nombre n'est pas un filigrane élevé strict. Le nombre peut être dépassé.

file-sz

Taille de la table de fichiers système ouverte. sz prend la valeur 0, parce que l'espace est alloué de manière dynamique pour la table de fichiers.

ov

Dépassements qui surviennent entre les points d'échantillonnage de chaque table.

lock-sz

Nombre d'entrées de la table des enregistrements de la mémoire partagée qui sont en cours d'utilisation ou d'allocation dans le noyau. sz prend la valeur 0, parce que l'espace est alloué de manière dynamique pour la table des enregistrements de mémoire partagée.

Exemple 3-12  Vérification du statut des tables système (sar –v)

L'exemple abrégé suivant illustre la sortie de la commande sar -v. Cet exemple montre que toutes les tables sont suffisamment grandes pour éviter les débordements. Ces tables sont allouées de façon dynamique en fonction de la quantité de mémoire physique.

$ sar -v

00:00:04  proc-sz    ov  inod-sz    ov  file-sz    ov   lock-sz
01:00:00   69/8010    0 3476/34703    0    0/0       0    0/0   
02:00:01   69/8010    0 3476/34703    0    0/0       0    0/0   
03:00:00   69/8010    0 3476/34703    0    0/0       0    0/0   
04:00:00   69/8010    0 3494/34703    0    0/0       0    0/0   
05:00:00   69/8010    0 3494/34703    0    0/0       0    0/0   
06:00:00   69/8010    0 3494/34703    0    0/0       0    0/0   
07:00:00   69/8010    0 3494/34703    0    0/0       0    0/0   
08:00:00   69/8010    0 3494/34703    0    0/0       0    0/0   
08:20:00   69/8010    0 3494/34703    0    0/0       0    0/0   
08:40:01   69/8010    0 3494/34703    0    0/0       0    0/0   
09:00:00   69/8010    0 3494/34703    0    0/0       0    0/0   
09:20:00   69/8010    0 3494/34703    0    0/0       0    0/0   
09:40:00   74/8010    0 3494/34703    0    0/0       0    0/0   
10:00:00   75/8010    0 4918/34703    0    0/0       0    0/0   
10:20:00   72/8010    0 4918/34703    0    0/0       0    0/0   
10:40:00   71/8010    0 5018/34703    0    0/0       0    0/0   
11:00:00   77/8010    0 5018/34703    0    0/0       0    0/0  

Vérification de l'activité de swap (sar –w)

Utilisez la commande sar -w pour générer des rapports sur l'activité de permutation et de commutation.

$ sar -w
00:00:00 swpin/s bswin/s swpot/s bswot/s pswch/s
01:00:00    0.00     0.0    0.00     0.0      22

La liste suivante décrit les valeurs cibles et les observations relatives à la sortie de la commande sar –w.

swpin/s

Nombre de transferts LWP vers la mémoire par seconde.

bswin/s

Nombre de blocs transférés pour une introduction dans le swap par seconde. /* (float)PGTOBLK(xx->cvmi.pgswapin) / sec_diff */.

swpot/s

Nombre moyen de processus qui sont extraits du swap par seconde. Si le nombre est supérieur à 1, vous devrez peut-être augmenter la mémoire.

bswot/s

Nombre de blocs transférés pour une extraction du swap par seconde.

pswch/s

Nombre de commutateurs de thread de noyau, par seconde.


Remarque -  Toutes les introductions de processus dans le swap comprennent l'initialisation du processus.
Exemple 3-13  Vérification de l'activité de permutation (sar –w)

L'exemple suivant illustre la sortie de la commande sar -w.

$ sar -w

00:00:04 swpin/s bswin/s swpot/s bswot/s pswch/s
01:00:00    0.00     0.0    0.00     0.0     132
02:00:01    0.00     0.0    0.00     0.0     133
03:00:00    0.00     0.0    0.00     0.0     133
04:00:00    0.00     0.0    0.00     0.0     134
05:00:00    0.00     0.0    0.00     0.0     133
06:00:00    0.00     0.0    0.00     0.0     133
07:00:00    0.00     0.0    0.00     0.0     132
08:00:00    0.00     0.0    0.00     0.0     131
08:20:00    0.00     0.0    0.00     0.0     133
08:40:01    0.00     0.0    0.00     0.0     132
09:00:00    0.00     0.0    0.00     0.0     132
09:20:00    0.00     0.0    0.00     0.0     132
09:40:00    0.00     0.0    0.00     0.0     335
10:00:00    0.00     0.0    0.00     0.0     601
10:20:00    0.00     0.0    0.00     0.0     353
10:40:00    0.00     0.0    0.00     0.0     747
11:00:00    0.00     0.0    0.00     0.0     804

Average     0.00     0.0    0.00     0.0     198

Vérification de l'activité du terminal (sar –y)

Utilisez la commande sar -y pour surveiller les activités des périphériques du terminal.

$ sar -y
00:00:00 rawch/s canch/s outch/s rcvin/s xmtin/s mdmin/s
01:00:00       0       0       0       0       0       0

Si vous disposez d'un grand nombre de terminaux d'E/S, vous pouvez utiliser ce rapport pour déterminer si des lignes sont défectueuses. Les activités enregistrées sont définies dans la liste ci-dessous.

rawch/s

Caractères d'entrée (file d'attente brute) par seconde

canch/s

Caractères d'entrée traités par la règle (file d'attente canonique) par seconde

outch/s

Caractères de sortie (file d'attente de sortie) par seconde

rcvin/s

Interruptions matérielles du récepteur par seconde

xmtin/s

Interruptions matérielles de l'émetteur par seconde

mdmin/s

Interruptions du modem par seconde

Le nombre d'interruptions du modem par seconde (mdmin/s) doit être proche de zéro. Le nombre d'interruptions de réception et de transmission par seconde (xmtin/s et rcvin/s) doit être inférieur ou égal au nombre de caractères entrants ou sortants, respectivement. Si ce n'est pas le cas, recherchez les lignes défectueuses.

Exemple 3-14  Vérification de l'activité du terminal (sar -y)

L'exemple suivant illustre la sortie de la commande sar -y.

$ sar -y

00:00:04 rawch/s canch/s outch/s rcvin/s xmtin/s mdmin/s
01:00:00       0       0       0       0       0       0
02:00:01       0       0       0       0       0       0
03:00:00       0       0       0       0       0       0
04:00:00       0       0       0       0       0       0
05:00:00       0       0       0       0       0       0
06:00:00       0       0       0       0       0       0
07:00:00       0       0       0       0       0       0
08:00:00       0       0       0       0       0       0
08:20:00       0       0       0       0       0       0
08:40:01       0       0       0       0       0       0
09:00:00       0       0       0       0       0       0
09:20:00       0       0       0       0       0       0
09:40:00       0       0       1       0       0       0
10:00:00       0       0      37       0       0       0
10:20:00       0       0       0       0       0       0
10:40:00       0       0       3       0       0       0
11:00:00       0       0       3       0       0       0

Average        0       0       1       0       0       0

Vérification des performances globales du système (sar –A)

Utilisez la commande sar -A pour afficher les statistiques issues de toutes les options afin de fournir une vue des performances globales du système.

Cette commande fournit une perspective plus globale. Si les données de plusieurs segments temporels sont affichées, le rapport comporte des moyennes.