Knowledgebase: PaperCut > Errors
Printer Error Notifications Support
Last modified on 05 December 2017 11:08 AM

PaperCut tracks the error status of a printer. This printer error state is used by PaperCut for various features such as:

  • Error notification emails to administrators.
  • Decide which destination printer to use for a virtual printer in a load-balancing setup.
  • Informing users if they try and release a job to a printer in error during secure print release.
  • Real-time status reporting on the PaperCut dashboard.

Under Windows, there is good support for printer errors due to the appropriate Microsoft APIs as described here: and the driver support which pro-actively monitors the printer.

For Linux, Mac and Novell/Iprint, we use a program called pc-event-monitor which creates processes for monitoring the printer state using the data retrieved from the printers using SNMP (this was added in PaperCut 12.3).

As of version 17.4.2 of PaperCut MF and PaperCut NG, the Print Provider on Windows print servers can be reconfigured to also use SNMP to check for printer error states, instead of solely relying on updates from the Windows print queue. In some circumstances, this may result in error states being reported more quickly and responsively. For example, you may notice a delay between an error first occurring at a printer and it’s subsequent reporting via the Windows print queue when using the PaperCut TCP/IP Port, instead of the Windows Standard TCP/IP Port with SNMP enabled (this is a requirement for our Hardware Checks feature). To try it out, the ErrorPollMethod=snmp option can be enabled, as found in the [app-path]\providers\print\win\print-provider.conf configuration file on your Windows print server.

What do these pc-event-monitor processes do?

The pc-event-monitor creates a number of different processes on Linux, macOS, and iPrint. The purpose of these processes includes:

  1. For CUPS (Linux/macOS), they look for new print jobs and make “pre-notification” calls in order to advise the pc-client that a new job has been detected before print job analysis has been completed (i.e. before the print job has finished spooling)
  2. For CUPS (Linux/macOS), they monitor the /etc/cups/printers.conf file for changes when printers are added or removed
  3. For iPrint, they monitor the iprint/padbtxt.xml file for changes when printers are added/removed
  4. Determining if a held job has been released yet
  5. Monitoring of the SNMP error data for printers
  6. If any printer goes into an error state, then a separate process to monitor the printer is created, and will continue to run until the printer exits said error state