How to report on disk errors for clients using Custom Inventory Rules and the K1000


With our new Monitoring feature on 6.3, you can now monitor the event viewer logs and create notifications and help desk tickets based on those alerts. 
However, this does not work for workstations, only servers. 

If you would like to be able monitor your workstations in some fashion, below is a method using Custom Inventory Rules and Reporting

Step 1: Getting the data using Custom Inventory Rules

  1. Create a new software item under Inventory > Software > Choose Action > New
  2. Give the item a name: Windows Event viewer log - Disk errors
  3. In the Custom Inventory Rule text box, enter the below:
    1. ShellCommandTextReturn(cmd /q /c powershell.exe -command "Get-EventLog -LogName System -EntryType Error -Source "*Disk*" -After (Get-Date).AddDays(-1) | format-list -property TimeGenerated ,EventID , Source, UserName ,Message")
  4. Highlight the Operating Systems for Windows using Shift+Click or Ctrl+Click
  5. Click Save
  6. Under Inventory > Devices, force an inventory on a device
The rule should look like this when you create it:


Once the inventory finishes, you should have data under the Custom Inventory Rule section

Step 2: Setup Notification

You can also setup a Notification under Devices > Notification. 
Use the search criteria of:
Windows Event viewer log - Disk errors | > | 0
Give the notification an Email Address you will see what machines have returned data


Step 3: Setup report

When you receive the alert like the above, it doesn't show you what exact error there is. 
With a report, you can have it scheduled or ran manually to send you the actual details\

If you want to just download the report, you can download it here:


*Notice i don't have anything in the Errors columns since none of my machines don't have disk errors, which is a good thing :)

If anyone has questions, or runs this rule and gets actual disk error returns, please share in the comments
Be the first to comment

randomly assign to different owners in kace


here is the update portion of a ticket rule we use to randomly assign to two different owners:

Would be easy to pull a random 1-10 and then based on ranges assign to different owners as well.

We use this in conjunction with a select statement that forces our student workers to only be able to assign tickets to unassigned, themselves, or the two professional staff below. For example, if they try to assign a ticket directly to our CIO, the rule automatically randomly assigns the ticket to one of the professional staff below for review and escalation from there if needed.

Best, Tim





T5.USER_NAME = CASE ROUND(RAND()) /*returns 1 or 0*/

WHEN 0 THEN 'FirstOwnerName'

ELSE 'SecondOwnerName'


Be the first to comment

ExpertAssist giving errors about Java with Chrome 42

Something I thought I would share. Was trying to use ExpertAssist yesterday and it said java was out of date, but I have the most recent version.

Java is not installed or it is disabled. Please download and install Java version 1.5.0_5 or above. Chrome users must install the latest Java version. 

I found that with Chrome version 42 you have to enable NPAPI:



If you have Chrome version 42 or higher, you have to enable NPAPI for Java to work right.


Once I followed that article, it worked like a charm!

View comments (1)

Use RecoverKeys utility to obtain license keys on K1000 v6.3

Credit - Whitz for his original post... 

> This is an update to his article using latest RecoverKeys version 8.03.113 .

**RecoverKeys is a paid product and can be purchased here:** 

There are two versions available, 64 bit Enterprise or 32 bit Enterprise version that come with a command line utility.

You can use the paid enterprise version of recover keys to retrieve any supported license keys.  The vb script available will upload an HTML file listing all of the keys retrieved from a system as well as write them to the registry so they can be retrieved with a custom inventory rule. 

You will first need to install the program on your local system to obtain the file dependencies needed for the script to run successfully.  

  -  Make note of default install location 

 - Accept administrative changes being made to your system


Ø  -  Local computer scan will show what we can access from your machine…


Ø  When you buy your Enterprise license, open “Order Me” icon… and enter your license key.

Ø   -  Local scan reports all keys except for some KMS/MAK “hidden” keys. (See web site for support issues.)

Ø   - Most of the files needed will be found in the installation directory (default is c:\program files (x86)\recover keys).  

The files needed are: 

  1. English.xml (found in the Lang directory)

  2. RecoverKeysCmd.exe  

  3. Licensekeys_rk23.vbs

Download .vbs here: (

Ø  We will configure an offline k-script as shown below to run the program and gather our keys.



Ø  Configure your script as an Offline Kscript.  Configure the tasks as shown above.  The parameters section for steps 1, 3, and 4 are below so you can copy and paste. 

1  -scanlocal -HTML -hideheader -key:YOURKEYHERE -FILE:"$(KACE_DEPENDENCY_DIR)\rk.html"

3  -scanlocal -TSF  -hideheader  -key:YOURKEYHERE -FILE:"$(KACE_DEPENDENCY_DIR)\rktab.txt"

4  "$(KACE_DEPENDENCY_DIR)\licensekeys_rk23.vbs" "/path:$(KACE_DEPENDENCY_DIR)\rktab.txt"

Ø  Once this is configured save all the changes then save the script itself.  You can now choose machines to run the script on whatever schedule you wish. 

The VBS file in the script will write the keys to the registry so they can be added to the inventory with a custom inventory rule.  Once they are part of the inventory you can report against those fields.

Ø  To create a record with a custom inventory rule, go to Inventory > Software.  Click the Choose Action drop down and choose add new item.

 Name the record and then fill in the custom inventory rule section.  We will be  using "RegistryValueReturn" for this instance.  The keys will be stored in one of two places. 

On 64-bit systems it will be "HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\kace\Software Licenses All". 

On 32-bit sytems it will be "HKEY_LOCAL_MACHINE\SOFTWARE\kace\Software Licenses All"

 Here is an example custom inventory rule:

"RegistryValueReturn(HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\kace\Software Licenses All, Windows 7 Enterprise  License Key, REG_SZ)"


 This will return the “Windows 7 Enterprise key” under the custom inventory rules section of the systems inventory.  

*** You can create multiple inventory rules to pull in the software key items of your choice.  


Command line syntax:
Be the first to comment

Custom Inventory Rule to Find Devices that have a device enabled to Wake Computer

First off, there are a few devices that you probably won't think of right away that can wake up your machine.  On my Precision M4700 I had 2 fingerprint sensor devices that had this function turned on.  Here is a way to inventory machines and find out the devices that have wake capabilities.  Including NIC cards if WOL is enabled.

Create a new software record in KACE.  Call it Devices with WOL Enabled

Make sure all Windows OS are selected.  VERY IMPORTANT!

Custom Inventory Rule:  ShellCommandTextReturn(powercfg /devicequery wake_armed)

This tells the system to run the command   powercfg /devicequery wake_armed and return the value(s) if any into this Custom Inventory Record (CI).

That should do it...enjoy.

Be the first to comment
Showing 1 - 5 of 2707 results