Service Provider Foundation VMM web uç noktası izleyicisi

Microsoft.SystemCenter.SPF.Monitor.VMMEndpointGet (UnitMonitor)

SPF VMM web uç noktasının işletimsel durumunu izler.

Knowledge Base article:

Özet

VMM web arabiriminin SPF web sunucularından erişilebilirliğini ve çalışabilirliğini izler. Bu, düzenli aralıklarla bulut kaynaklarını almak için bir test web arabirimi çağrısı yapılarak gerçekleştirilir.

Yapılandırma

Bu izleyicinin doğru çalışması için, VMM sunucularındaki bulut kaynaklarına erişmek üzere yönetici iznine sahip olması gerekir. VMM web uç noktası için belirtilen Uygulama Havuzu hesabıyla aynı izni kullanan veya aynı izne sahip olan bir Farklı Çalıştır Hesabı oluşturun ve bu hesabı Microsoft Service Provider Foundation VMM Hesabı adlı Farklı Çalıştır profiline ekleyin.

Bu izleyicide aşağıdaki seçenekler yapılandırılabilir:

Seçenek

Tanım

Varsayılan

Uyarı Açık Durumu

İzleyicinin uyarı oluşturan sistem durumu.

İzleyici kritik sistem durumunda

Uyarı Önceliği

Bu izleyici için oluşturulan uyarının önceliği.

Yüksek

Uyarı Önem Derecesi

Bu izleyici için oluşturulan uyarının önceliği.

Kritik

Otomatik Çözümleme Uyarısı

İzleyici normal bir sistem durumuna geri döndüğünde uyarının otomatik olarak çözümlenip çözümlenmeyeceğini belirtir.

True

Etkin

İzleyicinin çalışması gerekip gerekmediğini belirtir.

True

Uyarı Oluşturur

İzleyicinin, uyarı durumuna veya kritik duruma geçerken uyarı oluşturması gerekip gerekmediğini belirtir.

True

Aralık

İzleyicinin çalıştığı zamanlar arasında geçen saniye sayısı.

300

Nedenler

Bu izleyici hatalıysa ve diğer bağlantı izleyicileri hatalı değilse, olası nedenler doku yapılandırma hatası veya izin hatasıdır. İzleyiciyi yapılandırmayla ilgili ayrıntılar için Yapılandırma bölümüne bakın.a ilişkin bilgiler için Yapılandırma bölümüne bakın.

Çözümler

Bulut kaynaklarında doku yapılandırması için hedef VMM sunucusunu denetleyin ve yönetici hesabına erişim haklarının verildiğinden emin olun. İzleyici için güvenliğin doğru yapılandırıldığından emin olun.

Element properties:

TargetMicrosoft.SystemCenter.SPF.SpfServer
Parent MonitorSystem.Health.AvailabilityState
CategoryAvailabilityHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityMatchMonitorHealth
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.SystemCenter.ServiceProviderFoundation.PowerShellModule.TwoStateMonitorType.PropertyBag
RemotableTrue
AccessibilityPublic
Alert Message
VMM Uç Noktasına Erişilemiyor
Service Provider Foundation VMM web uç noktası erişilebilir değil.
RunAsMicrosoft.SystemCenter.SPF.VmmEndpointAccount

Source Code:

<UnitMonitor ID="Microsoft.SystemCenter.SPF.Monitor.VMMEndpointGet" Accessibility="Public" Enabled="true" Target="Microsoft.SystemCenter.SPF.SpfServer" ParentMonitorID="Health!System.Health.AvailabilityState" Remotable="true" Priority="Normal" TypeID="Microsoft.SystemCenter.ServiceProviderFoundation.PowerShellModule.TwoStateMonitorType.PropertyBag" ConfirmDelivery="false" RunAs="Microsoft.SystemCenter.SPF.VmmEndpointAccount">
<Category>AvailabilityHealth</Category>
<AlertSettings AlertMessage="Microsoft.SystemCenter.SPF.Monitor.VMMEndpointGet.AlertMessage">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/Property[@Name='StatusCode']$</AlertParameter1>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="Error" MonitorTypeStateID="Error" HealthState="Error"/>
<OperationalState ID="Success" MonitorTypeStateID="Success" HealthState="Success"/>
</OperationalStates>
<Configuration>
<IntervalSeconds>300</IntervalSeconds>
<SyncTime/>
<ScriptName>HealthOfSpfServer.ps1</ScriptName>
<ScriptBody><Script>param
(
$PortNumber
)

$oAPI = new-object -comObject "MOM.ScriptAPI"
$propertyBag = $oAPI.CreatePropertyBag()

$errorActionSetting = $ErrorActionPreference

$downVmmServers = ""
$res = $null

try
{
$ErrorActionPreference = "Stop"

[Net.ServicePointManager]::ServerCertificateValidationCallback = {$true}

$req = [System.Net.WebRequest]::Create("https://localhost:$PortNumber/SC2012R2/VMM/Microsoft.Management.OData.svc/Clouds")
$req.UseDefaultCredentials = $true
$res = $req.GetResponse()
$int = [int]$res.StatusCode
if($int -eq 200)
{
$propertyBag.AddValue("Result", "Success")
}
else
{
$propertyBag.AddValue("Result", "Failure")
}

$propertyBag.AddValue("StatusCode", $int)

}
catch
{
$propertyBag.AddValue("Result", "Failure")
$propertyBag.AddValue("StatusCode", $_.Exception.Message)
}
finally
{
$ErrorActionPreference = $errorActionSetting
if($res -ne $null)
{
$res.Close()
}
$propertyBag
}
</Script></ScriptBody>
<Parameters>
<Parameter>
<Name>PortNumber</Name>
<Value>$Target/Property[Type="Microsoft.SystemCenter.SPF.SpfServerBase"]/PortNumber$</Value>
</Parameter>
</Parameters>
<TimeoutSeconds>300</TimeoutSeconds>
<ErrorExpression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">Property[@Name='Result']</XPathQuery>
</ValueExpression>
<Operator>NotEqual</Operator>
<ValueExpression>
<Value Type="String">Success</Value>
</ValueExpression>
</SimpleExpression>
</ErrorExpression>
<SuccessExpression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">Property[@Name='Result']</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">Success</Value>
</ValueExpression>
</SimpleExpression>
</SuccessExpression>
</Configuration>
</UnitMonitor>