Tag Archives: monitoring

QuickMon 5.0.1

I’ve added a small but useful piece of functionality (probably long overdue) to the File/Directory collector of QuickMon. You can now specify the last X number of lines of a text file to check for the specified text to search for.

This is specifically intended for checking Text log files where lines of text are appended the whole time.

Download from Github

 

QuickMon 5

Well, the day has come to put the next major version of QuickMon on the street. Version 5.0.0 is now available for download from GitHub -> Version 5

It might not be  100% complete yet as I always have ideas how to possibly enhance or improve it but it is fully working as it is now. Please try it out.

The New

The biggest change from the previous version is in the UI where there is now more details available from the main window. The main window has been reworked to look more modern plus you don’t have to launch a separate(from the details window) editing window for a collector to edit its settings. The collector detail window has been enhanced so you can more easily see what the current and past state of a collector is/was. Then there is the reworked functionality around corrective scripts plus variable inheritance.

What didn’t make the cut

Initially the plan was for to transfer all Version 4 functionality but a few features did not make it. Support for Windows XP has now been dropped (since .Net 4.5 is not supported on it). The BizTalk and Active Directory collectors has not yet been recreated (perhaps later one day…) since they rarely got used as far as I could tell. Also, the ‘details’ table view has been dropped for now since there is now so much other details available per collector.

Collectors

The following Collectors are provided so far:

  • Event log
  • File/Directory
  • Performance counters
  • Ping (ICMP/HTTP/Sockets)
  • PowerShell
  • Registry
  • SQL (including OLEDB)
  • SSH (General query/CPU/Memory/Disk IO and space)
  • Web Services
  • Windows Services
  • WMI

Let’s get started!

Well, don’t waste more time reading about it! Head over to the download and try it out!

QuickMon 5 Beta

This is just a quick note to say that QuickMon 5 has reached Beta status. It is now mostly done with only some minor bug fixes and tweaks that needs left to be done.

Most of the functionality of version 4 was copied over – with a few exceptions. More on that at a later stage. The biggest improvements are around the application GUI to make it easier to see details without drilling down too much.

Download a copy from Github – https://github.com/RudolfHenning/QuickMon/releases

Feedback welcome.

SCOM agent Info script

When you have a case where you start integrating your in house SCOM 2012 R2 environment with VMs that are hosted in Azure and ‘other’ people keep on screwing up your SCOM agents with the OMS version you need a way to track what version is actually installed on a machine – plus whether the original SCOM 2012 R2 config is still in tact – which is  not the case since the upgrade process from SCOM 2012 R2 agent to the OMS version totally screws up the SCOM 2012 R2 config (like in F*ing deletes it !!!)

Therefore I had to create a little Powershell script to help check suspected machines if they have been affected by this issue. From the SCOM console side it just appears the Agent is ‘dead’ even though if you check manually it is still running (but of course the config is gone).

if ($args.count -ne 0) {
    $ComputerName = $args[0]    
}
else {
    $ComputerName = Read-Host -Prompt 'Computer Name'
}

