Printer Maintenance and Troubleshooting

Regular printer maintenance is an important part of printer administration. In addition to checking the print queue periodically for stuck documents and clearing them out as discussed in the section entitled "Managing Print Jobs" earlier in this chapter, you should check to see how the print server is performing. As part of routine maintenance, you should also prepare for print server failure by periodically backing up the print server configuration. Finally, when things go wrong, you must perform troubleshooting.

Monitoring Print Server Performance

Monitoring print server performance can help you track usage statistics and determine whether a print server is performing as expected. It can also help you determine whether changes or upgrades are needed and plan for future needs. You monitor print server performance using the performance objects available in System Monitor. You access System Monitor from within the Performance Monitor console. Click Start, Programs or All Programs, Administrative Tools, Performance. Or type perfmon at the command line.

Get started by following the techniques discussed in Chapter 16, for establishing performance baselines and detecting performance bottlenecks. These topics are discussed in the sections entitled "Establishing Performance Baselines" and "Resolving Performance Bottlenecks", respectively. Once you've done this, zero in on the server's print spooling and queuing performance using the SpoolSv instance of the Process object and the Print Queue object as detailed in the following steps:

  1. On a server you want to use for remote monitoring, start Performance Monitor, and then select System Monitor in the left pane.

  2. Press Ctrl+R to use the View Report display, and then press Ctrl+E to start a new counter set.

  3. Press Ctrl+I to display the Add Counters dialog box. In the Add Counters dialog box, choose Select Counters From Computer, and then type the UNC name or IP address of the print server you want to monitor remotely. An UNC computer name or IP address begins with \. So, for instance, you could enter \PrintServer02 or \192.168.12.15.

  4. After you type the UNC computer name or IP address, press Tab or click the Performance Object list. When you do this, Performance Monitor will attempt to connect to the remote computer and retrieve a list of available performance objects to monitor.

  5. Choose Process, and then in Select Instances From List choose Spoolsv, as shown in Figure 29-42.

    Monitor the Process object's Spoolsv instance.

    Figure 29-42. Monitor the Process object's Spoolsv instance.

  6. Choose the following counters in the Select Counters From List box:

    • %Processor Time—Shows the percentage of elapsed time of all process threads used by the Print Spooler service. A dedicated print server that is very busy will have a relatively high amount of processor time.

    • Handle Count—Shows the total number of handles open by the Print Spooler process. This is important to track because each open handle uses resources, and open handles can be from clients that aren't actively printing.

    • Virtual Bytes/Virtual Bytes Peak—Shows the current/peak size in bytes of the virtual address spaced used by the Print Spooler process.

    • Page File Bytes—Shows the current amount in bytes of the virtual memory that the Print Spooler process has reserved in the paging file.

    • Pool Paged Bytes—Shows the current size in bytes of the paged pool used by the Print Spooler process. Memory in the paged pool can be written to disk when it is not in use.

    • Pool Nonpaged Bytes—Shows the current size in bytes of the nonpaged pool used by the Print Spooler process. Memory in the nonpaged pool cannot be written to disk and must remain in physical memory.

    • Working Set/Working Set Peak—Shows the current/peak size in bytes of the set of memory pages (working set) used by the Print Spooler process.

  7. Click Add to add the selected counters to the chart.

  8. Under Performance Object, choose Print Queue, and then choose All Instances to track all print queues on the server.

  9. Choose the following counters in the Select Counters From List list:

    • Bytes Printed/Sec—Shows the number of bytes printed per second and is a relative indicator of how busy a printer is.

    • Jobs—Shows the current number of print jobs in a print queue.

    • Jobs Spooling/Max Jobs Spooling—Shows the current/peak number of print jobs being spooled to the print queue. These are incoming print jobs.

    • Job Errors—Shows the total number of job errors in a print queue since the last restart. Job errors can occur if there are problems transferring print jobs to the printer. A relatively high number of job errors can indicate networking problems or problems with network cards.

    • References/Max References—Shows the current/peak number of handles open to a print queue. This is important to track because each open handle uses resources, and open handles can be from clients that aren't actively printing.

    • Not Ready Errors—Shows the total number of printer not ready errors in a print queue since the last restart. These errors occur if the printer is waiting or not ready for printing.

    • Out Of Paper Errors—Shows the total number of out of paper errors in a print queue since the last restart. If a printer is frequently running out of paper, paper might not be getting refilled properly or you might need an additional paper tray.

    • Total Jobs Printed—Shows the total number of jobs printed on a print queue since the last restart. This is a relative indicator of how busy a printer is.

    • Total Pages Printed—Shows the total number of pages printed on a print queue since the last restart. This is a relative indicator of how busy a printer is.

    Note

    Total Pages Printed doesn't show pages printed by Windows 95, Windows 98, Windows Me, and non-Windows clients. These clients use SMB.

  10. Click Add to add the selected counters to the chart, and then click Close.

