Heim  >  Artikel  >  System-Tutorial  >  Detaillierte Erläuterung des Linux-Sar-Befehls und Analyse der Systemleistung

Detaillierte Erläuterung des Linux-Sar-Befehls und Analyse der Systemleistung

WBOY
WBOYnach vorne
2024-01-12 12:24:16872Durchsuche

Der Befehl

sar ist sehr leistungsstark und eines der wichtigen Tools zur Analyse der Systemleistung. Mit diesem Befehl können Sie die CPU des Systems, die Ausführungswarteschlange, das Lesen und Schreiben der Festplatte (E/A), die Partition (Auslagerungsbereich) und den Speicher umfassend abrufen , CPU-Interrupt und Netzwerk sowie andere Leistungsdaten.

Das Grundformat des

sar-Befehls ist wie folgt:

[root@localhost ~]# sar [options] [-o filename] interval [count]

In diesem Befehlsformat ist die Bedeutung jedes Parameters wie folgt:

  • -o Dateiname: wobei Dateiname der Dateiname ist, bedeutet diese Option, dass die Befehlsergebnisse im Binärformat in der Datei gespeichert werden
  • Intervall: Gibt das Abtastintervall an, dieser Parameter muss manuell eingestellt werden
  • count: stellt die Anzahl der Abtastvorgänge dar, ist ein optionaler Parameter und sein Standardwert ist 1;
  • Optionen: Da es sich um Befehlszeilenoptionen handelt, werden wir sie hier nicht einzeln vorstellen. Wir listen nur einige häufig verwendete Optionen und entsprechende Funktionen auf, wie in Tabelle 1 gezeigt.

Tabelle 1 SAR-Befehlszeilenoptionen und -funktionensar-BefehlsoptionenFunktionen-AZeigt den Betriebsstatus aller Ressourcengeräte (CPU, Speicher, Festplatte) im System an. -uZeigt den Laststatus aller CPUs im System während der Abtastzeit an. -PZeigt die Auslastung der angegebenen CPU im aktuellen System. -dZeigt den Nutzungsstatus aller Festplattengeräte im System während der Abtastzeit an. -rZeigt die Systemspeichernutzung während der Abtastzeit an. -bZeigt die Puffernutzung während der Abtastzeit. -vZeigen Sie Statistiken zu Inode-Knoten, Dateien und anderen Kernel-Tabellen an. -nNetzwerk-Betriebsstatus anzeigen, dieser Option können DEV (Netzwerkschnittstelleninformationen anzeigen), EDEV (Netzwerkfehlerstatistik anzeigen), SOCK (Socket-Informationen anzeigen) und FULL (entspricht der Verwendung von DEV, EDEV und SOCK) usw. folgen. Weitere Optionen finden Sie, indem Sie den Befehl man sar ausführen. -qZeigen Sie die Anzahl der Prozesse in der laufenden Liste, die Prozessgröße, die durchschnittliche Systemlast usw. an. -RZeigt die Prozessaktivität während der Probenahme. -yZeigen Sie die Aktivität des Endgeräts während der Probenahmezeit an. -wZeigt den Status der System-Swap-Aktivität während der Beispielzeit.
Weitere verfügbare Optionen und Funktionen des Befehls sar können Sie anzeigen, indem Sie den Befehl man sar ausführen.

【Beispiel 1】

Wenn Sie den CPU-Auslastungsstatus des Systems überprüfen möchten, der alle 3 Sekunden und 5 Mal berechnet wird, können Sie den folgenden Befehl ausführen:

[root@localhost ~]# sar -u 3 5
Linux 2.6.32-431.el6.x86_64 (localhost) 10/25/2019 _x86_64_(1 CPU)

06:18:23 AM CPU %user %nice %system %iowait%steal %idle
06:18:26 AM all 12.110.002.773.110.00 82.01
06:18:29 AM all6.550.002.070.000.00 91.38
06:18:32 AM all6.600.002.080.000.00 91.32
06:18:35 AM all 10.210.001.760.000.00 88.03
06:18:38 AM all8.710.001.740.000.00 89.55
Average:all8.830.002.090.630.00 88.46

In dieser Ausgabe haben die einzelnen Listenelemente folgende Bedeutung:

    %user: wird verwendet, um den Anteil der im Benutzermodus verbrauchten CPU-Zeit anzugeben;
  • %nice: Der Anteil der CPU-Zeit, die im Benutzermodus von Prozessen verbraucht wird, deren Prozessplanungsprioritäten durch nice geändert wurden
  • %system: Anteil der im Systemmodus verbrauchten CPU-Zeit;
  • %iowait: Der Anteil der Zeit, die im Leerlauf verbracht wird, weil die CPU auf Festplatten-E/A wartet
  • %Steal: Verwenden Sie Betriebssystemvirtualisierungstechnologien wie Xen, um auf den Zeitanteil anderer virtueller CPU-Berechnungen zu warten
  • %idle: CPU-Leerlaufzeitverhältnis.
  • 【Beispiel 2】
  • Wenn Sie die Lese- und Schreibleistung der Systemfestplatte überprüfen möchten, können Sie den folgenden Befehl ausführen:
  • [root@localhost ~]# sar -d 3 5
    Linux 2.6.32-431.el6.x86_64 (localhost) 10/25/2019 _x86_64_(1 CPU)
    
    06:36:52 AM DEV tpsrd_sec/swr_sec/savgrq-szavgqu-sz await svctm %util
    06:36:55 AMdev8-03.380.00502.26148.440.08 24.114.561.54
    
    06:36:55 AM DEV tpsrd_sec/swr_sec/savgrq-szavgqu-sz await svctm %util
    06:36:58 AMdev8-01.490.00 29.85 20.000.001.750.750.11
    
    06:36:58 AM DEV tpsrd_sec/swr_sec/savgrq-szavgqu-sz await svctm %util
    06:37:01 AMdev8-0 68.266.9653982.61790.933.22 47.233.54 24.17
    
    06:37:01 AM DEV tpsrd_sec/swr_sec/savgrq-szavgqu-sz await svctm %util
    06:37:04 AMdev8-0111.69 3961.29154.84 36.851.059.423.44 38.43
    
    06:37:04 AM DEV tpsrd_sec/swr_sec/savgrq-szavgqu-sz await svctm %util
    06:37:07 AMdev8-01.67136.002.67 83.200.016.206.001.00
    
    Average:DEV tpsrd_sec/swr_sec/savgrq-szavgqu-sz await svctm %util
    Average: dev8-0 34.45781.10 9601.22301.360.78 22.743.50 12.07
In diesem Ausgabeergebnis ist die Bedeutung jeder Spaltenüberschrift wie folgt:


tps: Anzahl der E/As von der physischen Festplatte pro Sekunde. Beachten Sie, dass mehrere logische Anforderungen zu einer E/A-Festplattenanforderung zusammengeführt werden und die Größe einer Übertragung ungewiss ist

rd_sec/s: Anzahl der pro Sekunde gelesenen Sektoren;
  • wr_sec/s: Anzahl der pro Sekunde geschriebenen Sektoren;
  • avgrq-sz: durchschnittliche Datengröße (Sektoren) pro Geräte-E/A-Vorgang
  • avgqu-sz: durchschnittliche Länge der Festplattenanforderungswarteschlange;
  • Warten: Die durchschnittliche Verbrauchszeit jeder Anforderung von der Anforderung des Festplattenvorgangs bis zur Systemabschlussverarbeitung, einschließlich der Wartezeit in der Anforderungswarteschlange, beträgt die Einheit Millisekunden (1 Sekunde = 1000 Millisekunden).
  • svctm: Die durchschnittliche Zeit, die das System für die Verarbeitung jeder Anfrage benötigt, ohne die in der Anfragewarteschlange verbrachte Zeit
  • %util: E/A-Anfragen machen den Prozentsatz der CPU aus. Je größer das Verhältnis, desto gesättigter ist es.
  • Wenn Sie außerdem die Systemspeichernutzung überprüfen möchten, können Sie den Befehl sar -r 5 3 ausführen. Wenn Sie den Netzwerkbetriebsstatus überprüfen möchten, können Sie den Befehl sar -n DEV 5 3 usw. ausführen. Bezüglich der Verwendung anderer Parameter werden hier keine konkreten Beispiele angegeben. Interessierte Leser können es selbst testen und die laufenden Ergebnisse beobachten.

Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung des Linux-Sar-Befehls und Analyse der Systemleistung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:jb51.net. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen