SQL Server 磁盘空间监视器

Microsoft.SystemCenter2012.ConfigurationManager.SQLDBSpace (UnitMonitor)

此监视器检查 SQL Server 服务器上的可用磁盘空间是否充足。

Knowledge Base article:

摘要

支持 Configuration Manager 站点服务器的 SQL Server 数据库实例可能在多个驱动器之间或单一驱动器上具有数据库文件。 数据库中包含的数据包括一些内容,如 Configuration Manager 站点服务器支持的所有客户端的应用程序和包元数据、配置项定义、合规性结果以及硬件和软件清单结果。

Configuration Manager 监视配置为支持其站点服务器 SQL Server 数据库实例的所有驱动器的驱动器可用空间量。 Configuration Manager 预计 Configuration Manager 管理员配置的可用于站点服务器 SQL Server 数据库实例的数据库最小可用磁盘空间(默认阈值: 5GB - 严重;10GB - 警告)站点服务器的 SQL Server 数据库的可用实例超出了最小已配置阈值。

原因

解决方法

SQL Server 数据库管理员需要通过删除临时 DB 文件、缩减数据库文件或将附加存储分配给此站点的 SQL Server 数据库实例,来释放额外的磁盘空间。 SQL Server 数据库管理员应该与 Configuration Manager 管理员一起决定最佳的操作过程。 有关详细信息,请查看 [Configuration Manager 安装文件夹]\Logs 中的 hman.log。

Element properties:

TargetMicrosoft.SystemCenter2012.ConfigurationManager.SiteServer
Parent MonitorSystem.Health.ConfigurationState
CategoryConfigurationHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityMatchMonitorHealth
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.SystemCenter2012.ConfigurationManager.StatusMessage3StateMonitor
RemotableTrue
AccessibilityPublic
Alert Message
SQL Server 磁盘空间不足
SQL Server 服务器 {0} 上的磁盘空间不足。
RunAsDefault
CommentSIV:GEN0208

Source Code:

<UnitMonitor ID="Microsoft.SystemCenter2012.ConfigurationManager.SQLDBSpace" Comment="SIV:GEN0208" Accessibility="Public" Enabled="onEssentialMonitoring" Target="SCCM!Microsoft.SystemCenter2012.ConfigurationManager.SiteServer" ParentMonitorID="SystemHealth!System.Health.ConfigurationState" Remotable="true" Priority="Normal" TypeID="Microsoft.SystemCenter2012.ConfigurationManager.StatusMessage3StateMonitor" ConfirmDelivery="true">
<Category>ConfigurationHealth</Category>
<AlertSettings AlertMessage="Microsoft.SystemCenter2012.ConfigurationManager.SQLDBSpace_AlertMessageResourceID">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
<AlertParameters>
<AlertParameter1>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/PrincipalName$</AlertParameter1>
</AlertParameters>
</AlertSettings>
<OperationalStates>
<OperationalState ID="UIGeneratedOpStateIdff252e7667e34f9e9a9c6c2ac0652a1e" MonitorTypeStateID="Good" HealthState="Success"/>
<OperationalState ID="UIGeneratedOpStateId7ae1bf0a4fa04a67bb7855e09a0c6f49" MonitorTypeStateID="Warning" HealthState="Warning"/>
<OperationalState ID="UIGeneratedOpStateId4daaf19c706d4fb7b8aeb5b4bc996ef3" MonitorTypeStateID="Error" HealthState="Error"/>
</OperationalStates>
<Configuration>
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/PrincipalName$</ComputerName>
<ComponentName>SMS_HIERARCHY_MANAGER</ComponentName>
<RuleId>6FD0B53A-35DA-4da1-84C9-A9E1B6C12828</RuleId>
<IntervalSeconds>360</IntervalSeconds>
</Configuration>
</UnitMonitor>