Windows System Stability Score

Sidney Sahdala
Sidney Sahdala Member, Kaseya Certified, Kaseyan, Kaseya Staff

KASEYAN

edited June 2022 in Solutions

Product Name: Windows System Stability Index

Version: 1.0

Description : This agent procedure gets an average of the Windows System Stability Index and puts the result in a Custom Field so you can see its reliability. This can help find endpoints that will have problems such as application and operating system crashes, slowness, and other problems that can negatively affect the system. This agent procedure is a good example of VSA’s flexibility and shows that if VSA doesn’t do something natively then you can write an Agent Procedure to add the functionality.

This is based on the Windows Reliability data collected over the lifetime of a system.
It is a weighted measurement calculated from the number of failures seen over a rolling
historical period. The index value is calculated over the preceding 28 days, although the results for considerably more days can be seen in the Reliability Monitor itself. Reliability events in the System Stability Monitor will describe the specific failures for you to investigate further.

Instructions :

There is documentation included in the package but below is an outline.

This will require one custom field named System Stability Index (Average) of type String. Once
the Custom Fields are created, you can import the Agent Procedure.

 You can create Custom Fields in the Audit module by going
to:

 VSA > Audit > View Individual Data > Machine
Summary 

Next, import the Agent Procedure by going to:

 VSA > Agent Procedures > Schedule / Create

 Finally, click on Import Folder/Procedure and upload
the extracted XML file provided in the zip file (you will need to extract it
from the zip file).

After it has been imported, edit the Agent Procedure and make sure the
custom fields are filled in for every ‘updateSystemInfo’ command in the Agent
Procedure. If the first set of commands have it properly filled in, then the
rest of the code should also be mapped properly.

Comments

  • Sidney Sahdala
    Sidney Sahdala Member, Kaseya Certified, Kaseyan, Kaseya Staff

    KASEYAN

    edited August 2019

    This Agent Procedure together with the Detect HDD or SSD plus SMART Health Agent Procedure (https://automationexchange.kaseya.com/products/618) will be very helpful in judging the reliability of a system.

  • Brian
    Brian Member
    edited November 2019

    Does anyone know how to fix this error? Cannot convert argument "decimals", with value: "18003693570451", for "Round" to type "System.Int32". Any tips and assistance is appreciated. 

  • Brian
    Brian Member
    edited November 2019

    I managed to fix the issue. Dependent on the localisation sometimes separating decimals with a comma (,) does not work instead you can change the comma to a dot (.) in the #global:cmdresults#  if you add this command; '#global:psresult#' -replace ',','.' on line 13 and 18.

  • Thomas Brewster
    edited April 2020

    Thanks for the good work on this procedure.

    For anyone else who is running PowerShell in constrained mode, you can make a change to have procedure still output a rounded number without using the math function.

    Change line: 
    [math]::round("#global:psresult#", 2)
    To be:
    '{0:N2}' -f #global:psresult#

  • Gertjan
    Gertjan Member CHOCOLATE MILK
    edited October 2020

    Great! Thanks Thomas Brewster!



  • Nick Cheras
    Nick Cheras Member
    edited March 2021

    Hi all, i'm getting the "Cannot convert argument "decimals", with value: "18003693570451", for "Round" to type "System.Int32"." error and am having trouble understanding where / how to add the "'#global:psresult#' -replace ',','.' on line 13 and 18." any help would be appreciated as this is working on some workstations and not on others

  • jzawacki
    jzawacki Member, Managed Service Provider CHOCOLATE MILK

    Hey Sidney, I'm not able to import the script, I get the following errors:

    Custom field is there:


    Importing the .xml file:


    Copy/pasting the contents:


  • m.malina@zaanprimair.nl
    [email protected] Member CHOCOLATE MILK

    same error here while trying to import

  • jzawacki
    jzawacki Member, Managed Service Provider CHOCOLATE MILK

    Hey Sidney, I'm not able to import the script, I get the following errors:

    Custom field is there:


    Importing the .xml file:


    Copy/pasting the contents:


  • carla@cooperparry.com
    [email protected] Member, IT Pro CHOCOLATE MILK

    @jzawacki depending if the script was created pre version 9.5.7a you will need to follow the 'How to Import Agent Procedures after 9.5.7a – Kaseya' guide.


    As a rule of thumb any script that I try to import into VSA, I always follow the guide.

  • m.malina@zaanprimair.nl
    [email protected] Member CHOCOLATE MILK

    same error here while trying to import

  • enhance2000
    enhance2000 Member, Managed Service Provider AMERICANO

    I came across this too. VSA has updated their script export tags, you need to change <ScriptExport> to <ScExport>, and the same on the close tag </ScriptExport> to </ScExport>. Once you have chnaged the tags you should be able to import 100%

    You will probably have to do this with most older scripts on the exchange.

  • Sidney Sahdala
    Sidney Sahdala Member, Kaseya Certified, Kaseyan, Kaseya Staff

    KASEYAN

    Hi Everyone,

    I am sorry for not responding. I wasn't getting notifications to my email that comments were waiting for me.

    I will upload a new verson that has the new XML format.

  • Sidney Sahdala
    Sidney Sahdala Member, Kaseya Certified, Kaseyan, Kaseya Staff

    KASEYAN

    Hi Everyone,

    The new version will take a couple days to update here. Our Automation Team verifies all submitted Agent Procedures to make sure the submitter isn't doing anything questionable. This is for your security. Keep an eye on this and you should get an updated version that you can import into VSA.

    Thanks,

    Sidney

  • David
    David Member CHOCOLATE MILK

    Hi!


    I have successfully imported the procedure, but it keeps failing in line 19. Validated the custom field as well as the scrip. Edited the custom field and relinked the script to the edited custom field. Keeps failing.


    Any idea why this is failing?


  • tom@tbkconsulting.biz
    [email protected] Member, Managed Service Provider RED EYE

    The only thing I can think of that would cause that line in particular to fail would be if the custom field is not named exactly, but since you said you updated it and re-linked it, that cannot be the cause ... Check the actual procedure logs and see if there is more clues in there - it may be failing on a line prior to that line, but the script itself is not realizing it until that line ... Also see if the PS commands will run from LiveConnect and return results as well to see if that sheds any light on what is happening

  • David
    David Member CHOCOLATE MILK

    Hi!


    I have successfully imported the procedure, but it keeps failing in line 19. Validated the custom field as well as the scrip. Edited the custom field and relinked the script to the edited custom field. Keeps failing.


    Any idea why this is failing?


  • kmiller@bellingham-marine.com
    [email protected] Member, IT Pro CHOCOLATE MILK

    I'm late to the party but this looks like a great tool But, where do I fiind the “System Stability Monitor”? Thanks.

  • tom@tbkconsulting.biz
    [email protected] Member, Managed Service Provider RED EYE

    @TheNewZippo there is a download link for the XML file in the original post. Just need to download that, unzip it, then in your VSA do an import of the script and VOILA!

  • kmiller@bellingham-marine.com
    [email protected] Member, IT Pro CHOCOLATE MILK

    I'm late to the party but this looks like a great tool!