From Fedora Project Wiki
(Change announced on 2014-03-12)
(Add tracker bug)
 
(2 intermediate revisions by the same user not shown)
Line 27: Line 27:
 
CLOSED as NEXTRELEASE -> change is completed and verified and will be delivered in next release under development
 
CLOSED as NEXTRELEASE -> change is completed and verified and will be delivered in next release under development
 
-->
 
-->
* Tracker bug: <will be assigned by the Wrangler>
+
* Tracker bug: [https://bugzilla.redhat.com/show_bug.cgi?id=1078781 #1078781]
  
 
== Detailed Description ==
 
== Detailed Description ==
Line 76: Line 76:
 
The default CUPS logging target is now the system journal. To retrieve CUPS logs use "journalctl _COMM=cupsd".
 
The default CUPS logging target is now the system journal. To retrieve CUPS logs use "journalctl _COMM=cupsd".
  
[[Category:ChangeAnnounced]]
+
[[Category:ChangeAcceptedF21]]
 
<!-- When your change proposal page is completed and ready for review and announcement -->
 
<!-- When your change proposal page is completed and ready for review and announcement -->
 
<!-- remove Category:ChangePageIncomplete and change it to Category:ChangeReadyForWrangler -->
 
<!-- remove Category:ChangePageIncomplete and change it to Category:ChangeReadyForWrangler -->

Latest revision as of 10:24, 20 March 2014

CUPS Journal Logging

Summary

By default, CUPS will send log output to the system journal rather than /var/log/cups/error_log.

Owner

  • Name: Tim Waugh
  • Email: twaugh@redhat.com
  • Release notes owner:

Current status

Detailed Description

CUPS has traditionally sent log output to the /var/log/cups/error_log file. In Fedora 20, CUPS was enhanced to be able to send log output to the system journal, including useful information such as the corresponding job ID. I've written more about this elsewhere.

Benefit to Fedora

Some of the benefits of systemd's journald come from it being the central point for logging. In particular, diagnosing print issues becomes easier if the CUPS log messages are interleaved with syslog messages (e.g. from the hp backend in HPLIP).

Having structure to the logs also makes it easier to retrieve log messages that concerned a particular job ("journalctl CUPS_JOB_ID=13").

The proposed change is for the ErrorLog target only. The PageLog and AccessLog defaults will remain as before, files in /var/log/cups.

The default log level will remain unchanged, at "info". This is low traffic, only including verbose output for failed jobs.

Scope

The work involved is a simple one-line change in /etc/cups/cups-files.conf to change the ErrorLog line to read "ErrorLog journal", and potentially a note in /var/log/cups/error_log (in log format) describing a journalctl command to retrieve the CUPS logs.

  • Proposal owners:

The change noted above is all that is required.

Upgrade/compatibility impact

This is a configuration file change, so a modified CUPS installation will stay as it is and not be affected.

This change only affects the default. The configuration can be changed back to use the /var/log/cups/error_log file if this is preferred.

How To Test

During normal operation, printing some files, there should not be a large increase in journal entries.

A failed print job (e.g. filter crashed) should cause filter and backend output to be sent to the journal.

The journalctl command should be able to retrieve job-specific journal entries.

User Experience

Most people will not notice this change.

System administrators will be able to analyse CUPS issues more easily.

Dependencies

N/A (not a System Wide Change)

Contingency Plan

Revert.

Documentation

http://cyberelk.net/tim/2013/10/25/cups-adding-support-for-system-journal/

Release Notes

The default CUPS logging target is now the system journal. To retrieve CUPS logs use "journalctl _COMM=cupsd".