System Center 2012 Virtual Machine Manager Update 971244

Microsoft.SystemCenter.VirtualMachineManager.2012.VMMUpdate971244Monitor (UnitMonitor)

Monitors the presence of VMM update 971244

Knowledge Base article:

Summary

Update 971244 was not detected on the VMM management server.

Causes

Update 971244 was not detected on the VMM management server

Resolutions

Install update 971244 (Windows Remote Management (WinRM) does not accept HTTP authorization requests that are larger than 16 KB on a computer that is running Windows Server 2008 or Windows Vista) on the VMM management server.

External

http://support.microsoft.com/kb/971244

Element properties:

TargetMicrosoft.SystemCenter.VirtualMachineManager.2012.VMMManagementServer
Parent MonitorSystem.Health.AvailabilityState
CategoryAvailabilityHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityError
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.Windows.TimedScript.TwoStateMonitorType
RemotableTrue
AccessibilityPublic
Alert Message
VMM update 971244 not installed
VMM update 971244 is not installed on a computer. Computer name: {0}
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.SystemCenter.VirtualMachineManager.2012.VMMUpdate971244Monitor" Accessibility="Public" Target="VMM2012Discovery!Microsoft.SystemCenter.VirtualMachineManager.2012.VMMManagementServer" ParentMonitorID="SystemHealth!System.Health.AvailabilityState" Remotable="true" TypeID="Windows!Microsoft.Windows.TimedScript.TwoStateMonitorType">
<Category>AvailabilityHealth</Category>
<AlertSettings AlertMessage="Microsoft.SystemCenter.VirtualMachineManager.2012.VMMUpdate971244Monitor.AlertMessage">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Error</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</AlertParameter1>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="VMMUpdate971244IsNotInstalled" MonitorTypeStateID="Error" HealthState="Error"/>
<OperationalState ID="VMMUpdate971244Installed" MonitorTypeStateID="Success" HealthState="Success"/>
</OperationalStates>
<Configuration>
<IntervalSeconds>86400</IntervalSeconds>
<SyncTime/>
<ScriptName>CheckVMMUpdate971244MonitorScript.vbs</ScriptName>
<Arguments/>
<ScriptBody><Script>
' Copyright (c) Microsoft Corporation. All rights reserved.
' VBScript source code
' CheckVMMUpdate971244MonitorScript.vbs
Option Explicit

SetLocale("en-us")

' This Script is used to check if the VMM update 971244 is installed
' Through check the version of %Windir%\System32\wsmsvc.dll
' If the version is greater than "6.0.6002.22135",
' then it returns "Healthy", otherwise returns "Unhealthy"

Dim objFSO, winRMVersion, oAPI, oBag
const expectedVersion = "6.0.6002.22135"

Dim shell, windowsdir
set shell = WScript.CreateObject("WScript.Shell")
windowsdir = shell.ExpandEnvironmentStrings("%windir%")

Set oAPI = CreateObject("MOM.ScriptAPI")
Set oBag = oAPI.CreatePropertyBag()

' Get the version of %Windir%\System32\wsmsvc.dll
Set objFSO = CreateObject("Scripting.FileSystemObject")

Call oBag.AddValue("Expected File", "wsmsvc.dll")

' Check if the file exists
if objFSO.FileExists(windowsdir &amp; "\system32\wsmsvc.dll") Then
Call oBag.AddValue("Expected File Exists", "Yes")
winRMVersion = objFSO.GetFileVersion(windowsdir &amp; "\system32\wsmsvc.dll")
if winRMVersion &lt; expectedVersion Then
Call oBag.AddValue("Update 971244 Installed", "Not Installed")
else
Call oBag.AddValue("Update 971244 Installed", "Installed")
End if

Call oBag.AddValue("ActualVersion", winRMVersion)
Call oBag.AddValue("ExpectedVersion", expectedVersion)
Call oAPI.Return(oBag)
Else
Call oBag.AddValue("Expected File Exists", "No")
Call oBag.AddValue("Update 971244 Installed", "Not Installed")
End If
</Script></ScriptBody>
<TimeoutSeconds>300</TimeoutSeconds>
<ErrorExpression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">Property[@Name='Update 971244 Installed']</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">Not Installed</Value>
</ValueExpression>
</SimpleExpression>
</ErrorExpression>
<SuccessExpression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">Property[@Name='Update 971244 Installed']</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">Installed</Value>
</ValueExpression>
</SimpleExpression>
</SuccessExpression>
</Configuration>
</UnitMonitor>