APM 寫入動作可用性

Microsoft.SystemCenter.Apm.Infrastructure.Monitoring.ManagementServer.APMWriteAction.Monitor (UnitMonitor)

此監視會確認 APM 寫入動作是否順利儲存操作資料庫中的事件。當 APM 事件無法提交到資料庫時,此監視會轉為警告狀態,並在恢復插入時重設為狀況良好。

Knowledge Base article:

摘要

將 APM 事件寫入至操作資料庫時,若管理伺服器上偵測到錯誤,則執行個體狀態會變為狀況不良。

原因

通常這取決於資料庫的可用性、其負載,以及系統上的一般負載。如果監視重設為狀況良好狀態,表示可能是暫時性的狀況。

解決方式

確認操作資料庫已啟動且正在執行。

Element properties:

TargetMicrosoft.SystemCenter.CollectionManagementServer
Parent MonitorSystem.Health.AvailabilityState
CategoryConfigurationHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityMatchMonitorHealth
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.Windows.2SingleEventLog2StateMonitorType
RemotableFalse
AccessibilityPublic
Alert Message
APM 寫入動作無法提交事件到資料庫
APM 寫入動作在提交事件到資料庫時發生錯誤。
RunAsDefault

Source Code:

<UnitMonitor ID="Microsoft.SystemCenter.Apm.Infrastructure.Monitoring.ManagementServer.APMWriteAction.Monitor" Accessibility="Public" Enabled="true" ParentMonitorID="Health!System.Health.AvailabilityState" Target="SC!Microsoft.SystemCenter.CollectionManagementServer" TypeID="Windows!Microsoft.Windows.2SingleEventLog2StateMonitorType" Remotable="false" Priority="Normal" ConfirmDelivery="false">
<Category>ConfigurationHealth</Category>
<AlertSettings AlertMessage="Microsoft.SystemCenter.Apm.Infrastructure.Monitoring.ManagementServer.APMWriteAction.Monitor.AlertMessageResourceID">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/EventDescription$</AlertParameter1>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="SuccessfulEventSubmission" MonitorTypeStateID="SecondEventRaised" HealthState="Success"/>
<OperationalState ID="FailedEventSubmission" MonitorTypeStateID="FirstEventRaised" HealthState="Warning"/>
</OperationalStates>
<Configuration>
<FirstComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</FirstComputerName>
<FirstLogName>Operations Manager</FirstLogName>
<FirstExpression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">.NET app monitoring</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">34051</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</FirstExpression>
<SecondComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</SecondComputerName>
<SecondLogName>Operations Manager</SecondLogName>
<SecondExpression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">.NET app monitoring</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">34052</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</SecondExpression>
</Configuration>
</UnitMonitor>