sa1: Unterschied zwischen den Versionen

Aus Mikiwiki
Zur Navigation springen Zur Suche springen
(Die Seite wurde neu angelegt: „Der Shell-Befehl <b>sa1</b> aus dem Systemmonitor-Paket sysstat zeigt Statistiken für Linux-Tasks (Prozesse), u. a. zur I/O-Last, zum Prozessor und zum A...“)
 
Keine Bearbeitungszusammenfassung
 
(4 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
Der [[Shell-Befehl]] <b>sa1</b> aus dem Systemmonitor-Paket [[sysstat]] zeigt Statistiken für Linux-Tasks (Prozesse), u. a. zur I/O-Last, zum Prozessor und zum Arbeitsspeicher. Er eignet sich besonders, um einen Prozess über längere Zeit zu beobachten.  
Der [[Shell-Befehl]] <b>sa1</b> aus dem Systemmonitor-Paket [[sysstat]] sammelt und speichert binäre Daten in der täglichen Systemaktivitätsdatei. Es ist ein Frontend zu [[sadc]] und wurde geschrieben um über [[cron]] ausgeführt zu werden.  


Ab [[Kernel]] 2.6.20 mit einkompilierter Option "CONFIG_TASK_IO_ACCOUNTING" (was ab Ubuntu 8.04 Hardy Heron der Fall ist), kann mit pidstat auch die I/O-Last einzelner Prozesse oder ganzer Gruppen überwacht werden.
== Konfiguration ==


== Optionen ==
Die unter Ubuntu 8.04 Hardy Heron vorliegende Datei "/etc/cron.d/sysstat" hat folgenden Inhalt:


{| class=wiki
# Global variables:
! Option !! Beschreibung
#
|-
  #  our configuration file
| <tt>-d</tt> || Ausgabe der I/O-Last.
  DEFAULT=/etc/default/sysstat
|-
  # default setting, overriden in the above file
| <tt>-r</tt> || Ausgabe der Pagefaults.
  ENABLED=false
|-
  SA1_OPTIONS=""
| <tt>-u</tt> || Ausgabe der Prozessornutzung.
|-
| <tt>-w</tt> || Ausgabe der Task Switching Activity des [[Kernels]].
|}
 
== Verwendung ==
 
Ausgabe der I/O-Last.
 
  $ <b>pidstat -d</b>
  02:17:11          PID  kB_rd/s  kB_wr/s kB_ccwr/s  Command
  02:17:11            1      0.04      0.00      0.00 init
  02:17:11        2902      0.00      2.05      0.00  kjournald
  02:17:11        5850      0.00      0.00      0.00  getty
...
 
Ausageb der I/O-Last auf einem Rechner mit [[Kernel]] ab 2.6.20 mit einkompilierter Option "CONFIG_TASK_IO_ACCOUNTING". "5 3" bewirkt dabei, dass insgesamt drei Durchläufe mit einem Abstand von fünf Sekunden ausgeführt werden. Dabei werden die I/O-Last verursachenden Prozesse sowie die Art (Lesen oder Schreiben) sowie die Datendurchsätze (in KB/s) ausgegeben.
 
$ <b>pidstat -d 5 3</b>
Linux 2.6.24-24-generic (kanzler)      11.07.2009
   
   
  20:50:49          PID  kB_rd/s  kB_wr/s kB_ccwr/s  Command
  # Activity reports every 10 minutes everyday
5-55/10 * * * * root [ -x /usr/lib/sysstat/sa1 ] && \
                        { [ -r "$DEFAULT" ] && \
                        . "$DEFAULT" ; [ "$ENABLED" = "true" ] && \
                        exec /usr/lib/sysstat/sa1 $SA1_OPTIONS 1 1 ; }
   
   
  20:50:54          PID  kB_rd/s  kB_wr/s kB_ccwr/s  Command
  # Additional run at 23:59 to rotate the statistics file
20:50:59         2904      0.00      0.80      0.00  kjournald
  59 23 * * * root [ -x /usr/lib/sysstat/sa1 ] && \
  20:50:59         8022      0.00    12.80      3.20  firefox
                    { [ -r "$DEFAULT" ] && \
                    . "$DEFAULT" ; [ "$ENABLED" = "true" ] && \
20:50:59          PID  kB_rd/s  kB_wr/s kB_ccwr/s  Command
                    exec /usr/lib/sysstat/sa1 $SA1_OPTIONS 60 2 ; }
20:51:04        8022      0.00      8.80      0.00  firefox
Durchschn.:      PID  kB_rd/s  kB_wr/s kB_ccwr/s  Command
Durchschn.:      2904      0.00      0.27      0.00  kjournald
Durchschn.:      8022      0.00      7.19      1.07  firefox
 
Beobachtung der Prozesse, in deren Namen die Zeichenfolge "firefox" vorkommt, "20 2" bewirkt dabei, dass insgesamt zwei Durchläufe mit einem Abstand von 20 Sekunden ausgeführt werden.
 
$ <b>pidstat -u 20 2 -C firefox</b>
20:45:29          PID  %user %system    %CPU  CPU  Command
20:45:49        8022    5.00    0.35    5.35    0  firefox
20:45:49          PID  %user %system    %CPU  CPU  Command
20:46:09        8022    4.30    0.45    4.75    0  firefox
Durchschn.:      PID  %user %system    %CPU  CPU  Command
Durchschn.:      8022    4.65    0.40    5.05    -  firefox
 
 


Im einfachsten Fall reichen aber auch die folgenden beiden Zeilen in der Crontab von Benutzer "root". Die erste Zeile startet dabei den Daemon [[sadc]], der jede Sekunde Daten sammelt und unterhalb des Verzeichnisses "/var/log/sa" ablegt - das Format der Protokolldateien ist dabei "sa<i>XX</i>", wobei <i>XX</i> für das Datum steht. Die zweite Zeile mit "sa2 -A" sorgt für die Rotation der Protokolldateien.


*/10 * * * * root /usr/lib/sysstat/sa1 1 1
53 23 * * * root /usr/lib/sysstat/sa2 -A




{{cat|Shell-Befehl}}
{{cat|Shell-Befehl}}
{{cat|Systemmonitor}}
{{cat|Systemmonitor}}

Aktuelle Version vom 6. August 2011, 17:22 Uhr

Der Shell-Befehl sa1 aus dem Systemmonitor-Paket sysstat sammelt und speichert binäre Daten in der täglichen Systemaktivitätsdatei. Es ist ein Frontend zu sadc und wurde geschrieben um über cron ausgeführt zu werden.

Konfiguration

Die unter Ubuntu 8.04 Hardy Heron vorliegende Datei "/etc/cron.d/sysstat" hat folgenden Inhalt:

# Global variables:
#
#  our configuration file
DEFAULT=/etc/default/sysstat
#  default setting, overriden in the above file
ENABLED=false
SA1_OPTIONS=""

# Activity reports every 10 minutes everyday
5-55/10 * * * * root [ -x /usr/lib/sysstat/sa1 ] && \
                       { [ -r "$DEFAULT" ] && \
                       . "$DEFAULT" ; [ "$ENABLED" = "true" ] && \
                       exec /usr/lib/sysstat/sa1 $SA1_OPTIONS 1 1 ; }

# Additional run at 23:59 to rotate the statistics file
59 23 * * * root [ -x /usr/lib/sysstat/sa1 ] && \
                   { [ -r "$DEFAULT" ] && \
                   . "$DEFAULT" ; [ "$ENABLED" = "true" ] && \
                   exec /usr/lib/sysstat/sa1 $SA1_OPTIONS 60 2 ; }

Im einfachsten Fall reichen aber auch die folgenden beiden Zeilen in der Crontab von Benutzer "root". Die erste Zeile startet dabei den Daemon sadc, der jede Sekunde Daten sammelt und unterhalb des Verzeichnisses "/var/log/sa" ablegt - das Format der Protokolldateien ist dabei "saXX", wobei XX für das Datum steht. Die zweite Zeile mit "sa2 -A" sorgt für die Rotation der Protokolldateien.

*/10 * * * * root /usr/lib/sysstat/sa1 1 1
53 23 * * * root /usr/lib/sysstat/sa2 -A