ZFS auf Linux/ sar
sar
BearbeitenAllgemeines
Bearbeitensar, der system activity reporter, dient unter Unix der Aufzeichnung und Auswertung diverser Informationen zur Systemaktivität. Er besteht inzwischen aus 3 Programmen:
- sar - Collect, report, or save system activity information.
- sadc - System activity data collector.
- sadf - Display data collected by sar in multiple formats.
Typischerweise zeichnet man die Daten mit sadc auf und wertet den dabei entstandenen File später mit sar (als Liste) oder sadf (als Graphik) aus.
Installation
Bearbeitensar ist ein Teil von [sysstat], einer Sammlung von Monitoring Tools für Linux.
Wenn man die Ergebnisse graphisch darstellen will (als SVG), muss man mindestens die Version 11.2.1.1 installieren: Man lade sich das passende RPM-Paket nach /tmp herunter von http://sebastien.godard.pagesperso-orange.fr/download.html
Wandle dieses mittels "alien" in ein Debian-Paket und installiere es:
user> sudo apt-get install alien
user> sudo alien sysstat-11.3.3-1.x86_64.rpm
user> sudo dpkg -i sysstat_11.3.3-2_amd64.deb
Daten sammeln mit sadc
Bearbeitensadc (system activity data collector) ist der Datensammler für sar und seine Verwandten. Wenn man noch nicht genau weiss, was man untersuchen will, lasse man alles (XALL) aufzeichnen:
user>/usr/lib64/sa/sadc -S XALL 1 60 /tmp/sadc-all
Parameter | Erklärung |
---|---|
-S XALL |
spezifiziert die einzusammelnden Aktivitäten: alle |
1 |
jede Sekunde werden die Daten eingesammelt |
60 |
60 Mal (count) werden Daten eingesammelt |
/tmp/sadc-all |
in diese Datei wird die Sammlung geschrieben |
Alle Daten (XALL) eines Zeitpunktes belegen ca. 21kB auf der Platte.
Wenn man die Daten über einen vorher nicht bekannten Zeitraum aufzeichnen will, setzte man den Counter (60 im obigen Beispiel) sehr hoch an und kille den Befehl, wenn man genug hat:
user>killall sadc
Es gehen dabei keine Werte der Aufzeichnung verloren.
Auflistung der gesammelten Daten mit sar
BearbeitenMit sar kann man aus der aufgezeichneten Datensammlung gezielt die Werte für Subsysteme (im folgenden Beispiel für das Netzwerk) herausholen:
user> sar -f /tmp/sadc-all -n DEV
Linux 3.13.0-80-generic (host) 12.04.2016 _x86_64_ (4 CPU)
16:40:08 IFACE rxpck/s txpck/s rxkB/s txkB/s rxcmp/s txcmp/s rxmcst/s %ifutil
16:40:09 eth0 20.00 0.00 2.09 0.00 0.00 0.00 1.00 0.00
16:40:09 lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
16:40:10 eth0 45.00 1.00 4.05 1.15 0.00 0.00 1.00 0.00
16:40:10 lo 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
16:40:11 eth0 26.00 9.00 2.20 0.84 0.00 0.00 1.00 0.00
Parameter | Erklärung |
---|---|
-f /tmp/sadc-all |
aus dieser Datei werden die Daten gelesen |
-n DEV |
network statistics für alle Devices |
Die Hilfe zeigt in Kurzform an, welche Daten man wie extrahieren kann:
user> sar -h
Die man page ist ausführlicher.
Visualisierung der gesammelten Daten mit sadf
Bearbeitensadf (system activity data formatter) kann die eingesammelten Daten in diversen Formaten ausgeben, um z.B. Datenbanken zu füttern oder Bilder zu erzeugen. Man kann gezielt nur einzelne Daten herausziehen.
Es werden 2 Bilder im SVG-Format erzeugt aus den oben eingesammelten Daten, die alle Daten (-A) bzw. die Auslastung aller CPUs (-P ALL) zeigen:
user> sadf -g /tmp/sadc-all -- -A >/tmp/sar-all.svg
user> sadf -g /tmp/sadc-all -- -P ALL >/tmp/sar-cpus.svg
Parameter | Erklärung |
---|---|
-g /tmp/sar-*.svg |
Aus Daten dieses Files (/tmp/sar-*) wird die Graphik erzeugt. |
-- | danach folgen die sar-Parameter |
-A | sar-Option für all, d.h. alle eingesammelten Werte werden in dem SVG-File visulisiert. |
-P ALL |
Die Auslastung aller CPUs wird in dem SVG-File visulisiert. |
Wenn man nun die URLs file:///tmp/sar-all.svg, file:///tmp/sar-cpus.svg seinem Browser übergibt, kann man in diesem die SVGs betrachten.
Siehe auch
Bearbeiten
ergänzen: sar, Bilder