ALL SYSTEMS OPERATIONALUPTIME 99.97%FLEET 18/18IN-MUM · US-LAX · EU-FSN EST. 2003 · +91 11 4998 4038

KENNTNISSE · DIENSTLEISTUNGEN UND VPS

Wie man Sar verwendet, um Serverressourcen zu überwachen (linux)

Letzte Aktualisierung 2025-06-16

SAR 10 VERWENDUNGEN


1. CPU-Nutzung ALLER CPUs (sar -u)

This gives the cumulative real-time CPU usage of all CPUs. “1 3″ reports for every 1 second a total of 3 times. Most likely you’ll want to focus on the last field “%idle” to see the cpu load.

$ sar -u 1 3
Linux 2.6.18-194.el5PAE (dev-db)        03/26/2011      _i686_  (8 CPU)

01:27:32 PM       CPU     %user     %nice   %system   %iowait    %steal     %idle
01:27:33 PM       all      0.00      0.00      0.00      0.00      0.00    100.00
01:27:34 PM       all      0.25      0.00      0.25      0.00      0.00     99.50
01:27:35 PM       all      0.75      0.00      0.25      0.00      0.00     99.00
Average:          all      0.33      0.00      0.17      0.00      0.00     99.50


Im Folgenden einige Variationen:

  • sar -u Zeigt die CPU-Auslastung für den aktuellen Tag an, der bis zu diesem Zeitpunkt gesammelt wurde.
  • sar -u 1 3 Zeigt Echtzeit-CPU-Auslastung alle 1 Sekunde für 3 mal.
  • sar -u ALL Gleiches wie “sar -u” zeigt aber zusätzliche Felder an.
  • sar -u ALL 1 3 Gleiches wie “sar -u 1 3″ zeigt aber zusätzliche Felder an.
  • sar -u -f /var/log/sa/sa10 Zeigt die CPU-Auslastung für den 10-Tag des Monats aus der Sa10-Datei an.


2. CPU-Nutzung von Einzel-CPU oder Core (sar -P)

Wenn Sie 4 Kerne auf Ihrem Server haben und sehen möchten, was jeder der einzelnen Kerne tut, führen Sie Folgendes aus.

“-P ALL” zeigt an, dass es Statistiken für ALLE einzelnen Kerne anzeigen sollte.

Im folgenden Beispiel geben die Zahlen unter “CPU” Spalte 0, 1, 2 und 3 die entsprechenden CPU-Kernnummern an.

$ sar -P ALL 1 1
Linux 2.6.18-194.el5PAE (dev-db)        03/26/2011      _i686_  (8 CPU)

01:34:12 PM       CPU     %user     %nice   %system   %iowait    %steal     %idle
01:34:13 PM       all     11.69      0.00      4.71      0.69      0.00     82.90
01:34:13 PM         0     35.00      0.00      6.00      0.00      0.00     59.00
01:34:13 PM         1     22.00      0.00      5.00      0.00      0.00     73.00
01:34:13 PM         2      3.00      0.00      1.00      0.00      0.00     96.00
01:34:13 PM         3      0.00      0.00      0.00      0.00      0.00    100.00


“-P 1″ zeigt an, dass es nur Statistiken für den 2. Kern anzeigen soll. (Beachten Sie, dass die Kernzahlen bei 0 beginnen).


$ sar -P 1 1 1
Linux 2.6.18-194.el5PAE (dev-db)        03/26/2011      _i686_  (8 CPU)

01:36:25 PM       CPU     %user     %nice   %system   %iowait    %steal     %idle
01:36:26 PM         1      8.08      0.00      2.02      1.01      0.00     88.89


Im Folgenden einige Variationen:

  • sar -P ALL Zeigt die CPU-Auslastung an, die nach allen Kernen für den aktuellen Tag aufgeschlüsselt ist.
  • sar -P ALL 1 3 Zeigt die Echtzeit-CPU-Auslastung für ALLE Kerne alle 1 Sekunde für 3 Mal an (aufgeschlüsselt durch alle Kerne).
  • sar -P 1 Zeigt die CPU-Auslastung für Kernnummer 1 für den aktuellen Tag an.
  • sar -P 1 1 3 Zeigt Echtzeit-CPU-Auslastung für Kern Nummer 1, alle 1 Sekunde für 3 mal.
  • sar -P ALL -f /var/log/sa/sa10 Zeigt die CPU-Auslastung nach allen Kernen für den 10-Tage-Tag des Monats aus der Sa10-Datei an.


3. Speicher frei und gebraucht (sar -r)

This reports the memory statistics. “1 3″ reports for every 1 second a total of 3 times. You’ll most likely want to focus on “kbmemfree” and “kbmemused” for free and used memory.