You can now monitor the print server to determine activity levels and how many system resources are being used for printing.

Preparing for Print Server Failure

As part of your print services optimization and maintenance process, you should consider how you are going to handle printer and print server failure. Several techniques have been discussed previously for increasing availability and fault tolerance. These techniques include print queue pooling and print clusters as discussed in the section entitled "Optimizing Printing Through Queues and Pooling" earlier in this chapter. Because these options aren't practical for all environments, you should have other backup plans ready.

Start by considering how you would handle printer failure. If you have an identical printer available as a spare, you can configure this printer to take the place of the failed printer. As long as the printer uses the same print drivers, users can access it from the same print queue. If you have other printers available, you could instruct users how to access one of these printers or, ideally, already have a second printer added for use on their computer as a backup in case the primary printer fails. Trust me, you'll have happier users if you do this.

Next, consider how you would handle print server failure, which could mean that several printers are inaccessible. It's often a good idea to have a secondary print server available if a primary print server fails. You could then switch users from the primary print server to the secondary print server. Assuming the print server is already configured to provide print services for the printers originally serviced by the primary, you could simply tell users how to access the print queues on the secondary print server.

A more complete disaster recovery plan for a print server would be similar to the following:

  1. As part of periodic backups, back up the printer configuration on the print server using Printer Migrator. This would create a .cab file that should be stored on a network share that is itself regularly backed up to tape.

  2. In the event the primary print server failed, you would disconnect the primary server from the network. Then use Printer Migrator to restore the .cab file containing the printer configuration on the secondary server.

  3. You would then change the secondary print server's IP address and computer name to match that of the original print server. Users would then be able to access printers and resume printing.

Solving Printing Problems

Windows Server 2003 has many improvements that reduce the amount of printing problems you'll encounter. The biggest change is the automatic restart of spooling if the Print Spooler service hangs up due to errors, which takes a lot of guesswork out of troubleshooting. However, if the Print Spooler has a critical problem, such as when the volume on which the spool folder is located runs out of space, the Print Spooler can stop running.

Printer Troubleshooting Essentials

When you are troubleshooting printing problems, as with troubleshooting any problems, first try to figure out where the problem is and then try to fix it. As with most problems, you'll usually want to start with the client experiencing the printing problem before you start troubleshooting on the print server. Of course, the printer might also have a problem and the network might be a culprit as well. So, this gives you four key areas to examine:

  • Client/Application software The client or the application software on the client might be improperly configured. This could include problems with print drivers, permissions, and print settings.

  • Printer hardware The printer might have a problem. This could include being out of paper, out of toner, or having a paper jam.

  • Printer server The print server might have a problem. This could include the spool folder running out of space, permissions set for a printer or the spool folder, print drivers used by the server, and device status.

  • Network connectivity The network might have a problem, or the network card on the client, server, or printer might be misconfigured or bad.

Start by trying to figure out which area has a problem. If the user is asking you directly for help, make sure the user is connected to the right printer and knows which print device is associated with the printer he or she is using. Try printing to the printer from your machine. You can print a test page from the printer's Properties dialog box by clicking Print Test Page in the General tab. If you can print a test page, printing is working and the problem might have to do with permissions or the user's system or configuration. Try printing from someone else's computer. If this succeeds, the problem might be with this particular user's system or configuration. If this fails, try printing from the print server. If this fails, the problem might be with the printer configuration or with the network.

