[Xymon] Windows XymonPSClient v2.37

Beck, Zak zak.beck at accenture.com
Fri Feb 15 13:03:11 CET 2019


Hi

I have committed v2.37 today, this has a big performance related fix and other fixes - thanks to SebA <spah at syntec.co.uk<mailto:spah at syntec.co.uk>> and Andy abs at shadymint.com<mailto:abs at shadymint.com> for extra work and prompting in this area.

Download from SVN<https://sourceforge.net/p/xymon/code/HEAD/tree/sandbox/WinPSClient/> (the documentation has been updated also, including uninstall instructions).

The key fixes are:

* replaced WMI call to get number of processors with Windows API call

The WMI call to get processor information was taking anything from 4-5 seconds on most of my VMs, some experience much longer waits and high CPU usage while this WMI call executed. There have also been instances where the WMI call returns incorrect data or no data. This has been replaced with a call to GetNativeSystemInfo(), which should work on 32-bit and 64-bit platforms and in testing executes in milliseconds.

* only supply diskpart data if EnableDiskPart = 1

There is a test in the client which uses 'diskpart' to gather information about clustering every slow scan. This is included in the data sent to Xymon, but it's not generally displayed - you can extract it for reporting if needed. Hardly anyone uses this and for some reason for some people it is causing memory issues in the Microsoft Virtual Disk Service. Therefore by default the test will now not be run, you can enable it with the EnableDiskPart setting in xymonclient_config.xml.

* add a dummy, ignored config item in the internal client-local config table so that there is always some configuration present (even if nothing in the server-side client-local for this host)

We found that if there is no client-local.cfg for the host and no default client-local.cfg (like [powershell] or [XymonPS]), on some platforms there appears to be a memory leak. The fix ensures there is always something in the internal cache of client-config even if nothing is received from the server.

* XymonAcceptUTF8 - default (0) is now to use the original ASCII encoding, added setting for 'pure' ASCII coding which strips/converts diacritic characters

Prior to this version, by default, the client uses ASCII encoding to send to the server but also attempts to encode/filter diacritic characters. This was added in v2.20, and for some people it adds a large time overhead when sending data.

It's been changed so that the default setting of 0 acts like it did before v2.20 - no diacritic encoding - I'm calling this 'original' ASCII encoding. XymonAcceptUTF8 = 1 is unchanged, uses UTF8. XymonAcceptUTF8 = 2 is the v2.20 setting, use ASCII and encode/filter diacritics - I'm calling this 'pure' ASCII encoding. I don't think this will impact on many people other than saving time/cpu for the default setting.

Full changelog:

v2.37
* replaced WMI call to get number of processors with Windows API call
* fixed servicecheck parentheses
* use TLS for uploading data to xymoncgi if using http reporting and URL begins https
* add milliseconds to log timestamp
* add a dummy, ignored config item in the internal client-local config table so that there is always some configuration present (even if nothing in the server-side client-local for this host)
* fix a couple of instances where we were using variables before they are assigned

settings changes/additions:
* XymonAcceptUTF8 - default (0) is now to use the original ASCII encoding, added setting for 'pure' ASCII coding which strips/converts diacritic characters
* only supply diskpart data if EnableDiskPart = 1


Zak


________________________________

This message is for the designated recipient only and may contain privileged, proprietary, or otherwise confidential information. If you have received it in error, please notify the sender immediately and delete the original. Any other use of the e-mail by you is prohibited. Where allowed by local law, electronic communications with Accenture and its affiliates, including e-mail and instant messaging (including content), may be scanned by our systems for the purposes of information security and assessment of internal compliance with Accenture policy. Your privacy is important to us. Accenture uses your personal data only in compliance with data protection laws. For further information on how Accenture processes your personal data, please see our privacy statement at https://www.accenture.com/us-en/privacy-policy.
______________________________________________________________________________________

www.accenture.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.xymon.com/pipermail/xymon/attachments/20190215/091d474a/attachment.html>


More information about the Xymon mailing list