警报订阅数据源模块确认性能阈值监视器。
由于过载的资源导致确认通知所花的时间比预期长,通知的生成将会延迟。 当通知子系统生成基于订阅的通知时便会收到确认。 确认减缓了确定子系统总体减缓的速度。
通知服务器速度减缓,无法跟上为产生的警报生成通知的速度。 通过通道确认通知发送的速度减缓。 这可能是由于以下原因引起的:
1. 警报风暴 - 生成的警报太多,超出了通知服务器在合理时间段内可以处理的数量。
2. 操作数据库过载,导致整个系统速度减缓。
通常可以减缓通知确认,这是由于通知资源池及其成员管理服务器(包含通知子系统)超载。 操作数据库可能超负荷或者资源正在被耗尽。
如果这些警报在数据仓库或报表组件安装期间或安装后不久生成,可能的原因是由于打开了警报流以及到数据仓库的状态转换。 但由于还未部署数据仓库的组件,因此对应的数据结构还不存在。 一般在安装的 30 分钟内执行部署。
未执行部署时,数据由警报和稍后将写入数据仓库的状态同步工作流保留。 因此这些工作流并不将数据放回至数据源,从而生成了警报。 一旦部署完成,将自动写入数据并且自动清除警报。
如果在数据仓库安装后的 120 分钟内未自动解决警报,则存在另一个问题。
通知子系统需要很长时间生成通知消息的确认。 这是由于通知子系统的可用资源不足的减缓所引起的。
注意通知子系统的高水位和低水位。 这些警报表示正在处理的操作数据库中的警报数据的程度。
检查管理组中的订阅。 如果存在任何订阅(这些订阅具有与其关联的复杂查询),它们将减缓所有通知的生成速度。 查看是否可以简化警报的条件。
可能拥有过多订阅。 检查你是否可以禁用或删除不必要的订阅。
承载“操作数据库”的计算机可能资源不足。 诊断被过度使用的资源硬件和软件。 添加更多资源可以减轻负载。
检查 Operations Manager 事件日志中的消息。 系统中的其他问题迹象可能引导你执行进一步的诊断步骤。
1. 检查警报视图中最新创建的警报。 如果生成的警报太多,请识别警报的根本原因并进行解决。
2. 如果无法停止警报,请禁用监视器上的警报生成,直到警报速率受到控制。
3. 如果所有通知都是关于相同警报的,请识别引起通知的订阅并禁用。 通知相关订阅的订阅 ID 通常可以在通知消息正文中找到。
4. 操作数据库或主持此数据库的计算机可能超载。 请使用操作数据库诊断步骤来验证是否可以解决这些问题。
Target | Microsoft.SystemCenter.RootManagementServer | ||
Parent Monitor | Microsoft.SystemCenter.HealthServiceModules.AlertSubscriptionDataSourceModule.Rollup | ||
Category | PerformanceHealth | ||
Enabled | False | ||
Alert Generate | True | ||
Alert Severity | Warning | ||
Alert Priority | High | ||
Alert Auto Resolve | True | ||
Monitor Type | Microsoft.Windows.2SingleEventLog2StateMonitorType | ||
Remotable | True | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | Default |
<UnitMonitor ID="Microsoft.SystemCenter.HealthServiceModules.AlertSubscriptionDataSourceModule.AcknowledgementPerformanceMonitor" Accessibility="Public" Enabled="false" Target="SCLibrary!Microsoft.SystemCenter.RootManagementServer" ParentMonitorID="Microsoft.SystemCenter.HealthServiceModules.AlertSubscriptionDataSourceModule.Rollup" Remotable="true" Priority="Normal" TypeID="Windows!Microsoft.Windows.2SingleEventLog2StateMonitorType" ConfirmDelivery="true">
<Category>PerformanceHealth</Category>
<AlertSettings AlertMessage="Microsoft.SystemCenter.HealthServiceModules.AlertSubscriptionDataSourceModule.AcknowledgementPerformanceMonitorMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>High</AlertPriority>
<AlertSeverity>Warning</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Data/Context/EventDescription$</AlertParameter1>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="AlertSubscriptionDataSourceAcknowledgementsRunningSlow" MonitorTypeStateID="FirstEventRaised" HealthState="Warning"/>
<OperationalState ID="AlertSubscriptionDataSourceAcknowledgementsRunningNormal" MonitorTypeStateID="SecondEventRaised" HealthState="Success"/>
</OperationalStates>
<Configuration>
<FirstComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</FirstComputerName>
<FirstLogName>Operations Manager</FirstLogName>
<FirstExpression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="Integer">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="Integer">11411</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">Health Service Modules</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="Integer">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="Integer">11412</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">Health Service Modules</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</SecondExpression>
</Configuration>
</UnitMonitor>