While you are printing test pages, be sure to keep track of the printer status. Most current printers have a mini Hypertext Transfer Protocol (HTTP) server and an online status page that you can check simply by typing the printer's IP address in your Web browser. If you can't check current status that way, start Windows Explorer, expand My Network Places, and navigate to the Printers And Faxes folder of the print server. You can then double-click the printer to access its management window. If there's a document with an error status at the top of the print queue, remove it, which should restore printing, and then see the section entitled "Configuring Print Spooling" earlier in the chapter to see how you can try to prevent that type of error from happening again. If all documents have a printing error or if each time you clear a bad document out of the queue, the status changes to Error-Printing, there might be a problem with the network or the printer itself. If the title bar shows the printer is paused, click Printer, and then select Pause Printing to resume printing.

When you can't check the status of the printer online, don't spend more than five minutes on a printer problem without walking over to the printer and checking its status. Most printers with an error status will have a blinking yellow light and the display will state the problem. Also, you might want to check the event logs on the print server for error or warning events.

Hopefully, after performing these procedures, you'll have isolated the problem to a particular area or have a better understanding of where the problem might exist. With that said, let's delve into specific scenarios and troubleshooting options.

Comprehensive Printer Troubleshooting

When someone states there is a printing problem, you should try to determine who is affected by the problem. Try printing from your machine and other machines. Try printing from the print server. Hopefully, after doing this you'll know whether the problem affects

  • Everyone, meaning no one can print. In these circumstances, the problem likely has to do with the printer itself or the network. Perform the following actions:

    • Check the printer status either by walking over to the printer or using a browser to check the printer's status page. (Try typing the printer's IP address in your Web browser.) Afterward, check the event logs on the print server. Look for error or warning events that might indicate a problem.

    • Check the print queue (logical print device). Look to see if the printer is paused or if there are documents with a status of Error-Printing. Clear out these documents by right-clicking them and selecting Cancel.

    • Print or check the configuration of the printer. Someone might have set it to use Dynamic Host Configuration Protocol (DHCP) and might not have made a reservation for it. In this case, if the printer was shut down and then restarted, it might have a different IP address. The printer port would then point to the wrong IP address. Check the printer's subnet mask as well.

    • Check the network. See if you can ping the printer's IP address from your system and from other systems. At the command line, type ping PrinterIP, where PrinterIP is the IP address of the printer. If you can't ping the printer's IP address from any system, the printer might be turned off or its network cable might be disconnected. The printer might also have a bad network card. The problem could also be in the switch into which the printer is plugged or with routing to the printer.

    • Determine when the last time the printer worked and if the printer configuration has been changed. If the printer never worked, it might not have been configured correctly in the first place. If the printer configuration was changed, change the configuration back to the previous settings if possible. If you suspect a problem with the print driver, try reinstalling it or installing a new driver as discussed in the section entitled "Viewing and Configuring Print Drivers" earlier in this chapter.

    • Check the free space on the volume on which the spool folder is located. If the volume is low on space or out of space, the print server won't be able to create spool files and, therefore, documents won't print. Also check the permissions on the spool folder. If the permissions are set incorrectly, the spooling won't work. See the section entitled "Configuring Print Spool, Logging, and Notification Settings" and the Troubleshooting sidebar "Check permissions on the spool folder" earlier in this chapter.

    • Check the print monitor and separator page settings to ensure they are correct. If an incorrect print monitor is set, the printer might print garbled pages or might not print at all. Try using the RAW data type or the EMF data type to see if this clears up the problem. If the separator page is set incorrectly, the printer might print out the contents of the separator page or it might not print at all. See the sections entitled "Viewing the Print Processor and Default Data Type" and "Configuring Separator Pages" earlier in this chapter.

    • Check the Print Spooler service. It is configured for automatic restart, but if restart fails twice within a minute, the Print Spooler service won't try to start again. Also, if the print queue has error documents and you can't clear them out, it is usually the fault of the Print Spooler. In this case, restart the service manually. In the Administrative Tools folder, select Services, and then select Print Spooler in the right pane. Right-click Print Spooler, and select Start or Restart as appropriate.

  • Some people, meaning only some users can't print and some can. If some people can't print, the problem likely has to do with the permissions, application software, or the network. Perform the following actions:

    • Check the network using a computer in the same subnet as the people having the problem. See if you can ping the printer's IP address. At the command line, type ping PrinterIP, where PrinterIP is the IP address of the printer. If you can't ping the printer's IP address from any system on the subnet, a switch or routing between the user's computer and the printer might be bad or disconnected. This happens a lot if local switches/hubs are under people's desks.

    • Check the printer permissions and the permissions on the spool folder to see if the groups of which the users are members have appropriate access. If the permissions are set incorrectly, the spooling won't work. See the section entitled "Configuring Print Spool, Logging, and Notification Settings" and the Troubleshooting sidebar "Check Permissions on the Spool Folder" earlier in this chapter.

    • Check the print monitor. Windows 95, Windows 98, and Windows Me clients can print only if the print monitor uses the RAW data type. See the section entitled "Viewing the Print Processor and Default Data Type" earlier in this chapter.

    • Check the application being used for printing. The application might be incorrectly configured or the default printer might not be what users think it is.

    • Check the error message generated when printing. If the client gets an error stating it must install a printer driver when connecting to a printer, this means the correct drivers are installed on the server but aren't available to the client. Additionally, Windows 95, Windows 98, and Windows Me clients do not automatically check for updated drivers and must be updated manually. See the section entitled "Installing and Updating Print Drivers on Clients" earlier in this chapter.

  • One person, meaning only one user can't print. If only one person can't print, the problem likely has to do with application software, the user's computer, or permissions. Start with the user's computer and perform the following actions:

    • Check the application being used for printing. The application might be incorrectly configured, or the default printer might not be what the user thinks it is.

    • Check the user's computer. The Print Spooler service must be running for the user to print. The computer must have sufficient temporary space to generate the initial spool file. The computer must have other essential services configured. The list goes on. Essentially, it is better if you restart the computer if you suspect the problem has to do with that computer specifically.

    • Check to make sure the user's computer can connect over the network to other resources. Try pinging the router or the printer in question.

    • Check the error message generated when printing. If the client gets an error stating it must install a printer driver when connecting to a printer, this means the correct drivers are installed on the server but aren't available to the client. See the section "Installing and Updating Print Drivers on Clients" earlier in this chapter. If the client gets an "Access Denied" error, this is a permissions issue.

    • Check the printer permissions and the permissions on the spool folder to see if the user or groups of which the user is a member have appropriate access. If the permissions are set incorrectly, the spooling won't work. See the section entitled "Configuring Print Spool, Logging, and Notification Settings" and the Troubleshooting sidebar "Check Permissions on the Spool Folder" earlier in this chapter.

Resolving Garbled or Incorrect Printing

If the printer prints garbled or incorrect pages, this can be a sign that the printer is incorrectly configured. You should check the print driver and the port monitor settings. You might want to reinstall the print driver as discussed in the section entitled "Viewing and Configuring Print Drivers" earlier in this chapter. You might want to change the port monitor data type to RAW or EMF to see if this clears up the problem. See the section entitled "Viewing the Print Processor and Default Data Type" earlier in this chapter.

To resolve this problem, check the following:

  • Ensure that the complete document is transferred to the printer before printing starts by selecting the Start Printing After Last Page Is Spooled option. See the section entitled "Configuring Print Spooling" earlier in this chapter.

  • Try using the RAW data type or the EMF data type to see if this clears up the problem. See the section entitled "Viewing the Print Processor and Default Data Type" earlier in this chapter.

  • Try removing any separator page that is used, because this might be setting the printer page description language incorrectly. See the section entitled "Configuring Separator Pages" earlier in this chapter.

  • Try clearing the Enable Advanced Printing Features option on the Advanced tab. This disables metafile spooling. Windows 95, Windows 98, and Windows Me clients use SMB connections and spool RAW-formatted files to the print server. See the section entitled "Configuring Print Spooling" earlier in this chapter.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset