Home » Microsoft Operations Manager 2005 (Page 4)

Category Archives: Microsoft Operations Manager 2005

Detailed Notification without notification workflow.

Your IT department presumably includes a number of team and roles. None of them want to get alert notification about machines or services that they do not administrate. If you want to setup a more detailed notification within your MOM environment I would recommend you to use MOM notification workflow. There is only one thing, MOM notification workflow does not work on SQL 2005. If your OnePoint database is running on a SQL 2005 machine you can´t use MOM notification workflow.

But :) There is another way to setup detailed notification. It takes a little more planning but it will work.

  1. Create a new rule group, name it something suitable like “Notification – All Critical Alerts”
  2. Associate it with a computer group, for example “Microsoft Windows 2003 Servers”
  3. Create a new alert rule in your new rule group
    Alert Criteria: of severity = Critical
    Responses: Send a notification to a notification group
  4. Commit Configuration Changes

So what have we done? We have a rule that will send a notification on any alert that have severity critical. This rule is associated with a computer group including all Windows 2003 servers, so it will only be alerts with severity critical from a machine running Windows 2003 server. How can we include management packs then?

  1. open properties for your new alert rule and click the alert criteria tab
  2. check the “only match alerts generated by rules in the following group:” and click “Browse”
  3. choose a management pack, for example Active Directory, click ok and then ok to close the properties window

What have we now done? We have added one more criterias to our alert rule, now a alert must be critical and come from a Windows 2003 server and be generated from the Active Directory management pack.

  • We control “which computers” with the associated computer group at the rule group level.
  • We control “which management pack” with the “only match alerts generated by rules in the following group:” criteria

You can also add advanced criteria for example severity is at least warning.

You can find more information about Notification Workflow Solution Accelerator here. If you decide to use NTWF Pete Zerger has done a great step by step guide that you can find here.

 

 

 

Links during january

MOM 2005 request sequences are not imported successfully when you follow the steps in the “Microsoft Operations Manager Web Sites and Services Management Pack Guide”

System Center Operations Manager 2007 Webcasts on TechNet

 Microsoft IT Showcase: Manageability Services at Microsoft

  • Overview of how the Microsoft Manageability Services group operates and changes the global Microsoft Information Technology environment utilizing the Microsoft Operations Framework with Systems Management Server and Microsoft Operations Manager. Download here

Availability of the Microsoft Operations Manager 2005 SP1 Agent Prerequisite Component for Windows XP Embedded software package

Reasons why you should use the Simple recovery model for the MOM 2005 OnePoint and SystemCenterReporting databases

 

 

Check two or more performance counters

I have done a script that will check two performance counters and generate an alert if both are over threshold values. It simple to add more performance counters and change the threshold values. I have test it on Windows Server 2003 and Window XP 32bit. Its fairly basic, but it will show you a way to generate an alert based on two or more performance counters.

strComputer = “.”
Set objWMIService = GetObject(“winmgmts:” _
& “{impersonationLevel=impersonate}!\\” & strComputer & “\root\cimv2”)
set objRefresher = CreateObject(“WbemScripting.SWbemRefresher”)
Set colItems = objRefresher.AddEnum _
(objWMIService, “Win32_PerfFormattedData_PerfOS_System”).objectSet
objRefresher.Refresh
For i = 1 to 2
For Each objItem in colItems

strProc = objItem.Processes
strCPUQL = objItem.ProcessorQueueLength

If strProc > 40 AND strCPUQL > 0 Then
Const EVENT_WARNING = 2
Set objShell = CreateObject(“Wscript.Shell”)
objShell.LogEvent 2, “Number of processer: ” & strProc & “. Processor Queue Lenght: ” & strCPUQL
End If
objRefresher.Refresh
Next
Next

1. Create a new script and paste the script source
2. Create a new event rule to run the script every X minute as respond
3. Create a new event rule to collect event ID 2 and event type of Warning
4. Commit configuration change

Monitor if a share is accessible

This script will check if a file in a share is accessible, if not, it will generate a local event.

strFile = "\\ntlcs\share\file_check.txt"
Set objFSO = CreateObject("Scripting.FileSystemObject")
If objFSO.FileExists(strFile) Then

Else
   Const EVENT_WARNING = 2
    Set objShell = CreateObject("Wscript.Shell")
    objShell.LogEvent 2, strFile & " is not accessible."
End If

  1. Create a new script and paste the script
  2. Create a new event rule to run the script every X minute as respond
  3. Create a new event rule to collect event ID 2 and event type of Warning
  4. Commit configuration change

MOM Email Service

David Wallis has made a cool application, MOM Email Service, that make it possible to acknowledge and resolve alerts by e-mail. You can read more about the application here. You can read more about David Wallis at his webpage. Great work !

Monitor file and directory size

This script will monitor file and directory size. It will generate performance data back to the management server. You can view this information under performance view in Operators Console or/and in reports. This first example will monitor the size C:\pagefile.sys
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFile = objFSO.GetFile("c:\pagefile.sys")
CreatePerfData "File","File Size",objFile.Path,objFile.Size
Sub CreatePerfData(strObjectName,strCounterName,strInstanceName,numValue)
    Set objPerfData = ScriptContext.CreatePerfData
    objPerfData.ObjectName = strObjectName
    objPerfData.CounterName =strCounterName
    objPerfData.InstanceName = strInstanceName
    objPerfData.Value = numValue
    ScriptContext.Submit objPerfData
End Sub

This example will monitor the size of all subfolders under C:\ 

Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFolder = objFSO.GetFolder("C:\")
Set colSubfolders = objFolder.Subfolders
For Each objSubfolder in colSubfolders
CreatePerfData "File","File Size",objSubfolder.Path,objSubfolder.Size
Next
Sub CreatePerfData(strObjectName,strCounterName,strInstanceName,numValue)
                    Set objPerfData = ScriptContext.CreatePerfData
                    objPerfData.ObjectName = strObjectName
                    objPerfData.CounterName =strCounterName
                    objPerfData.InstanceName = strInstanceName
                    objPerfData.Value = numValue
                    ScriptContext.Submit objPerfData
End Sub

  1. Insert the script as a new script in Administrator Console
  2. Create a event rule that run the script every X minute
  3. Commit configuration change and wait until the script has run
  4. Open Operator Console, click performance, click you server and choose your new FILE performance objects, click draw graph

There is a guide about how to create performance data reports at momresources.org

Monitor recovery mode

This script will check recovery mode of a MS SQL database. Its pretty simple to modify to check other databases or all databases. This example will check if the Onepoint database is running with SIMPLE recovery mode. If it does, a local event will be generated. You can then create a event rule to collect that event and generate an alert in MOM.

set cn = Nothing
set rs = nothing
strSQLServer = "localhost"
Set cn = CreateObject("ADODB.Connection")
Set rs = CreateObject("ADODB.Recordset")
cn.Open "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=master;Data Source=" & strSQLServer & ""
strSQLQuery = "select name, databasepropertyex(name, 'recovery') as RECOVERY from sysdatabases WHERE NAME = 'OnePoint'"

Set rs = cn.execute(strSQLQuery)
strDBName = rs("Name")
strMode = rs("Recovery")

If strMode = "SIMPLE" then
 Const EVENT_WARNING = 2
 Set objShell = CreateObject("Wscript.Shell")
 objShell.LogEvent 2, "The " & strDBName & " database is running in simple recovery mode"
End If

  1. Create a new script and paste this source
  2. Create a rule that run the script every X minute
  3. Create a rule that collects and generate alerts on event ID 2 from WSH in the application log.

Updated OpsMgr 2007 Documentation and Active Directory MP

New resources are available for your Operations Manager 2007 RC2 testing and feedback 
   

Active Directory management pack for Operations Manager 2007, the following problems was fixed: 
  • Defect: AD MP for Windows Server 2000/2003 – local discovery of the Domain Controller fails if targeted DC is using a non-US date/time/number format
  • Defect: AD MP for Windows Server 2000 (all locales – under certain conditions)

Documentation

  • How to cluster the root management server – The following procedures show how to install Operations Manager 2007 Root Management Servers on a Windows cluster
  • Operations Manager 2007 Quick Start Guide – The Quick Start Guide is designed to help you quickly deploy Operations Manager 2007 for evaluation purposes in a test environment.

http://connect.microsoft.com/systemcenter 

 

 

 

FAQ

I have notice a couple of common questions in newsgroups and forums this week.

Rule that will alert you if process X use more that Y % Processor Time
In this example I will montor if iexplorer (Internet Explorer) takes more that 1 % processor time. Maybe not a very common scenario, but it will work to show you how to setup this for other processes and thresholds.

First we need to create a new provider to collect the performance counter, and then an alert that will compare performance data and generates an alert. 

  1. Create a new provider in MOM 2005 Administrator Console
    Computer: or
    Object: Process (use “advanced” to enable this dropdown menu)
    Counter %Processor Time
    Instance: iexplorer (you might need to start that process before it shows up in the list)
  2. Create a new performance rule to compare performance data (threshold
    Provider:
    Schedule: Always process data
    Criteria: Leave default values
    Threshold: “Match when the threshold meet the following condition:” “greater than the following value: 1”
    Alert: Generate alert
    Alert suppression: Leave default settings
    Response: None
    Knowledge Base: Optional
    General: Input a name and verify that the rule is enabled 

That should do it. Note that it can take a couple of minutes before the new rule is active.

 

How do I see all members of a computer group?

  1. Start Operator Console
  2. Click public views
  3. Click computer groups
  4. Right-click a computer group and choose view -> computers

 

 

 

New MOM KB articles

Some KBs published during december 

The SystemCenterDTSPackageTask scheduled task is not completed successfully on a computer that is running MOM 2005 Reporting
http://support.microsoft.com/kb/929390

The MOM agent or the MOM server does not start, and event 9029 is logged in Microsoft Operations Manager 2005
http://support.microsoft.com/kb/883347/en-us

The MOM 2005 service does not start on a MOM Management Server
http://support.microsoft.com/kb/904746/en-us