GNU/Linux >> LINUX-Kenntnisse >  >> Linux

10 Nützliche Sar (Sysstat)-Beispiele für die UNIX/Linux-Leistungsüberwachung

Mit sar können Sie die Leistung verschiedener Linux-Subsysteme (CPU, Speicher, I/O...) in echt überwachen Zeit.

Mit sar können Sie auch laufend alle Leistungsdaten sammeln, speichern und historische Analysen durchführen, um Engpässe zu identifizieren.

Sar ist Teil des sysstat-Pakets.

Dieser Artikel erläutert die Installation und Konfiguration des sysstat-Pakets (das das Dienstprogramm sar enthält) und die Überwachung der folgenden Linux-Leistungsstatistiken mit sar.

  1. Kollektive CPU-Nutzung
  2. Individuelle CPU-Statistiken
  3. Speicher belegt und verfügbar
  4. Auslagerungsspeicher belegt und verfügbar
  5. Gesamt-E/A-Aktivitäten des Systems
  6. E/A-Aktivitäten einzelner Geräte
  7. Kontextwechselstatistiken
  8. Warteschlange ausführen und Durchschnittsdaten laden
  9. Netzwerkstatistiken
  10. SAR-Daten von einem bestimmten Zeitpunkt melden

Dies ist die einzige Anleitung, die Sie für das Dienstprogramm sar benötigen. Setzen Sie also ein Lesezeichen für Ihre zukünftige Referenz.

Ich. Sysstat installieren und konfigurieren

Sysstat-Paket installieren

Stellen Sie zunächst sicher, dass die neueste Version von sar auf Ihrem System verfügbar ist. Installieren Sie es je nach Distribution mit einer der folgenden Methoden.

sudo apt-get install sysstat
(or)
yum install sysstat
(or)
rpm -ivh sysstat-10.0.0-1.i586.rpm

Sysstat von der Quelle installieren

Laden Sie die neueste Version von der Sysstat-Downloadseite herunter.

Sie können auch wget verwenden, um die Datei

herunterzuladen
wget http://pagesperso-orange.fr/sebastien.godard/sysstat-10.0.0.tar.bz2

tar xvfj sysstat-10.0.0.tar.bz2

cd sysstat-10.0.0

./configure --enable-install-cron

Hinweis: Stellen Sie sicher, dass Sie die Option –enable-install-cron übergeben. Dies erledigt automatisch Folgendes für Sie. Wenn Sie sysstat nicht mit dieser Option konfigurieren, müssen Sie diese hässliche Arbeit selbst manuell erledigen.

  • Erzeugt /etc/rc.d/init.d/sysstat
  • Erzeugt geeignete Links von /etc/rc.d/rc*.d/-Verzeichnissen zu /etc/rc.d/init.d/sysstat, um sysstat automatisch während des Linux-Startvorgangs zu starten.
  • Zum Beispiel wird /etc/rc.d/rc3.d/S01sysstat automatisch mit /etc/rc.d/init.d/sysstat verknüpft

Installieren Sie es nach ./configure wie unten gezeigt.

make

make install

Hinweis: Dadurch werden sar und andere Systat-Dienstprogramme unter /usr/local/bin

installiert

Überprüfen Sie nach der Installation die sar-Version mit „sar -V“. Version 10 ist die aktuelle stabile Version von sysstat.

$ sar -V
sysstat version 10.0.0
(C) Sebastien Godard (sysstat  orange.fr)

Stellen Sie schließlich sicher, dass sar funktioniert. Im Folgenden wird beispielsweise die System-CPU-Statistik dreimal (mit 1-Sekunden-Intervall) angezeigt.

$ sar 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

Utilities-Teil von Sysstat

Im Folgenden sind die anderen sysstat-Dienstprogramme aufgeführt.

  • sar sammelt und zeigt ALLE Systemaktivitätsstatistiken an.
  • sadc steht für „System Activity Data Collector“. Dies ist das sar-Backend-Tool, das die Datenerfassung durchführt.
  • sa1 speichert Systemaktivitäten in einer binären Datendatei. sa1 hängt zu diesem Zweck von sadc ab. sa1 läuft von cron.
  • sa2 erstellt eine tägliche Zusammenfassung der gesammelten Statistiken. sa2 läuft von cron.
  • sadf kann sar-Berichte in CSV, XML und verschiedenen anderen Formaten generieren. Verwenden Sie dies, um sar-Daten mit anderen Tools zu integrieren.
  • iostat generiert CPU- und I/O-Statistiken
  • mpstat zeigt CPU-Statistiken an.
  • pidstat meldet Statistiken basierend auf der Prozess-ID (PID)
  • nfsiostat zeigt NFS-I/O-Statistiken an.
  • Cifsiostat generiert CIFS-Statistiken.

