Client Performance Monitoring

Has anyone made a successful attempt at getting client app (or PC) metrics?
Ideally, we would have a screen that would show all connected clients and their respective CPU%, Memory, Ping Time, etc.

The client diagnostics are available locally, at the client, with the Client Diagnostics window. But as far as I can tell, this information is not retrievable.

I’m not against running a python script to gather the information on a timer script at each client, but I haven’t been able to find a Jython friendly library to use.

I’m wondering about this too.

Java is jython-friendly. And provides a plethora of such information. Start here. You’ll end up with something like this in a client timer script:

from java.lang.management import ManagementFactory

sysmx = ManagementFactory.getOperatingSystemMXBean()
payload = {'id': system.util.getClientId(),
    'cpus': sysmx.availableProcessors,
    'load': sysmx.systemLoadAverage}

system.util.sendMessage('myStatsProject', 'myClientStatsHndlr', payload, 'G')
3 Likes