Is there away to tell what OS devices are connecting to a person's vdi environment? I need to know what devices are connecting we want a count of all the non-window os computers connecting to vdi. using the HTML or the horizon client either one.
We have a software call Stratusphere would that do it? we haven't used it much yet I am going to look at that today I just wanted to post the question out there.
Horizon 7.6 enterprise
Thanks.
Tyson
Hi txfree2
You can view this information in new admin HTML5 based console. Below are the steps:
> Login to horizon 7 admin page and click on the 'Horizon console' link on right-top of the page. This will load the new admin page.
Alternatively you can also navigate to https://<connection-server-FQDN>/newadmin
> In the search bar, search for the username that you want to check for if he is connected using soft client or browser:
> Click on the user and you will see something like this:
> Now finally click on computer name and you can see client IP and client OS whether it is connected using windows based client Or HTML client:
Please mark it as helpful/answered if this helps you.
Hi Tyson,
If you want to programmatically collect this information (rather than interactively checking it as described by Shreyskar) you can use the ViewClient_Type registry value in key HKCU\Volatile Environment.
txfree2
If you have Stratusphere, that would be your best bet. Navigate to Inspectors - >Remote Display and enable Remote Machine info to get the remote client OS type
U could also do this using PowerCLI:
First connect to your Horizon Environment:
Connect-HVServer <yourserver>
Then you could do something like this:
$ViewAPI = $global:DefaultHVServers[0].ExtensionData
$query_service = New-Object "Vmware.Hv.QueryServiceService"
$query = New-Object "Vmware.Hv.QueryDefinition"
$query.queryEntityType = 'SessionLocalSummaryView'
$Sessions = $query_service.QueryService_Query($ViewAPI,$query)
$NonWindowsClients = $Sessions.Results.namesdata | ? {$_.ClientType -notlike "Windows"}
$NonWindowsClients.count
This is what I see. thank you for your help.
can you give me a bit more info on that, that seems like it might work. we have hundreds of student's connecting the the VDI. and to look at each one personally is not really practical, so to run a report is the best way to go. Thanks.
@ RoderikdeBlock
Thank you for your reply not for sure how to do all that but I will work on scripting something up like that. where would I connect to just one of my ConnectionBrokers? or to the database?
The first step is to connect to Connection broker using the Connect-HVServer cmdlet.
You can run this using PowerCLI on the Connection Broker or install the PowerCLI Modules on a remote server.
For more info about using PowerCLI in Horizon environments you can take a look at this site. He posts a lot about this subject.
https://www.retouw.nl/powercli/pulling-horizon-session-information-using-powercli/
Hi Tyson,
Sure. The registry info I provided actually corresponds with an environment variable, so that's probably the easiest approach.
You can create a simple batch file like this (adjusting the LogFile location to your liking, obviously ):
@echo off
setlocal
set LogFile=C:\Flex\ClientType\%username%.log
echo %DATE% %TIME%: %USERNAME% logged on to %COMPUTERNAME% with Horizon client type '%ViewClient_Type%' >> "%LogFile%"
This results in log lines like the following:
Tue 06/09/2020 22:09:39.54: testuser logged on to 2012R2 with Horizon client type 'Windows'
If you launch this from a shortcut in the Startup folder, for instance, this information will be logged whenever a user logs on.