Troubleshooting
Where to start?
If print queues aren’t appearing in the VDI session, the best place to identify the problem is the Print Deploy Client for VDI logs.The pc-print-deply-client-vdi.log file is located on the VDI host here: C:\Program Files\PaperCut Print Deploy Client VDI\data\logs.
This log is the central location for all VDI Session information for Print Deploy. When the log grows to 200 MB, it “rolls over” and a new log is started. We keep a copy of the previous log until another “rollover” of a new log occurs.
A quick note on some resources:
Please visit the Known Issues page to review if any issue you are experiencing has already been logged and potentially resolved.
Please review the Print Deploy Client for VDI Deployment Considerations page as well. We discuss Session Qualifiers, which are referenced in the examples below
Below are a few examples we’ve come across where queues were not being delivered. Let’s review some snippets from the Print Deploy Client for VDI logs in our investigations.
Example 1 - Missing session qualifiers
Reviewing the Print Deploy Client for VDI logs indicates that not all session qualifiers have been met:
- “2024/12/30 23:00:59 pc-print-deploy-client-vdi.exe: STDOUT| TRACE session/monitor.go:57 Ignored session because of local session {“sessionID”: 6, “domainName”: “pc2022-ad0”, “userName”: “jeff”, “clientName”: “”, “IPs”: null, “isRemote”: false, “status”: “Disconnected”}”
This example shows an invalid session because Clientname, Client IP are missing.
This could be because this session is not a Multi-Session VDI but rather a Single Session VDI where those session identifiers are not present.
Example 2 - Malformed IP Address
Reviewing the Print Deploy Client for VDI logs indicates ** ** all session identifiers were met, however, there’s an issue with the IP address:
- 2024/12/23 20:05:54 pc-print-deploy-client-vdi.exe: STDOUT| TRACE session/monitor.go:67 Found valid session {“sessionID”: 6, “domainName”: “treestump”, “userName”: “christopher.robin”, “clientName”: “eeyor”, “IPs”: [“0.0.176.23”],
The IP Address is reversed and not valid. All session identifiers must be present and valid for queue deployment. This case was where an older Print Deploy for VDI Client was in use. https://papercut.com/support/known-issues/?id=PD-2213#mf
Example 3 - Mobility Queues are not being deployed - UCT shows a ”Failed” status on Queue
Reviewing the Print Deploy Client for VDI logs indicates all session identifiers are present, however, when deploying the Mobility Queues we see:
- 2024/05/28 09:10:01 pc-print-deploy-client-vdi.exe: STDOUT| ERROR printer/printer.go:386 Failed to get printer URLs for Mobility printers {“fqUsername”: “waldrons\beth.williams”, “server”: “https://172.16.10.43:9164“, “printers”: [“PaperCut_Secure Printer-PC“], “error”: “unexpected status: 401 Unauthorized”}
Mobility solves the Print Nightmare problem out of the box, however, when combined with Print Deploy, we need to “Trust” the logged-in user’s credentials
Setting TrustReportedUsername = true in the Mobility-Print.conf.toml file will instruct the Mobility Service to “Trust” the Username from Print Deploy.
The User will now receive their Mobility Queues in their VDI Session deployed via the appropriate Zone from Print Deploy.
What good looks like. (Example: Hostname Zone.)
Let’s review some snippets of the Print Deploy for VDI Client log and examine what a valid session look like.
-
Found unique sessions by users {"count": 2}2023/10/13 14:44:30
-
Found valid session {"sessionID": 3, "domainName": "pcts", "userName": "fredit", "clientName": "win10fulldesk", "IPs": ["192.168.10.14"], "isRemote": true, "status": "Active", "state": "active"}
Log entry | What it means |
---|---|
Start Print Deploy Client VDI(windows-amd64) {"CommitID": "'992eb5", "Build": "2023-09-15-0153", "Version": "1.0.8"} | The VDI Client Windows service started up. |
Note: Line breaks added to aid formatting and comprehension. Got client configuration {"conf": {"accessibleMobilityPrintTLSPort":9164,"appServerEnvVersion":15, | The VDI Client configuration specified by the Print Deploy Server. This will be the same as the one for the normal Print Deploy.
|
Unique session per user {"fqUsername": "cx\\citrix01", "session": {"SessionID":4,"SessionName":"ica-cgp#48","HostName":"","DomainName":"cx","UserName":"citrix01","ClientName":"client-win10-2","IPs":["172.16.10.19"],"FarmName":"","IsRemote":true,"Status":1}} | A session found in the system.
|
Request to get printer install requests {"clientInfo": {"loggedInUser":{"username":"citrix01","type":"LocalDomain"},"machine":{"hostname":"client-win10-2","os":{"name":"windows","version":"10.0.17763","arch":"amd64"},"ipAddresses":["172.16.10.19"],"activeDirectoryDomainName":"cx","isVDI":true}}, "identityMode": "TRUST", "server": "https://mf.cx.local:9174"} | The VDI Print Deploy Client requests the Print Deploy Server to send a list of printers that a user can be used. |
Got deployment request {"count": 4, "install": ["Printer Z [mf](Mobility)","Printer A","Printer B","\\\\mf.cx.local\\ServerQueueA"], "uninstall": []} | The list of printers that the Print Deploy Server returned for the above request.
|
Unnecessary {"printers": []} Necessary {"printers": ["Printer A","Printer B","Printer Z [mf](Mobility)","\\\\mf.cx.local\\ServerQueueA"]} | Printers that the VDI Print Deplopy Client determines need to be uninstalled or installed. |
Printers for active user {"fqUsername": "cx\\citrix01", "necessary": {"Printer A":{"name":"Printer A","description":"Printer ….. "unnecessary": {}} | The details of printers installed and uninstalled for a user. |
Start installing printer {"printer": "Printer B", "type": "directprint", "driver": "PaperCut Global PostScript", "port": "nul", "fqUsername": "cx\\citrix01"} | The VDI Print Deploy Client starts installing a printer. |
Allowed user to use printer {"printer": "Printer B", "fqUsername": "cx\\citrix01", "sessionID": 4} | The VDI Print Deploy Client allows the user to use the printer |
Verify mobility printer existence {"originalName": "Printer Z [mf](Mobility)", "installedName": "Printer Z [mf](Mobility)_c57e436"} | A name of a mobility printer for which installation is requested. "installedName" indicates what printer name is used for the installation. Note: The VDI Print Deploy Client assigns a different Mobility Print printer name per user even if the original printer name is the same. |
Comments