8.4. Error Report

Der Error Report ist bei AIX und damit auch bei Virtual-I/O-Servern die zentrale Sammelstelle für Fehlermeldungen. Alle Fehler, die das Betriebssystem erkennt, werden über den errdemon geloggt und können vom Administrator jederzeit abgerufen werden. Zur Anzeige von Meldungen des Error Reports dient das Kommando „vios errlog“. Wird nur der Virtual-I/O-Server angegeben, wird eine Zusammenfassung aller Meldungen auf dem betreffenden Virtual-I/O-Server ausgegeben:

$ vios errlog ms13-vio1
IDENTIFIER  TIMESTAMP   TYPE  CLASS  RESOURCE_NAME  DESCRIPTION
4B436A3D    0531052421  T     H      fscsi0         LINK ERROR
DC73C03A    0531051421  T     S      fscsi0         SOFTWARE PROGRAM ERROR
8C577CB6    0521111321  I     S      vnicserver0    VNIC Transport Event
60D73419    0521101121  I     S      vnicserver0    VNIC Client Login
E48A73A4    0521092321  I     H      ent45          BECOME PRIMARY
E15C5EAD    0520131421  T     H      ent37          Physical link up
F596EFAC    0520083421  T     H      ent37          Physical link down
E87EF1BE    0517150021  P     O      dumpcheck      The largest dump device is too small.
8D424E06    0509095621  I     H      ent31          ADAPTER FAILURE
AA8AB241    0507075921  T     O      OPERATOR       OPERATOR NOTIFICATION
F31FFAC3    0321142821  I     H      hdisk3         PATH HAS RECOVERED
DE3B8540    0321142321  P     H      hdisk3         PATH HAS FAILED
D5676F6F    0321142221  T     H      fscsi4         ATTACHED SCSI TARGET DEVICE ERROR
B8C78C08    0319122621  I     H      ent7           SEA HA PARTNER LOST
A6D1BD62    0319122221  I     H      unspecified    Firmware Event
C62E1EB7    0314103021  P     H      hdisk4         DISK OPERATION ERROR
37F3CC40    0219145721  P     U      RMCdaemon      RSCT has detected that system time has m
06DE59EC    1117194020  I     U      vhost0         Logging an informational error for VIO s

$

(Hinweis: In der Ausgabe wurden viele Meldungen weggelassen, um in wenigen Zeilen möglichst viele Arten von Fehlermeldungen exemplarisch zu zeigen.)

Pro Zeile wird eine Fehlermeldung angezeigt, dabei werden die wichtigsten Informationen, wie Zeitstempel (TIMESTAMP), Typ und Klasse ausgegeben. Es wird die betroffene Ressource, sowie ein kurze Beschreibung angezeigt. Die neueste Fehlermeldung ist immer die oberste Fehlermeldung. Die Anzahl der auszugebenden Meldungen lässt sich über die Option ‚-n‘ (number) einschränken:

$ vios errlog -n 5 ms13-vio1
IDENTIFIER  TIMESTAMP   TYPE  CLASS  RESOURCE_NAME  DESCRIPTION
4B436A3D    0531052421  T     H      fscsi0         LINK ERROR
4B436A3D    0531052421  T     H      fscsi0         LINK ERROR
4B436A3D    0531052421  T     H      fscsi0         LINK ERROR
4B436A3D    0531052421  T     H      fscsi0         LINK ERROR
4B436A3D    0531052421  T     H      fscsi0         LINK ERROR
$

Details lassen sich mit der Option ‚-a‘ (all informations) anzeigen, dabei schränkt man am Besten die Anzahl der gezeigten Meldungen gleichzeitig mit der Option ‚-n‘ ein. Ansonsten kann die Ausgabe sehr lang werden:

$ vios errlog -n 1 -a ms13-vio1
---------------------------------------------------------------------------
LABEL:           FCP_ERR4
IDENTIFIER:     4B436A3D
 
Date/Time:       Mon May 31 05:24:00 2021
Sequence Number: 7342
Machine Id:      00CA09503A00
Node Id:         ms13-vio1
Class:           H
Type:            TEMP
WPAR:            Global
Resource Name:   fscsi0
Resource Class:  driver
Resource Type:   emfscsi
Location:        U78D3.001.VYR0AL4-P1-C2-T1
 
 
Description
LINK ERROR
 
            Recommended Actions
            PERFORM PROBLEM DETERMINATION PROCEDURES
 
Detail Data
SENSE DATA
0000 0020 0000 0327 0000 0000 0203 0101 1000 0010 9BB9 32E1 0000 0000 008C 8240

0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000
$
 
Jede Meldung hat eine eindeutige Sequence-Nummer, die bei den detaillierten Informationen ausgegeben wird, im Beispiel die 7342. Diese Sequence-Nummer kann als zusätzliches Argument bei „vios errlog“ angegeben werden, um genau eine Meldung herauszufiltern. Das ist leider nicht sehr praktisch, da in der Zusammenfassung die Sequence-Nummer nicht mit ausgegeben wird. (Das liegt am unterliegenden Kommando auf dem Virtual-I/O-Server.)
Möchte man gezielt Meldungen auswählen, empfiehlt sich der Selection-Mechanismus des LPAR-Tools mit der Option ‚-s‘. Hier kann nach beliebigen Kriterien ausgewählt werden, was letztlich angezeigt werden soll. Z.B. lassen sich damit relativ leicht alle Meldungen zu einer bestimmten Ressource auflisten, hier Meldungen zur hdisk3:
$ vios errlog -s resource_name=hdisk3 ms13-vio1
IDENTIFIER  TIMESTAMP   TYPE  CLASS  RESOURCE_NAME  DESCRIPTION
F31FFAC3    0321142821  I     H      hdisk3         PATH HAS RECOVERED
DE3B8540    0321142321  P     H      hdisk3         PATH HAS FAILED
F31FFAC3    0321142221  I     H      hdisk3         PATH HAS RECOVERED
DE3B8540    0321141621  P     H      hdisk3         PATH HAS FAILED
F31FFAC3    0321123121  I     H      hdisk3         PATH HAS RECOVERED
DE3B8540    0321122521  P     H      hdisk3         PATH HAS FAILED
F31FFAC3    0321122421  I     H      hdisk3         PATH HAS RECOVERED
DE3B8540    0321121521  P     H      hdisk3         PATH HAS FAILED
F31FFAC3    0321110221  I     H      hdisk3         PATH HAS RECOVERED
DE3B8540    0321104921  P     H      hdisk3         PATH HAS FAILED
F31FFAC3    0321092721  I     H      hdisk3         PATH HAS RECOVERED
DE3B8540    0321091321  P     H      hdisk3         PATH HAS FAILED
$

Als zirkulärer Log kann der Error Report nicht beliebig groß werden. Nach einiger Zeit werden alte Einträge automatisch überschrieben.

Jeder Administrator einer PowerVM-Umgebung sollte die Error Reports aller Virtual-I/O-Server immer im Blick haben.