Dieser Artikel konzentriert sich auf die Grundlagen von sysstat und das Dienstprogramm sar.

Erfassen Sie die sar-Statistiken mit Cron-Job – sa1 und sa2

Erstellen Sie eine sysstat-Datei im Verzeichnis /etc/cron.d, die die historischen SAR-Daten sammelt.

# vi /etc/cron.d/sysstat
*/10 * * * * root /usr/local/lib/sa/sa1 1 1
53 23 * * * root /usr/local/lib/sa/sa2 -A

Wenn Sie sysstat von der Quelle installiert haben, ist der Standardspeicherort von sa1 und sa2 /usr/local/lib/sa. Wenn Sie mit Ihrer Distributions-Update-Methode installiert haben (z. B.:yum, up2date oder apt-get), könnten dies /usr/lib/sa/sa1 und /usr/lib/sa/sa2 sein.

Hinweis :Um Cron-Einträge zu verstehen, lesen Sie Linux Crontab:15 Awesome Cron Job Examples.

/usr/local/lib/sa/sa1

  • Diese läuft alle 10 Minuten und sammelt SAR-Daten als historische Referenz.
  • Wenn Sie alle 5 Minuten sar-Statistiken sammeln möchten, ändern Sie */10 in */5 in der obigen Datei /etc/cron.d/sysstat.
  • Dies schreibt die Daten in die Datei /var/log/sa/saXX. XX ist der Tag des Monats. saXX-Datei ist eine Binärdatei. Sie können seinen Inhalt nicht anzeigen, indem Sie ihn in einem Texteditor öffnen.
  • Beispiel:Wenn heute der 26. Tag des Monats ist, schreibt sa1 die sar-Daten nach /var/log/sa/sa26
  • Sie können zwei Parameter an sa1 übergeben:Intervall (in Sekunden) und Anzahl.
  • Im obigen Crontab-Beispiel bedeutet sa1 1 1, dass sa1 sar-Daten 1 Mal mit 1-Sekunden-Intervall (alle 10 Minuten) sammelt.

