SCSI2Pi bietet zahlreiche Möglichkeiten zum Logging. Für s2p, s2pdump und s2pexec wird der Log-Level mit der Kommandozeilen-Option --log-level oder -L konfiguriert:
>s2p --log-level debug
Bei s2p lässt sich das Logging auch über Properties steuern. Zur Laufzeit lässt sich der Log-Level von s2p mit der SCSI-Control-App oder s2pctl ändern:
>s2pctl -L trace
Die verfügbaren Log-Levels sind trace, debug, info, warning, error, critical und off. Der Standard-Level ist info.
s2p bietet detailliertes Logging, insbesondere auf trace-Level. Die Log-Ausgabe lässt sich auf ein bestimmtes Gerät beschränken:
>s2p -i 0 test.hds -i 0:31 printer -L trace:1:31
In diesem Beispiel wird der Log-Level nur für das Gerät mit SCSI-ID 1 und LUN 31 auf trace gesetzt.
Im Level trace loggt s2p detallierte Informationen über SCSI-Kommandos und deren Parameter. Diese Daten sind bei der Problem-Analyse hilfreich, insbesondere bei Inkompatiblitäten mit Treibern oder Geräten.
[debug] (ID 3) - Controller is executing ModeSelect6, CDB $15:00:00:00:32:00 [debug] (ID:LUN 3:31) - Device is executing ModeSelect6 ($15) [trace] (ID 3) - Data Out phase [trace] (ID 3) - 50 byte(s) of command parameter data: 00000000 65:78:70:6f:72:74:20:50:53:31:3d:27:5c:68:3e:27 'export PS1='\h>'' 00000010 0a:0a:69:66:20:5b:5b:20:24:54:45:52:4d:20:3d:3d '..if [[ $TERM ==' 00000020 20:78:74:65:72:6d:2a:20:5d:5d:0a:74:68:65:6e:0a ' xterm* ]].then.' 00000030 20:20 ' ' [debug] (ID 3) - CHECK CONDITION: ILLEGAL REQUEST (Sense Key $05), INVALID FIELD IN CDB (ASC $24) [trace] (ID 3) - Status phase, status is $02 [trace] (ID 3) - Bus Free phase
SCSI-Fehlercodes werden in einem für Menschen lesbaren Format geloggt.
Im Level trace werden auch Netzwerkpakete aufgezeichnet, die von der DaynaPort-Emulation empfangen oder gesendet werden.
[trace] (ID:LUN 6:0) - Received 90 byte(s) of network data: 00000000 08:00:00:05:f4:80:33:33:00:00:00:01:f8:32:e4:71 '......33.....2.q' 00000010 14:c7:86:dd:60:04:d3:56:00:20:3a:ff:fe:80:00:00 '....`..V. :.....' 00000020 00:00:00:00:42:78:78:be:b7:08:33:be:ff:02:00:00 '....Bxx...3.....' 00000030 00:00:00:00:00:00:00:00:00:00:00:01:88:00:f9:d5 '................' 00000040 20:00:00:00:2a:02:80:71:22:84:53:40:6d:b7:c5:4e ' ...*..q".S@m..N' 00000050 2f:37:44:6a:02:01:f8:32:e4:71 '/7Dj...2.q'