| .TH SCSI_LOGGING_LEVEL "8" "April 2022" "sg3_utils\-1.48" SG3_UTILS |
| .SH NAME |
| scsi_logging_level \- access Linux SCSI logging level information |
| .SH SYNOPSIS |
| .B scsi_logging_level |
| [\fI\-\-all=LEV\fR] [\fI\-\-create\fR] [\fI\-\-error=LEV\fR] [\fI\-\-get\fR] |
| [\fI\-\-help\fR] [\fI\-\-highlevel=LEV\fR] [\fI\-\-hlcomplete=LEV\fR] |
| [\fI\-\-hlqueue=LEV\fR] [\fI\-\-ioctl=LEV\fR] [\fI\-\-llcomplete=LEV\fR] |
| [\fI\-\-llqueue=LEV\fR] [\fI\-\-lowlevel=LEV\fR] [\fI\-\-midlevel=LEV\fR] |
| [\fI\-\-mlcomplete=LEV\fR] [\fI\-\-mlqueue=LEV\fR] [\fI\-\-scan=LEV\fR] |
| [\fI\-\-set\fR] [\fI\-\-timeout=LEV\fR] [\fI\-\-version\fR] |
| .SH DESCRIPTION |
| .\" Add any additional description here |
| .PP |
| This bash shell script accesses the Linux SCSI subsystem logging |
| level. The current values can be shown (e.g. with \fI\-\-get\fR) |
| or changed (e.g. with \fI\-\-set\fR). Superuser permissions will |
| typically be required to set the logging level. |
| .PP |
| One of these options: \fI\-\-create\fR, \fI\-\-get\fR or \fI\-\-set\fR |
| is required. Only one of them can be given. |
| .SH OPTIONS |
| Arguments to long options are mandatory for short options as well. |
| .TP |
| \fB\-a\fR, \fB\-\-all\fR=\fILEV\fR |
| \fILEV\fR is used for all SCSI_LOG fields. |
| .TP |
| \fB\-c\fR, \fB\-\-create\fR |
| Options are parsed and placed in internal fields that are displayed but |
| no logging levels are changed within the Linux kernel. |
| .TP |
| \fB\-E\fR, \fB\-\-error\fR=\fILEV\fR |
| \fILEV\fR is placed in the SCSI_LOG_ERROR field. |
| .TP |
| \fB\-g\fR, \fB\-\-get\fR |
| Fetches the current SCSI logging levels from the Linux kernel and |
| displays them. |
| .TP |
| \fB\-h\fR, \fB\-\-help\fR |
| print out the usage message then exit. |
| .TP |
| \fB\-H\fR, \fB\-\-highlevel\fR=\fILEV\fR |
| \fILEV\fR is placed in the SCSI_LOG_HLQUEUE and SCSI_LOG_HLCOMPLETE fields. |
| .TP |
| \fB\-\-hlcomplete\fR=\fILEV\fR |
| \fILEV\fR is placed in the SCSI_LOG_HLCOMPLETE field. |
| .TP |
| \fB\-\-hlqueue\fR=\fILEV\fR |
| \fILEV\fR is placed in the SCSI_LOG_HLQUEUE field. |
| .TP |
| \fB\-I\fR, \fB\-\-ioctl\fR=\fILEV\fR |
| \fILEV\fR is placed in the SCSI_LOG_IOCTL field. |
| .TP |
| \fB\-\-llcomplete\fR=\fILEV\fR |
| \fILEV\fR is placed in the SCSI_LOG_LLCOMPLETE field. |
| .TP |
| \fB\-\-llqueue\fR=\fILEV\fR |
| \fILEV\fR is placed in the SCSI_LOG_LLQUEUE field. |
| .TP |
| \fB\-L\fR, \fB\-\-lowlevel\fR=\fILEV\fR |
| \fILEV\fR is placed in the SCSI_LOG_LLQUEUE and SCSI_LOG_LLCOMPLETE fields. |
| .TP |
| \fB\-M\fR, \fB\-\-midlevel\fR=\fILEV\fR |
| \fILEV\fR is placed in the SCSI_LOG_MLQUEUE and SCSI_LOG_MLCOMPLETE fields. |
| .TP |
| \fB\-\-mlcomplete\fR=\fILEV\fR |
| \fILEV\fR is placed in the SCSI_LOG_MLCOMPLETE field. |
| .TP |
| \fB\-\-mlqueue\fR=\fILEV\fR |
| \fILEV\fR is placed in the SCSI_LOG_MLQUEUE field. |
| .TP |
| \fB\-S\fR, \fB\-\-scan\fR=\fILEV\fR |
| \fILEV\fR is placed in the SCSI_LOG_SCAN field. |
| .TP |
| \fB\-s\fR, \fB\-\-set\fR |
| Uses the fields specified in this command's options and attempts to |
| apply them to the Linux SCSI subsystem logging levels. Typically superuser |
| permissions will be required to do this. |
| .TP |
| \fB\-T\fR, \fB\-\-timeout\fR=\fILEV\fR |
| \fILEV\fR is placed in the SCSI_LOG_TIMEOUT field. |
| .TP |
| \fB\-v\fR, \fB\-\-version\fR |
| Outputs the version information and then exits. |
| .SH NOTES |
| The \fI\-\-get\fR and \fI\-\-set\fR options access the |
| /proc/sys/dev/scsi/logging_level pseudo file. |
| .SH EXIT STATUS |
| The exit status of this script is 0 when it is successful. Any other |
| exit status indicates that an error has occurred. |
| .SH EXAMPLES |
| The following will set SCSI_LOG_ERROR to level 5 in the Linux kernel. It |
| requires root permissions: |
| .PP |
| scsi_logging_level \-s \-E 5 |
| .PP |
| So as to not interfere with other SCSI subsystem upper level drivers (ULDs) |
| which most likely will be active at the same time, the Linux sg driver uses |
| SCSI_LOG_TIMEOUT for logging purposes. To see full debugging and trace from |
| the sg driver use: |
| .PP |
| scsi_logging_level \-s \-T 7 |
| .PP |
| The output from the sg driver caused by this will go to the system |
| logs (e.g. /var/log/syslog). To reduce the amount of output use a number |
| lower than 7. Using 0 will turn off the tracing and debug. |
| .PP |
| To turn on maximum SCSI subsystem logging use: |
| .PP |
| scsi_logging_level \-s \-a 7 |
| .PP |
| That is probably best done on a system that does not use a SCSI command |
| device to hold the root file system, or the file system that holds the |
| system log. Note that SATA disks and USB attached storage nearly always |
| use the SCSI subsystem. |
| .SH AUTHORS |
| Written by IBM. Small alterations by Douglas Gilbert. |
| .SH "REPORTING BUGS" |
| Report bugs to <dgilbert at interlog dot com>. |
| .SH COPYRIGHT |
| Copyright \(co IBM Corp. 2006 |
| .br |
| This software is distributed under the GPL version 2. There is NO |
| warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. |
| .PP |
| The software was obtained from an IBM package called s390\-tools\-1.6.2 |
| found on that company's "developerworks" site. The most recent version of |
| that package at this time is 1.8.3 . |