$ sar -r 1 3
Linux 2.6.18-194.el5PAE (dev-db)        03/26/2011      _i686_  (8 CPU)

07:28:06 AM kbmemfree kbmemused  %memused kbbuffers  kbcached  kbcommit   %commit  kbactive   kbinact
07:28:07 AM   6209248   2097432     25.25    189024   1796544    141372      0.85   1921060     88204
07:28:08 AM   6209248   2097432     25.25    189024   1796544    141372      0.85   1921060     88204
07:28:09 AM   6209248   2097432     25.25    189024   1796544    141372      0.85   1921060     88204
Average:      6209248   2097432     25.25    189024   1796544    141372      0.85   1921060     88204


Im Folgenden einige Variationen:

  • sar -r
  • sar -r 1 3
  • sar -r -f /var/log/sa/sa10


4. Swap Space Used (sar -S)

Dies berichtet die Swap-Statistik. “1 3″ berichtet für jede 1 Sekunde insgesamt 3 Mal. Wenn die “kbswpused” und “%swpused” auf 0 sind, dann tauscht Ihr System nicht.

$ sar -S 1 3
Linux 2.6.18-194.el5PAE (dev-db)        03/26/2011      _i686_  (8 CPU)

07:31:06 AM kbswpfree kbswpused  %swpused  kbswpcad   %swpcad
07:31:07 AM   8385920         0      0.00         0      0.00
07:31:08 AM   8385920         0      0.00         0      0.00
07:31:09 AM   8385920         0      0.00         0      0.00
Average:      8385920         0      0.00         0      0.00


Im Folgenden einige Variationen:

  • sar -S
  • sar -S 1 3
  • sar -S -f /var/log/sa/sa10


Anmerkungen:

  • Verwenden Sie “sar -R” um die Anzahl der Speicherseiten zu identifizieren, die vom System pro Sekunde freigegeben, verwendet und zwischengespeichert werden.
  • Verwenden Sie “sar -H” um die verwendeten und verfügbaren Bigpages (in KB) zu identifizieren.
  • Verwenden Sie “sar -B” um Paging-Statistiken zu generieren. d.h. Anzahl der KB, die pro Sekunde in (und aus) von der Festplatte gepaget werden.
  • Verwenden Sie “sar -W” um Seiten-Swap-Statistiken zu generieren. Das heißt Page Swap in (und out) pro Sekunde.


5. Gesamt-I/O-Aktivität (sar -b)

Dies berichtet I / O-Statistiken. “1 3″ berichtet für jede 1 Sekunde insgesamt 3 Mal.

Folgende Felder werden im folgenden Beispiel angezeigt.

  • tps – Transaktionen pro Sekunde (dies beinhaltet sowohl Lesen als auch Schreiben)
  • rtps – Lesen Sie Transaktionen pro Sekunde
  • wtps – Transaktionen pro Sekunde schreiben
  • Brot/s – Bytes pro Sekunde lesen
  • bwrtn/s – pro Sekunde geschriebene Bytes

$ sar -b 1 3
Linux 2.6.18-194.el5PAE (dev-db)        03/26/2011      _i686_  (8 CPU)

01:56:28 PM       tps      rtps      wtps   bread/s   bwrtn/s
01:56:29 PM    346.00    264.00     82.00   2208.00    768.00
01:56:30 PM    100.00     36.00     64.00    304.00    816.00
01:56:31 PM    282.83     32.32    250.51    258.59   2537.37
Average:       242.81    111.04    131.77    925.75   1369.90

 

Im Folgenden einige Variationen:

  • sar -b
  • sar -b 1 3
  • sar -b -f /var/log/sa/sa10

Anmerkung: Verwenden Sie “sar -v” um die Anzahl der Inode-Handler, Dateihandler und Pseudo-Terminals anzuzeigen, die vom System verwendet werden.



6. Einzelblock-E/A-Aktivität (sar-d)

Um die Aktivitäten der einzelnen Blockgeräte (d.h. einen bestimmten Mount Point oder LUN oder Partition) zu identifizieren, verwenden Sie “sar -d”

$ sar -d 1 1
Linux 2.6.18-194.el5PAE (dev-db)        03/26/2011      _i686_  (8 CPU)

