Sorry - i couldn't find a ton of info on the below Fix.
Anyone know if this only applies to Horizon agent 7.4 / 7.5 ?.. we are on 7.6 atm.
also- if we were being affected by it any idea if just USB Redirection plain doesnt work ?
HKLM\Software\VMware, Inc.\VMware VDM\Agent\USB (if the key is not present, create it)
uemFlags (DWORD) to 1
thanks .
Hi Douglas42Adams,
That particular setting should be supported in Horizon agent 7.6 as well. But, what problem are you experiencing, exactly?
Hi,
I have a case with VMware regarding issues with USB Redirection and Horizon Agent 7.9 (also tested Horizon Agent 7.8). We also use UEM 9.7.
The solution was to add this registry key:
[HKEY_LOCAL_MACHINE\SOFTWARE\VMware, Inc.\VMware VDM\USB]
"WaitForSessionIdTimeout"=dword:000000c8
Where 000000c8 is HEX for 200 in Decimal.
In our case, UEM disabled USB because of a default timeout of 60 seconds:
DEBUG (0C88-1588) <MessageFrameWorkDispatch> [ws_vhub] USB is allowed by GPO
DEBUG (0C88-1588) <MessageFrameWorkDispatch> [ws_vhub] UEM is installed
DEBUG (0C88-1588) <MessageFrameWorkDispatch> [ws_vhub] Can't get a valid sessionId within 60 seconds for channel 0x000002878977E5C0. Already closed?
INFO (0C88-1588) <MessageFrameWorkDispatch> [ws_vhub] USB policy set to disallowed
The registry increases this timeout to 200 seconds, which was enough for us in this case.
/Kjell
KjellO
You might have just helped me solve our random USB redirection issues that we have been having as well. Horizon 7.6/AV 2.16/UEM 9.5. I have been struggling to pin down the exact issue here in the last week or two. I am seeing these same messages in my Debug VDM client logs when the client says "USB Redirection is not available". Going to test this and let you know.
@UEMdev
The issues we are seeing w/ some users is On reboot the personal printer will no longer show up on the users machine .
If the user unplugs the printer and plugs it back into the Zero Client the printer will show back up .
It's not really a solution.. but more of a workaround.. but we just put the printer on the Network.. which is probably easier to support / more reliable anyhow .
thanks .
Thanks KjellO
Did you apply this to the Gold Image ?... Probably not a good idea to apply via UEM Manager right ?
Any thoughts on applying this Fix if we are not yet fully seeing these problems ?... think it would hurt anything ?
thanks
Hi Douglas,
Every change like this needs to be applied on the GM and you should also do a reboot of the GM after applying registry keys like these.
I do not know if this registry key will resolve your problem, you should probably open a SR and have VMware examine the logs to be sure.
Good luck!
Kind regards
Kjell
Hi Douglas42Adams,
That symptom doesn't sound like the typical USB redirection issues, that usually boil down to "USB redirection does not work at logon, but works after reconnecting to an existing session".
As for the Horizon agent's WaitForSessionIdTimeout workaround that KjellO mentioned: that would only be applicable in case you get those <MessageFrameWorkDispatch> [ws_vhub] Can't get a valid sessionId within 60 seconds log messages.
And, if you would like to configure that setting, you would indeed not be able to do that via UEM itself. For two reasons: it's an HKLM setting (so UEM can't apply it), but even if it could, it would be too late – for the Horizon agent to pick up this setting, it needs to be there before UEM even gets to run at logon.
what log would that be in? We are having the issue where "USB redirection is not available for this desktop", but if we disconnect and reconnect it's there. I just want to verify the logs before I make any major changes to our golden image.
I found the log file. I did find the error:
2019-08-29T15:03:55.183-07:00 DEBUG (0B34-0BE4) <MessageFrameWorkDispatch> [ws_vhub] Can't get a valid sessionId within 60 seconds for channel 0x000001F307D7C170. Already closed?
2019-08-29T15:03:55.183-07:00 INFO (0B34-0BE4) <MessageFrameWorkDispatch> [ws_vhub] USB policy set to disallowed
I changed the regkey for both UEMtimeouts in hklm/software/vmware, inc.\vmware vdm\agent\usb to 120 and waitforsessionidtimeout to 200 in hklm/software/vmware, inc.\vmware vdm\agent\usb
2019-08-29T15:40:37.917-07:00 INFO (0B34-1FB4) <MessageFrameWorkDispatch> [ws_vhub] vhublib: Effective configuration setting, name: uemTimeouts, value: 120
2019-08-29T15:40:37.917-07:00 DEBUG (0B34-1FB4) <MessageFrameWorkDispatch> [ws_vhub] vhublib: Uem timeout is 120 seconds
2019-08-29T15:40:37.917-07:00 INFO (0B34-1FB4) <MessageFrameWorkDispatch> [ws_vhub] vhublib: Effective configuration setting, name: HorizonUSBVersion, value: 2
2019-08-29T15:40:37.917-07:00 DEBUG (0B34-1FB4) <MessageFrameWorkDispatch> [ws_vhub] vhublib: Usb UEM intf version is 2
2019-08-29T15:40:37.917-07:00 DEBUG (0B34-1FB4) <MessageFrameWorkDispatch> [ws_vhub] Usb is allowed by UEM. sessionId=2
2019-08-29T15:40:37.917-07:00 INFO (0B34-1FB4) <MessageFrameWorkDispatch> [ws_vhub] USB policy set to allowed
This was from the UEMTimeout key for 2 minutes.
However I think we have an environment issue. We have an interactive login message with a company policy message that the users has to click okay to. If they don't click okay right away, I think it times out so when they log in the USB redirection doesn't work.
2019-08-29T16:05:47.859-07:00 DEBUG (0B34-0A2C) <MessageFrameWorkDispatch> [ws_vhub] USB is allowed by GPO
2019-08-29T16:05:47.859-07:00 DEBUG (0B34-0A2C) <MessageFrameWorkDispatch> [ws_vhub] UEM is installed
2019-08-29T16:05:47.859-07:00 INFO (0B34-0A2C) <MessageFrameWorkDispatch> [ws_vhub] vhublib: Effective configuration setting, name: uemFlags, value: 1
2019-08-29T16:05:47.859-07:00 DEBUG (0B34-1CE4) <MessageFrameWorkDispatch> [MessageFrameWork] System::CreateRemoteSessionChannel
2019-08-29T16:05:47.859-07:00 DEBUG (0B34-1CE4) <MessageFrameWorkDispatch> [wsnm_desktop] DesktopManager got a FindVirtualChannelTicket message
2019-08-29T16:06:14.874-07:00 DEBUG (0B34-0BB4) <TimerService> [ws_perfmon] System CPU use: 40%
2019-08-29T16:06:14.874-07:00 DEBUG (0B34-0BB4) <TimerService> [ws_perfmon] Physical memory use: 20%
2019-08-29T16:06:14.999-07:00 DEBUG (0B34-124C) <MessageFrameWorkDispatch> [wsnm_helpdesk] Failed to get data from counter, error: 0xc0000bc6, perf counter path \PCoIP Session Network Statistics(PCoIP Session -1)\Round Trip Latency ms
2019-08-29T16:06:14.999-07:00 DEBUG (0B34-124C) <MessageFrameWorkDispatch> [wsnm_helpdesk] Erase the failure counter, metrics count: 1
2019-08-29T16:06:33.202-07:00 DEBUG (0B34-124C) <MessageFrameWorkDispatch> [wsnm_desktop] DesktopManager got a SendSessionReport message
2019-08-29T16:06:33.342-07:00 DEBUG (0B34-124C) <MessageFrameWorkDispatch> [wsnm_desktop] session::pendingSessionDuplicateCount(): final duplicate count = 0
2019-08-29T16:06:33.342-07:00 DEBUG (0B34-124C) <MessageFrameWorkDispatch> [wsnm_desktop] SessionCounts: total=1, pen=0, con=0, dis=0, por=1, lgf=0
2019-08-29T16:06:33.342-07:00 INFO (0B34-124C) <MessageFrameWorkDispatch> [wsnm_desktop] USB over Virtual Channel is installed.
2019-08-29T16:06:33.342-07:00 INFO (0B34-124C) <MessageFrameWorkDispatch> [wsnm_desktop] Agent configuration for Usb over virtual channel: disabled, Usb Collaboration: enabled, Usb Collaboration VC for primary session: enabled
2019-08-29T16:06:33.342-07:00 INFO (0B34-124C) <MessageFrameWorkDispatch> [wsnm_desktop] Send the USB virtual channel flag 0 to broker.
2019-08-29T16:06:33.342-07:00 DEBUG (12B8-138C) <Thread-113> [ComponentResponse] Message is <?xml version="1.0"?>
<TERMINALRESPONSE><ID></ID><SERVERDN>cn=50fa3e74-5d4c-4725-a70f-bead105491d3,ou=servers,dc=vdi,dc=vmware,dc=int</SERVERDN><SERVERPOOLDN>cn=win10_dr,ou=server groups,dc=vdi,dc=vmware,dc=int</SERVERPOOLDN><SERVERDNSNAME>Win10VDI-2-DR.nevadafederal.int</SERVERDNSNAME><DYNAMICIPADDRESS>10.0.1.181</DYNAMICIPADDRESS><MACADDRESSIPV4>00:50:56:ba:29:f8</MACADDRESSIPV4><PREFIXLENGTHIPV4>24</PREFIXLENGTHIPV4><PLATFORM>WINDOWS</PLATFORM><OSVERMAJOR>10</OSVERMAJOR><OSVERMINOR>0</OSVERMINOR><AGENTVERSION>7.9.0</AGENTVERSION><AGENTBUILDNUM>13938590</AGENTBUILDNUM><REAVERSION></REAVERSION><REABUILDNUM>13938590</REABUILDNUM><UEMVERSION>9.8.0.895</UEMVERSION><VPENABLED>false</VPENABLED><PROTOCOL><NAME>RDP</NAME><PORT>3389</PORT><STATUS>ready</STATUS></PROTOCOL><PROTOCOL><NAME>PCOIP</NAME><PORT>0</PORT><STATUS>negotiate</STATUS></PROTOCOL><PROTOCOL><NAME>BLAST</NAME><PORT>0</PORT><STATUS>negotiate</STATUS></PROTOCOL><AGENTREADY>true</AGENTREADY><ACCEPTINGCONNECTIONS>true</ACCEPTINGCONNECTIONS><ERROR-CODE>AGENT_ERR_OK</ERROR-CODE><USBVIRTUALCHANNELENABLED>false</USBVIRTUALCHANNELENABLED><STARTTIME>1567114919</STARTTIME><MAXSESSIONS>1</MAXSESSIONS><SESSIONCOUNT>1</SESSIONCOUNT><PENDINGSESSIONCOUNT>1</PENDINGSESSIONCOUNT><CONNECTEDSESSIONCOUNT>0</CONNECTEDSESSIONCOUNT><DISCONNECTEDSESSIONCOUNT>0</DISCONNECTEDSESSIONCOUNT><TERMINALSERVICESENABLED>false</TERMINALSERVICESENABLED><MULTISESSIONENABLED>false</MULTISESSIONENABLED><VDIAPPMODESUPPORTED>true</VDIAPPMODESUPPORTED><UNAUTHENTICATEDACCESSENABLED>false</UNAUTHENTICATEDACCESSENABLED><LISTENERS><LISTENER>FRAMEWORKCHANNEL:32111</LISTENER></LISTENERS><LISTENERS><LISTENER>VDPSERVICECHANNEL:9427</LISTENER></LISTENERS><DOMAIN><NAME>NEVADA</NAME></DOMAIN><DOMAIN><NAME>NFCU</NAME></DOMAIN><DOMAIN><NAME>WIN10VDI-2-DR</NAME></DOMAIN><SESSION><SESSIONGUID>15560eab-9c0c-484c-abeb-54c804cf311f</SESSIONGUID><STATICSESSIONGUID>81f8e252-16d9-4a25-a1f9-bdd8211abe21</STATICSESSIONGUID><USERDN>cn=s-1-5-21-1740064666-1385770315-930774774-32114,cn=foreignsecurityprincipals,dc=vdi,dc=vmware,dc=int</USERDN><BROKERUSERSID>S-1-5-21-1740064666-1385770315-930774774-32114</BROKERUSERSID><CONNECTIONID>6F2670D0_15FE_465C_B440_DD2C48BFA439</CONNECTIONID><LOCATIONID>c20e44d3f6c892fd159381f74422634bf72b0dcf38ecd6e5799efc109c005d92</LOCATIONID><USERNAME>MatthewG</USERNAME><DOMAINNAME>NFCU</DOMAINNAME><BROKERINGENDPOINTID>PodEndpoint/a6323095-8ad8-4b63-b3f2-c6e808feee9e/ONCU-CS2-VDI-DR</BROKERINGENDPOINTID><HOSTPODID>a6323095-8ad8-4b63-b3f2-c6e808feee9e</HOSTPODID><SECURITYGATEWAYID>ONCU-CS2-VDI-DR.nevadafederal.int</SECURITYGATEWAYID><SESSIONTYPE>DESKTOP</SESSIONTYPE><APPIDHISTORY></APPIDHISTORY><CLIENTADDRESS></CLIENTADDRESS><CLIENTNAME></CLIENTNAME><CLIENTVERSION></CLIENTVERSION><CLIENTTYPE>Windows</CLIENTTYPE><SECURITYGATEWAYIPADDRESS>10.230.128.69</SECURITYGATEWAYIPADDRESS><SECURITYGATEWAYLOCATION>Internal</SECURITYGATEWAYLOCATION><SESSIONID>-1</SESSIONID><STATE>ConnectPending</STATE><PROTOCOL></PROTOCOL></SESSION></TERMINALRESPONSE>
2019-08-29T16:06:33.342-07:00 DEBUG (12B8-0CE8) <pool-3-thread-3> [AbstractTopicPublishingManager] (DesktopControlPublishingManager-agent) Message published.
2019-08-29T16:06:45.014-07:00 DEBUG (0B34-0BB4) <TimerService> [ws_perfmon] System CPU use: 2%
2019-08-29T16:06:45.014-07:00 DEBUG (0B34-0BB4) <TimerService> [ws_perfmon] Physical memory use: 20%
2019-08-29T16:06:48.780-07:00 DEBUG (0B34-0A2C) <MessageFrameWorkDispatch> [ws_vhub] Can't get a valid sessionId within 60 seconds for channel 0x000001F3080DAB30. Already closed?
2019-08-29T16:06:48.780-07:00 INFO (0B34-0A2C) <MessageFrameWorkDispatch> [ws_vhub] USB policy set to disallowed
Any suggestions for how to proceed? We can instruct users to click okay quickly, but that defeats the purpose of the message. Even though the value is set to 200, is there a reason the log still states "Can't get a valid sessionId within 60 seconds?"
More info. I appears one of the regkeys isn't working correctly as I stayed at the interactive login windows with a stop watch. USB was initializing and as soon as the 60 second mark hit, it turned to USB Redirection is not available for this workstation.
The key I was supposed to add was on the VM Golden Image, correct?
Hi matthewgONCU,
The registry settings do indeed need to be applied to the golden image, but I think there's some confusion about the particular registry keys (whether the "Agent" sub key should be included or not.)
As UEMDev I don't know all the Horizon agent details, so rather than provide you with incorrect information, I suggest you open a support case. I'll send you a private message with a reference that should allow the support team to quickly add your case to some ongoing investigations into USB redirection issues.
Was this issue resolved? I am experiencing the same intermittent issue with laptops specifically. I have the UEMFlags registry key set on my golden image but still periodically get the "USB redirection is not available on this desktop" message on the VDI desktop.
We are running Horizon 7.8 and UEM 9.5 andI do know that is an issue however we are not at a point where we can upgrade UEM so we need a solution that will work until we can get UEM upgraded.
Thank you.
Hi RachelW,
The latest fix around USB redirection issues in combination with DEM/UEM shipped in Horizon agent 7.6, supported by a change in UEM 9.5.
There's an ongoing issue that seems to be triggered by "slow" logons, where the Horizon agent can't determine the session ID within its default timeout of 60 seconds. Kjell's post earlier in this thread lists the Horizon log message to check for ("Can't get a valid sessionId within 60 seconds for channel") and the workaround (overriding the timeout by configuring the WaitForSessionIdTimeout registry value.)
However... If you have the UEMFlags registry value configured, you should not be encountering this particular issue. That value instructs the Horizon agent not to look for Horizon Smart Policy configuration provided by DEM/UEM, so it won't try to determine the session ID which it would have needed to do so...
Probably best to open up a support case, so VMware support can take a look at what's going on.
Thank you for responding. I am not seeing those messages in my debug log; I am instead seeing these messages:
I do have a support ticket open with VMware as well.
Thank you for your assistance/information.
Hi RachelW,
However... If you have the UEMFlags registry value configured, you should not be encountering this particular issue.
I just realized that I need to qualify the above statement, as it depends on what you have set that UEMFlags registry value to...
Setting that value to 1 (as described at the start of this thread) tells the Horizon agent not to go and check for Horizon Smart Policies USB redirection configuration for for zero client connections.
If you want to disable the logic for "soft clients" as well, you'd need to set UEMFlags to 257 (i.e. 0x101 in hex.)
So, depending on your UEMFlags configuration you might be encountering that "60 second timeout" issue after all. Please note that that "Can't get a valid sessionId within 60 seconds for channel" message is logged to the Horizon agent log file – I hardly know anything about Horizon, but I wonder whether that log fragment you posted is maybe from the Horizon client log?
Hi Rachel, did you ever resolve the issue with USB redirection? i see the same errors in my log and can not find the solution. Any details you can share? thank you.
Did anyone find a resolution? we are getting the same errors. USB Deny reason: denied by policy
2020-01-10T08:48:40.314-05:00 INFO (56EC-5734) <MessageFrameWorkShare> [vmware-remotemks] Remote USB status reported, state: unavailable
2020-01-10T08:48:40.314-05:00 DEBUG (56EC-5734) <MessageFrameWorkShare> [vmware-remotemks] USB deny reason: denied by policy
2020-01-10T08:48:40.314-05:00 DEBUG (56EC-5734) <MessageFrameWorkShare> [vmware-remotemks] viewusb_op_notif_error: [Id: 0], msgId=213, msgParam=IDS_DROPDOWN_DEVICES_NOT_AVAILABLE
2020-01-10T08:48:40.314-05:00 INFO (56EC-5734) <MessageFrameWorkShare> [vmware-remotemks] Remote USB uemTimeouts: 0
2020-01-10T08:48:40.314-05:00 DEBUG (56EC-5384) <vmware-usbd> [vmware-remotemks] viewusb_op_notif_reconnect: state=0
Hi dimich34,
Which versions of Horizon and DEM/UEM are you using? Does your Horizon agent log contain "Can't get a valid sessionId within 60 seconds for channel" messages?
I am using DEM version 9.9 and I did check logs on my computer and could not find any references to "Can't get a valid sessionId within 60 seconds for channel" messages