W systemie AIX, gdy wystąpi błąd, informacja o nim jest rejestrowana w dzienniku błędów.
Przeglądając błędy, które pojawiły się w systemie (errpt), możemy odczytać podstawowe informacje o tym, kiedy wystąpił błąd i czego dotyczył.
Przykładowo, analizując błąd:
aix73lab:/# errpt -a
--------------------------------------------------------------------------
LABEL: SC_DISK_ERR10
Date/Time: Tue Feb 4 19:00:05 CEST 2024
Type: PERM
Resource Name: hdisk1
Description
REQUESTED OPERATION CANNOT BE PERFORMED
Detail Data
PATH ID
0
SENSE DATA
0600 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0118 0005 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 1283 0000
z041A 003D 001A FFFF FFFF 0100 0000 0118 0000 0005 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000
0000 0000 0000 0000 0000 0000 0000
---------------------------------------------------------------------------
Widzimy, kiedy wystąpił, że był związany z hdisk1, a problem, który się pojawił, to „REQUESTED OPERATION CANNOT BE PERFORMED.”
Ale co się stało, że operacja nie mogła zostać wykonana?
Można to ustalić, analizując pole Sense Data. Pole to zawiera szczegółowe informacje, które pomagają określić przyczynę błędu i czego on dotyczy.
W przypadku powyższego błędu dodatkowe informacje to:
Feb 04 19:00:05 hdisk1 P SC_DISK_ERR10 path 0 TEST UNIT READY RESERVATION CONFLICT (0 Sec rtry 01)
Jak widać, odpowiedź jest prosta i jasna – wystąpił konflikt rezerwacji (SCSI).
Pole Sense Data składa się z danych w formacie szesnastkowym, co utrudnia jego szybką interpretację.
Oczywiście można je przeanalizować ręcznie, na przykład za pomocą SCSI Sense Data, ale to wymaga czasu, a podczas awarii czasu zawsze brakuje.
Na szczęście dostępne jest narzędzie diagnostyczne – SUMM – umożliwiające konwersję Sense Data do formatu „czytelnego dla człowieka”. Nie jest ono domyślnie dostępne w systemie, ale warto je zainstalować, gdyż pomaga w diagnostyce, zajmuje niewiele miejsca i nie ma żadnych zależności.
Narzędzie można pobrać ze strony internetowej:
https://www.ibm.com/support/pages/ibm-aix-diagnostic-tool-summ-summarized-system-error-log-and-report-generator-io-devices
Jest bardzo łatwe w użyciu i pozwala na szybkie uzyskanie dodatkowych informacji o problemie.
errpt -a | summ
or
summ error_log.txt
Korzystając z powyższego narzędzia można zamienić to:
aix73lab:/# errpt
IDENTIFIER TIMESTAMP T C RESOURCE_NAME DESCRIPTION
F31FFAC3 0205012525 I H hdisk0 PATH HAS RECOVERED
F31FFAC3 0205012525 I H hdisk1 PATH HAS RECOVERED
6382B81C 0205012525 T S vscsi1 Temporary VSCSI software error
DE3B8540 0205012425 P H hdisk0 PATH HAS FAILED
DE3B8540 0205012425 P H hdisk1 PATH HAS FAILED
DE3B8540 0205012325 P H hdisk0 PATH HAS FAILED
DE3B8540 0205012325 P H hdisk1 PATH HAS FAILED
81453EE1 0205012225 T S vscsi1 Underlying transport error
w to:
aix73lab:/# errpt -a | ./summ
Feb 5 01:25:47 hdisk0 I SC_DISK_PCM_ERR9 path 1 path recovered
Feb 5 01:25:01 hdisk1 I SC_DISK_PCM_ERR9 path 1 path recovered
Feb 5 01:25:00 vscsi1 T VIOS_VSCSI_ERR1 Temporary VSCSI software error
Feb 5 01:24:47 hdisk0 P SC_DISK_ERR7 path 1 path failure; TEST UNIT READY transport fault
Feb 5 01:24:01 hdisk1 P SC_DISK_ERR7 path 1 path failure; TEST UNIT READY transport fault
Feb 5 01:23:48 hdisk0 P SC_DISK_ERR7 path 1 path failure; WRITE(10) (3E7D4160,0008) transport fault (15.9 Sec rtry 01)
Feb 5 01:23:32 hdisk1 P SC_DISK_ERR7 path 1 path failure; WRITE(10) (24114778,0008) transport fault (15.9 Sec rtry 01)
Feb 5 01:22:55 vscsi1 T VIOS_VSCSI_ERR2 Underlying transport error
Kilka innych przykładów zdekodowanych danych:
Feb 1 17:58:00 rmt12 P TAPE_ERR1 WRITE(6) (040000) CHECK MEDIUM ERROR; WRITE ERROR
Feb 1 15:54:27 rmt15 P TAPE_ERR1 REWIND (00000000) CHECK MEDIUM ERROR; MEDIA LOAD OR EJECT FAILED
Feb 1 12:45:41 hdisk311 T SC_DISK_ERR4 path 0 READ(10) (102C4200,0300) transport fault
Feb 25 12:45:40 fscsi8 T FCP_ERR4 Error detected receiving from port 0x04BC30 (possible marginal link)
Feb 1 22:31:41 hdisk6 P SC_DISK_ERR7 path 3 path failure; WRITE(10) (037E6C58,0008) no response from device
Feb 1 22:31:27 fscsi2 T FCP_ERR14 Nameserver GID_PN reject for 5....F; Port Name not registered
PODSUMOWANIE
Interpretacja danych Sense z AIX errpt może dostarczyć wielu przydatnych informacji o problemie. Na ich podstawie łatwiej jest zrozumieć, co się stało. Użycie SUMM upraszcza proces, konwertując te dane do formatu czytelnego dla człowieka, dzięki czemu diagnoza jest szybsza i łatwiejsza.