$pingTest = (Test-Connection $ComputerName -Count 1 -TTL 255 -ErrorAction SilentlyContinue) 
if ($pingTest -ne $null -and $pingTest.IPV4Address -ne $null){
    write-host "IP Address : " $pingTest.IPV4Address.IPAddressToString -foregroundcolor "green"
    $serviceDetails = Get-Service -ComputerName $ComputerName | where DisplayName -Like 'Microsoft Monitoring Agent'
    if ($serviceDetails -ne $null ) {
        write-host "Health Service state: " $serviceDetails.Status.ToString() -foregroundcolor "green"

        $Reg = [Microsoft.Win32.RegistryKey]::OpenRemoteBaseKey('LocalMachine', $ComputerName)
        $AgentGroupKeys = $Reg.OpenSubKey("SYSTEM\CurrentControlSet\Services\HealthService\Parameters\Management Groups")
        write-host "Groups: " $AgentGroupKeys.SubKeyCount.ToString() -foregroundcolor "green"
        $AgentGroupKeys.GetSubKeyNames() | % {
            if ($_ -like "AOI*") {
                write-host " OMS" -foregroundcolor "yellow"
            } else {
                write-host " $_" -foregroundcolor "green"
            }            
        }        
        
        $VersionNo = "NOT found!"
        $RegKeyProducts = $Reg.OpenSubKey("SOFTWARE\Classes\Installer\Products")
        $RegKeyProducts.GetSubKeyNames() | % {
            $RegKeyProduct = $Reg.OpenSubKey("SOFTWARE\Classes\Installer\Products\" + $_)
            if ($RegKeyProduct.GetValue('ProductName') -eq "Microsoft Monitoring Agent") {
                $VersionNo = $RegKeyProduct.GetValue('Version').ToString("X")
            }
        }

        if ($VersionNo -ne "NOT found!") {
            write-host "Agent version" $VersionNo -foregroundcolor "green"
        }
        else {
            write-host "Agent version not found!" -foregroundcolor "red"
        }

    }
    else {
        write-host "Health service NOT found!" -foregroundcolor "red"
    }
}
else {
    write-host "$ComputerName is not pingable!" -foregroundcolor "red"
}

This script first checks whether the machine (VM) is pingable, if it is then whether the HealthService service is installed, if so what state it is in and what version it is. It also lists the management groups the agent reports to including OMS.

Have fun kidz…

QuickMon 4

Just a quick post to announce the first (official) release of QuickMon 4.

There might be some minor bugs that must be ironed out but the basic product is done.

Have fun.

QuickMon 4 Beta

Heads up folks! A public Beta of QuickMon 4 has been released. Please go to QuickMon to download and play with it.

People that has not seen the Alpha yet would notice some major changes compared to version 3.x. The biggest change it that a Collector (now called Collector host) can contain multiple agents of multiple types all tested together to raise one single alert if needed. Of course you can still use it the old way with a collector host containing only a single agent type and have child collector hosts depending on it.

Another area of big change is that viewing the details of a collector’s state, stats, history, alert details and other info gathered are all placed inside a single view (window). This makes it a lot easier to see what is happening with alerts. This detail view is now also ‘Remote host’ aware so it will run and gather details from a (QuickMon 4) remote host as if it is running on ‘that’ machine.

Ok, go download it and have fun… and report back if you have issues or suggestions.

QuickMon HTTP Activation catch

I recently created a test Windows 8 (8.1) VM to just play around and took the opportunity to test the QuickMon install as well. Usually I simply test on my own machine where I know it works already. This is of course not a major problem in itself but it means I’m not testing what will happen to the tool if you install it on a fresh/clean machine.

Surprisingly/luckily just about everything worked first time – not that I expected less (ye ye a bit arrogant I know 😉 ) and I was happy that QuickMon ‘out of the box’ is so good. However…. there is one thing that did not work as expected (ok ok it did not work at all) – The Remote host functionality built into the Windows Service.

This is actually not a QuickMon problem per se – it is a requirement of or dependency on the underlying operating system that the WCF functionality must be available. The remote host functionality of QuickMon uses HTTP Activation which is not installed by default on a new Windows 8 (or probably previous versions) installation.

The ‘fix’ is really simple – simply go to ‘Control Panel’ -> ‘Turn Windows features on or off’ -> .Net Framework 4.5 Advanced Services (or 4.0 if present) -> WCF Services -> check HTTP Activation on. Then do a reboot even though Windows doesn’t ask for it after the install – somehow the functionality does not really work right away. It should then be working provided you checked all the other know issues – like firewalls and stuff.

I’ll see if I can build in some check into the service itself to generate an error (Event log or something) to high-light if this feature is not available on the operating system where it needs to run.

One more thing to add to QuickMon… hehe

QuickMon 3.7

It has been a while since I mentioned any updates of my QuickMon monitoring tool. It has now reached version 3.7 with many new and improved features. There are so many that I can’t remember all of them now but here are some highlights:

  • Context menu for Collectors (and Notifiers) improved
  • View statistics of collector polls
  • Copy and Paste of Collectors or whole branches in the tree view
  • General UI has been simplified (several times)
  • Remote Agents (query resources via another machine)
  • An OleDb query collector has been added (with limitations)
  • Restoration scripts (opposite or corrective scripts)
  • Alert suppression based on # of polls
  • Ability to register the Service (and remote host) plus add firewall exception rule from application itself
  • Some minor fixes to existing collectors

QuickMon3.7

Get it from CodePlex here.

QuickMon 3

QuickMon 3 has been released (3.1 is already out)

Hope you like it and please give feedback. To see some screen shots look at this.

QuickMon 3 Beta

A quick heads-up. I’ve released a Beta version of QuickMon3 on CodePlex. I’ll post a more detail listing of all the features once the final version is relased but here is a quick summary:

1. Introduction of ‘Remote agents’, aka The Windows service acts as a remote host so collectors can be run as if they run on the host machine (where the service runs). It makes use of WCF.
2. Consolidation of existing Ping collectors (ICMP, HTTP and sockets)
3. Simplification of UI (as far as possible)
4. ‘Editing’ configuration can be done straight from the main UI (no separate editing window)
5. ‘Service windows’ have been changed a bit (simplified I hope)
6. It is not 100% compatible with qmconfig files of version 2.0 (will attempt to upgrade them but then QuickMon 2 won’t be able to use them anymore.
7. It can run side-by-side with QuickMon 2 – provided it is installed into a separate directory (default anyway)

QuickMon 3 use the .Net 4.0 framework and was developed using VS2013 Express for Desktop. It has been tested on Windows 7 (x64), Windows 8, 2003, 2008 so far – but it should work on all versions compatible with .Net 4.0.

Go grab it here.

MainWindow Example

MainWindow Example