01:59:45 PM       DEV       tps  rd_sec/s  wr_sec/s  avgrq-sz  avgqu-sz     await     svctm     %util
01:59:46 PM    dev8-0      1.01      0.00      0.00      0.00      0.00      4.00      1.00      0.10
01:59:46 PM    dev8-1      1.01      0.00      0.00      0.00      0.00      4.00      1.00      0.10
01:59:46 PM dev120-64      3.03     64.65      0.00     21.33      0.03      9.33      5.33      1.62
01:59:46 PM dev120-65      3.03     64.65      0.00     21.33      0.03      9.33      5.33      1.62
01:59:46 PM  dev120-0      8.08      0.00    105.05     13.00      0.00      0.38      0.38      0.30
01:59:46 PM  dev120-1      8.08      0.00    105.05     13.00      0.00      0.38      0.38      0.30
01:59:46 PM dev120-96      1.01      8.08      0.00      8.00      0.01      9.00      9.00      0.91
01:59:46 PM dev120-97      1.01      8.08      0.00      8.00      0.01      9.00      9.00      0.91


Im obigen Beispiel zeigt “ DEV” ein bestimmtes Blockgerät an.


Zum Beispiel: “dev53-1″ bedeutet ein Blockgerät mit 53 als Hauptzahl und 1 als Nebenzahl.

Der Gerätename (DEV-Spalte) kann den tatsächlichen Gerätenamen anzeigen (z. B.: sda, sda1, sdb1 usw.), wenn Sie die Option -p (Pretty Print) wie unten gezeigt verwenden.

$ sar -p -d 1 1
Linux 2.6.18-194.el5PAE (dev-db)        03/26/2011      _i686_  (8 CPU)

01:59:45 PM       DEV       tps  rd_sec/s  wr_sec/s  avgrq-sz  avgqu-sz     await     svctm     %util
01:59:46 PM       sda      1.01      0.00      0.00      0.00      0.00      4.00      1.00      0.10
01:59:46 PM      sda1      1.01      0.00      0.00      0.00      0.00      4.00      1.00      0.10
01:59:46 PM      sdb1      3.03     64.65      0.00     21.33      0.03      9.33      5.33      1.62
01:59:46 PM      sdc1      3.03     64.65      0.00     21.33      0.03      9.33      5.33      1.62
01:59:46 PM      sde1      8.08      0.00    105.05     13.00      0.00      0.38      0.38      0.30
01:59:46 PM      sdf1      8.08      0.00    105.05     13.00      0.00      0.38      0.38      0.30
01:59:46 PM      sda2      1.01      8.08      0.00      8.00      0.01      9.00      9.00      0.91
01:59:46 PM      sdb2      1.01      8.08      0.00      8.00      0.01      9.00      9.00      0.91

 

Im Folgenden sind einige Variationen:

  • sar -d
  • sar -d 1 3
  • sar -d -f /var/log/sa/sa10
  • sar -p -d


7. Kontextwechsel pro Sekunde anzeigen (sar -w)

Dies gibt die Gesamtzahl der pro Sekunde erstellten Prozesse und die Gesamtzahl der Kontextwechsel pro Sekunde an. “1 3″ berichtet für jede 1 Sekunde insgesamt 3 Mal.

$ sar -w 1 3
Linux 2.6.18-194.el5PAE (dev-db)        03/26/2011      _i686_  (8 CPU)

08:32:24 AM    proc/s   cswch/s
08:32:25 AM      3.00     53.00
08:32:26 AM      4.00     61.39
08:32:27 AM      2.00     57.00

 

Im Folgenden einige Variationen:

  • sar -w
  • sar -w 1 3
  • sar -w -f /var/log/sa/sa10


8. Meldung von Durchlaufwarteschlange und Lastdurchschnitten (sar -q)

Dieser gibt die Größe und den Lastdurchschnitt der letzten 1 Minute, 5 Minuten und 15 Minuten an. “1 3″ berichtet für jede 1 Sekunde insgesamt 3 Mal.

$ sar -q 1 3
Linux 2.6.18-194.el5PAE (dev-db)        03/26/2011      _i686_  (8 CPU)

06:28:53 AM   runq-sz  plist-sz   ldavg-1   ldavg-5  ldavg-15   blocked
06:28:54 AM         0       230      2.00      3.00      5.00         0
06:28:55 AM         2       210      2.01      3.15      5.15         0
06:28:56 AM         2       230      2.12      3.12      5.12         0
Average:            3       230      3.12      3.12      5.12         0

Anmerkung: Die Spalte “blocked” zeigt die Anzahl der Aufgaben an, die derzeit blockiert sind und auf den Abschluss der E/A-Operation warten.

Im Folgenden einige Variationen:

  • sar -q
  • sar -q 1 3
  • sar -q -f /var/log/sa/sa10


9. Netzstatistiken melden (sar -n)

Dieser berichtet über verschiedene Netzwerkstatistiken. Zum Beispiel: Anzahl der Pakete, die über die Netzwerkkarte empfangen (übertragen) wurden, Statistiken über Paketfehler usw.,. “1 3″ Berichte für jede 1 Sekunde insgesamt 3 Mal.

sar -n KEYWORD

 

Schlüsselwörter kann eine der folgenden sein:

  • DEV – Zeigt wichtige Statistiken für Netzwerkgeräte für eth0, eth1 usw. an,
  • EDEV – Anzeige von Netzwerkgerätefehlerstatistiken
  • NFS – zeigt NFS-Client-Aktivitäten an
  • NFSD – zeigt NFS-Serveraktivitäten an
  • SOCK – Zeigt Sockets im Einsatz für IPv4 an
  • IP – zeigt IPv4-Netzwerkverkehr an
  • EIP – zeigt IPv4-Netzwerkfehler an
  • ICMP – zeigt ICMPv4-Netzwerkverkehr an
  • EICMP – zeigt ICMPv4-Netzwerkfehler an
  • TCP – zeigt TCPv4-Netzwerkverkehr an
  • ETCP – zeigt TCPv4-Netzwerkfehler an
  • UDP – zeigt UDPv4-Netzwerkverkehr an
  • SOCK6, IP6, EIP6, ICMP6, UDP6 sind für IPv6
  • ALL &ndash Dies zeigt alle der oben genannten Informationen. Die Produktion wird sehr lang sein.
$ sar -n DEV 1 1
Linux 2.6.18-194.el5PAE (dev-db)        03/26/2011      _i686_  (8 CPU)

01:11:13 PM     IFACE   rxpck/s   txpck/s   rxbyt/s   txbyt/s   rxcmp/s   txcmp/s  rxmcst/s
01:11:14 PM        lo      0.00      0.00      0.00      0.00      0.00      0.00      0.00
01:11:14 PM      eth0    342.57    342.57  93923.76 141773.27      0.00      0.00      0.00
01:11:14 PM      eth1      0.00      0.00      0.00      0.00      0.00      0.00      0.00

 

10. Sar-Daten mit Startzeit melden (sar -s)

When you view historical sar data from the /var/log/sa/saXX file using “sar -f” option, it displays all the sar data for that specific day starting from 12:00 a.m. for that day.

Mit “-s hh:mi:ss” Option können Sie die Startzeit angeben. Wenn Sie beispielsweise “sar -s 10:00:00″ angeben, werden die Sar-Daten ab 10 Uhr (anstatt ab Mitternacht) angezeigt, wie unten gezeigt.

Sie können die Option -s mit anderen Sar-Optionen kombinieren.

Um beispielsweise den Lastdurchschnitt am 26. dieses Monats ab 10 Uhr morgens zu melden, kombinieren Sie die Optionen -q und -s, wie unten gezeigt.

$ sar -q -f /var/log/sa/sa23 -s 10:00:01
Linux 2.6.18-194.el5PAE (dev-db)        03/26/2011      _i686_  (8 CPU)

10:00:01 AM   runq-sz  plist-sz   ldavg-1   ldavg-5  ldavg-15   blocked
10:10:01 AM         0       127      2.00      3.00      5.00         0
10:20:01 AM         0       127      2.00      3.00      5.00         0
...
11:20:01 AM         0       127      5.00      3.00      3.00         0
12:00:01 PM         0       127      4.00      2.00      1.00         0


Es gibt keine Möglichkeit, die Endzeit zu begrenzen. Sie müssen nur kreativ werden und den Befehl head verwenden, wie unten gezeigt.


Wenn Sie beispielsweise ab 10 Uhr 7 Einträge sehen möchten, müssen Sie die obige Ausgabe an “head -n 10″ weiterleiten.

$ sar -q -f /var/log/sa/sa23 -s 10:00:01 | head -n 10
Linux 2.6.18-194.el5PAE (dev-db)        03/26/2011      _i686_  (8 CPU)

10:00:01 AM   runq-sz  plist-sz   ldavg-1   ldavg-5  ldavg-15   blocked
10:10:01 AM         0       127      2.00      3.00      5.00         0
10:20:01 AM         0       127      2.00      3.00      5.00         0
10:30:01 AM         0       127      3.00      5.00      2.00         0
10:40:01 AM         0       127      4.00      2.00      1.00         2
10:50:01 AM         0       127      3.00      5.00      5.00         0
11:00:01 AM         0       127      2.00      1.00      6.00         0
11:10:01 AM         0       127      1.00      3.00      7.00         2


Es gibt noch viel mehr zu decken in Linux-Performance-Monitoring und Tuning. Wir fangen gerade erst an. Weitere Artikel kommen in der Performance-Serie.


← Alle Knowledgebase Artikel

Sagen Sie uns, was aufbleiben muss.

A short conversation with an engineer. No quote-bot, no callback queue. We'll tell you honestly if we're not the right fit.