/usr/local/lib/sa/sa2

  • Dies läuft kurz vor Mitternacht (um 23:53), um den täglichen zusammenfassenden Bericht der SAR-Daten zu erstellen.
  • sa2 erstellt /var/log/sa/sarXX-Datei (Beachten Sie, dass dies anders ist als die saXX-Datei, die von sa1 erstellt wird). Diese von sa2 erstellte sarXX-Datei ist eine ASCII-Datei, die Sie in einem Texteditor anzeigen können.
  • Dadurch werden auch saXX-Dateien entfernt, die älter als eine Woche sind. Schreiben Sie also ein schnelles Shell-Skript, das jede Woche ausgeführt wird, um die /var/log/sa/*-Dateien in ein anderes Verzeichnis zu kopieren, um historische SAR-Daten zu analysieren.

II. 10 praktische Sar-Anwendungsbeispiele

Es gibt zwei Möglichkeiten, sar aufzurufen.

  1. sar gefolgt von einer Option (ohne Angabe einer saXX-Datendatei). Dies sucht nach der saXX-Datendatei des aktuellen Tages und meldet die Leistungsdaten, die bis zu diesem Zeitpunkt für den aktuellen Tag aufgezeichnet wurden.
  2. sar, gefolgt von einer Option, und zusätzlich die Angabe einer saXX-Datendatei mit der Option -f. Dadurch werden die Leistungsdaten für diesen bestimmten Tag gemeldet. d.h. XX ist der Tag des Monats.

In allen folgenden Beispielen erklären wir, wie Sie bestimmte Leistungsdaten für den aktuellen Tag anzeigen können. Um nach einem bestimmten Tag zu suchen, fügen Sie „-f /var/log/sa/saXX“ am Ende des sar-Befehls hinzu.

Alle sar-Befehle haben Folgendes als erste Zeile in ihrer Ausgabe.

$ sar -u
Linux 2.6.18-194.el5PAE (dev-db)        03/26/2011      _i686_  (8 CPU)
  • Linux 2.6.18-194.el5PAE – Linux-Kernel-Version des Systems.
  • (dev-db) – Der Hostname, auf dem die SAR-Daten gesammelt wurden.
  • 26.03.2011 – Das Datum, an dem die SAR-Daten erfasst wurden.
  • _i686_ – Die Systemarchitektur
  • (8 CPU) – Anzahl der auf diesem System verfügbaren CPUs. Bei Mehrkernsystemen gibt dies die Gesamtzahl der Kerne an.

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

Dies ergibt die kumulierte Echtzeit-CPU-Nutzung aller CPUs. „1 3“ meldet alle 1 Sekunde insgesamt 3 Mal. Höchstwahrscheinlich werden Sie sich auf das letzte Feld „%idle“ konzentrieren, um die CPU-Auslastung zu sehen.

$ 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 finden Sie einige Variationen:

  • sar -u Zeigt die CPU-Auslastung für den aktuellen Tag an, die bis zu diesem Zeitpunkt erfasst wurde.
  • sar -u 1 3 Zeigt dreimal alle 1 Sekunde die CPU-Auslastung in Echtzeit an.
  • sar -u ALLE Dasselbe wie „sar -u“, zeigt aber zusätzliche Felder an.
  • sar -u ALLE 1 3 Dasselbe 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-Auslastung einzelner CPUs oder Kerne (sar -P)

Wenn Sie 4 Kerne auf dem Computer haben und sehen möchten, was die einzelnen Kerne tun, gehen Sie wie folgt vor.

„-P ALL“ gibt an, dass Statistiken für ALLE einzelnen Kerne angezeigt werden sollen.

Im folgenden Beispiel geben unter „CPU“ die Spalten 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“ gibt an, dass nur Statistiken für den 2. Kern angezeigt werden sollen. (Beachten Sie, dass die Kernnummer bei 0 beginnt).

$ 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 finden Sie einige Variationen:

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

3. Freier und belegter Speicher (sar -r)

Dies meldet die Speicherstatistik. „1 3“ meldet alle 1 Sekunde insgesamt 3 Mal. Höchstwahrscheinlich konzentrieren Sie sich auf „kbmemfree“ und „kbmemused“ für freien und belegten Speicher.

$ 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 finden Sie einige Variationen:

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

4. Verwendeter Auslagerungsspeicher (sar -S)

Dies meldet die Swap-Statistiken. „1 3“ meldet alle 1 Sekunde insgesamt 3 Mal. Wenn „kbswpused“ und „%swpused“ auf 0 stehen, tauscht Ihr System nicht aus.

$ 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 finden Sie einige Variationen:

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

Hinweise:

  • Verwenden Sie „sar -R“, um die Anzahl der Speicherseiten zu ermitteln, die vom System pro Sekunde freigegeben, verwendet und zwischengespeichert werden.
  • Verwenden Sie „sar -H“, um die verwendeten und verfügbaren Hugepages (in KB) zu identifizieren.
  • Verwenden Sie „sar -B“, um Paging-Statistiken zu erstellen. d.h. Anzahl der KB, die pro Sekunde von der Festplatte ein- (und ausgelagert) werden.
  • Verwenden Sie „sar -W“, um Seitenwechselstatistiken zu erstellen. d.h. Seitenwechsel in (und aus) pro Sekunde.

5. Gesamte E/A-Aktivitäten (sar -b)

Dies meldet E/A-Statistiken. „1 3“ meldet insgesamt 3 Mal alle 1 Sekunde.

Die folgenden Felder werden im Beispiel unten angezeigt.

  • tps – Transaktionen pro Sekunde (dies umfasst sowohl Lesen als auch Schreiben)
  • rtps – Lesen von Transaktionen pro Sekunde
  • wtps – Schreibtransaktionen pro Sekunde
  • Brot/s – Gelesene Bytes pro Sekunde
  • bwrtn/s – Geschriebene Bytes pro Sekunde
$ 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 finden Sie einige Variationen:

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

Hinweis: Verwenden Sie „sar -v“, um die Anzahl der Inode-Handler, Datei-Handler und Pseudo-Terminals anzuzeigen, die vom System verwendet werden.

6. Individuelle Blockgeräte-E/A-Aktivitäten (sar -d)

Verwenden Sie „sar -d“

, um die Aktivitäten der einzelnen Blockgeräte (d. h. eines bestimmten Einhängepunkts, einer LUN oder einer Partition) zu identifizieren
$ 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 gibt „DEV“ das spezifische Blockgerät an.

Beispiel:„dev53-1“ bedeutet ein Blockgerät mit 53 als Major-Nummer und 1 als Minor-Nummer.

Der Gerätename (DEV-Spalte) kann den tatsächlichen Gerätenamen anzeigen (zum Beispiel:sda, sda1, sdb1 usw.), wenn Sie die Option -p (hübsch gedruckt) 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 finden Sie 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 meldet die Gesamtzahl der pro Sekunde erstellten Prozesse und die Gesamtzahl der Kontextwechsel pro Sekunde. „1 3“ meldet insgesamt 3 Mal alle 1 Sekunde.

$ 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 finden Sie einige Variationen:

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

8. Berichtet die Ausführungswarteschlange und den Lastdurchschnitt (sar -q)

Dies meldet die Größe der Ausführungswarteschlange und den Lastdurchschnitt der letzten 1 Minute, 5 Minuten und 15 Minuten. „1 3“ meldet insgesamt 3 Mal alle 1 Sekunde.

$ 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

Hinweis: Die Spalte „Blockiert“ zeigt die Anzahl der Tasks an, die derzeit blockiert sind und auf den Abschluss des E/A-Vorgangs warten.

Im Folgenden finden Sie einige Variationen:

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

9. Netzwerkstatistiken melden (sar -n)

Dies meldet verschiedene Netzwerkstatistiken. Zum Beispiel:Anzahl der über die Netzwerkkarte empfangenen (gesendeten) Pakete, Statistiken über Paketfehler usw. „1 3“ meldet insgesamt 3 Mal alle 1 Sekunde.

sar -n KEYWORD

SCHLÜSSELWORT kann eines der folgenden sein:

  • DEV – Zeigt wichtige Statistiken von Netzwerkgeräten für eth0, eth1 usw. an
  • EDEV – Anzeige von Ausfallstatistiken von Netzwerkgeräten
  • NFS – Zeigt NFS-Client-Aktivitäten an
  • NFSD – Zeigt NFS-Serveraktivitäten an
  • SOCK – Zeigt für IPv4 verwendete Sockets an
  • IP – Zeigt den IPv4-Netzwerkverkehr an
  • EIP – Zeigt IPv4-Netzwerkfehler an
  • ICMP – Zeigt den ICMPv4-Netzwerkverkehr an
  • EICMP – Zeigt ICMPv4-Netzwerkfehler an
  • TCP – Zeigt den TCPv4-Netzwerkverkehr an
  • ETCP – Zeigt TCPv4-Netzwerkfehler an
  • UDP – Zeigt den UDPv4-Netzwerkverkehr an
  • SOCK6, IP6, EIP6, ICMP6, UDP6 sind für IPv6
  • ALLE – Dies zeigt alle oben genannten Informationen an. Die Ausgabe 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. Melden Sie Sar-Daten unter Verwendung der Startzeit (sar -s)

Wenn Sie historische SAR-Daten aus der Datei /var/log/sa/saXX mit der Option „sar -f“ anzeigen, werden alle SAR-Daten für diesen bestimmten Tag ab 00:00 Uhr für diesen Tag angezeigt.

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

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

Um beispielsweise die durchschnittliche Auslastung 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 Head-Befehl wie unten gezeigt verwenden.

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

$ 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

Bei der Überwachung und Optimierung der Linux-Leistung gibt es noch viel mehr zu tun. Wir fangen gerade erst an. Weitere Artikel in der Performance-Reihe folgen.

Frühere Artikel in der Serie zur Überwachung und Optimierung der Linux-Leistung:

  • Einführung in die Linux-Leistungsüberwachung und -optimierung
  • 15 praktische Beispiele für Top-Befehle unter Linux

Linux
  1. 12 nützliche Wget-Befehlsbeispiele unter Linux

  2. 16 nützliche „cp“-Befehlsbeispiele für Linux-Anfänger

  3. ls-Befehl unter Linux:17 nützliche Beispiele erklärt

  4. 10 Nützliche Sar (Sysstat)-Beispiele für die UNIX/Linux-Leistungsüberwachung

  5. Top 25 der besten Linux-Leistungsüberwachungs- und Debugging-Tools

50 einfacher und nützlicher Linux-Cut-Befehl in Unix mit Beispielen

40 Nützliche Beispiele für Linux-PS-Befehle für angehende SysAdmins

Nützliche tcpdump-Linux-Beispiele für den Netzwerkadministrator

10 iozone-Beispiele für die Messung der Festplatten-E/A-Leistung unter Linux

UNIX / Linux:7 praktische Beispiele für PS-Befehle zur Prozessüberwachung

sar-Befehlsbeispiele unter Linux