Redhat Link: How to enable and capture CUPS debugging logs
The procedure below describes how to configure CUPS to produce this information and how to capture it so it can be easily analyzed by the Red Hat support team.
Note: CUPS will generate a prodigious amount of information if left running with debugging enabled. Once the issue has been reproduced and data has been gathered, it may be desirable to undo the changes to /etc/cups/cupsd.conf
and restart the cups service once again. Generally, CUPS debugging mode should be enabled only for a short period , while reproducing the issue; however, if CUPS debugging mode must be enabled for an extended period of time, there are some steps (described below) that can be taken to mitigate the amount of storage required to hold CUPS debugging data.
Configuring CUPS
The first task is to configure the CUPS server to emit full debugging information. To do this, follow the instructions below.
-
As the root user, open
/etc/cups/cupsd.conf
with a text editor.vi /etc/cups/cupsd.conf
-
Look for the following section.
MaxLogSize 2000000000 LogLevel info
-
Edit the
LogLevel
andMaxLogSize
lines to look like the following:MaxLogSize 0 LogLevel debug
The
debug
LogLevel setting is sufficient for most cases and keeps the size of the error log manageable. The Red Hat technical support representative may ask you set this value todebug2
if more detailed logging is required. -
Save the file.
-
Restart the CUPS service with one of the following commands:
-
RHEL 7 and later:
systemctl restart cups.service
-
RHEL 6 and earlier:
service cups restart
-
Capturing the Error Log File and Reproducing the Issue
To capture the logs for the Red Hat support team while replicating the issue perform the following procedure.
-
Clear any jobs that are pending in the affected print queue(s):
cancel -a <queue-name>
Repeat the command above for each print queue that is having issues. You can also clear jobs from all the print queues by running “
cancel -a
” (without the queue name). -
Make sure that the print queue(s) are enabled:
cupsenable <queue-name>
-
Reproduce the printing issue you are experiencing.
-
For RHEL 7 and earlier, upload
/var/log/cups/error_log
to the support case.For RHEL 8 and later, run the following command:
journalctl -o export -u cups.service | gzip -c > $(hostname)-$(date +"%Y%m%d-%H%M%S")-cups-journal-export.gz
and upload the file
<hostname>-<date>-cups-journal-export.gz
to the support case. -
Optionally, generate a new sosreport by running “
sosreport --all-logs
” as root and attaching it to the support case as well. Additional information on running sosreport can be found in the Knowledgebase Solution entitled What is a sosreport and how to create one in Red Hat Enterprise Linux 4.6 and later?.
Capturing the Error Log File For an Extended Period of Time
In some cases where the issue is intermittent and/or cannot be easily reproduced, it may be necessary to leave CUPS in debug log mode for an extended period of time. To prevent the CUPS error_log
from becoming unreasonably large, the following lines can be added to /etc/logrotate.d/cups
:
compress
daily
rotate 14
This will rotate the CUPS logs (access_log
, page_log
, and error_log
) on a daily basis, compress the backups, and keep two weeks of backed-up logs.