Составные тенденции Vista, связанные с дисками. Компьютер

Microsoft.Windows.Client.Vista.ComputerGroup.DiskTrendsComputer (Rule)

Knowledge Base article:

Краткое описание

Это правило вызывает предупреждение, если для любого указанного типа компьютеров в данном предприятии существует опасная тенденция к увеличению числа ошибок диска.

Причины

Ошибки дисков

Element properties:

TargetMicrosoft.SystemCenter.DataWarehouse
CategoryEventCollection
EnabledTrue
Alert GenerateTrue
Alert SeverityWarning
Alert PriorityNormal
RemotableTrue
Alert Message
На этой неделе у дисков на компьютерах определенного типа в предприятии было ошибок на 20 \% больше, чем на прошлой неделе.
Для компьютеров определенного типа обнаружена тенденция к увеличению числа ошибок диска. Дополнительные сведения о данном типе компьютеров см. в разделе "Контекст предупреждения". Для составления более полной картины состояния работоспособности дисков см. "Отчет о работоспособности дисков Windows Vista", а для получения списка затронутых компьютеров см. "Отчет об ошибках дисков Windows Vista".

Member Modules:

ID Module Type TypeId RunAs 
DS DataSource Microsoft.Windows.Client.Vista.SQLProvider Default
GenerateAlert WriteAction System.Health.GenerateAlert Default

Source Code:

<Rule ID="Microsoft.Windows.Client.Vista.ComputerGroup.DiskTrendsComputer" Target="SCDW!Microsoft.SystemCenter.DataWarehouse" Enabled="true" ConfirmDelivery="true" DiscardLevel="60" Remotable="true" Priority="Normal">
<Category>EventCollection</Category>
<DataSources>
<DataSource ID="DS" TypeID="Microsoft.Windows.Client.Vista.SQLProvider">
<Query>
SELECT 1, Vista.ComputerData.Manufacturer + ' ' + Vista.ComputerData.Model
FROM Vista.vDiskFailureAggregationComputer AS Result
JOIN Vista.ComputerData ON (Vista.ComputerData.ComputerDataRowId = Result.ComputerDataRowId)
WHERE (SELECT SUM(NumDrives)
FROM Vista.vDiskFailureAggregationComputer AS ThisWeek
WHERE ThisWeek.ComputerDataRowId = Result.ComputerDataRowId
AND DATEDIFF(day, ThisWeek.DateTime, GETUTCDATE()) &lt;= 7
GROUP BY ThisWeek.ComputerDataRowId
)
&gt;= 1.2 *
(SELECT SUM(NumDrives)
FROM Vista.vDiskFailureAggregationComputer AS LastWeek
WHERE LastWeek.ComputerDataRowId = Result.ComputerDataRowId
AND DATEDIFF(day, LastWeek.DateTime, GETUTCDATE()) &lt;= 14
AND DATEDIFF(day, LastWeek.DateTime, GETUTCDATE()) &gt; 7
GROUP BY LastWeek.ComputerDataRowId
)
GROUP BY Vista.ComputerData.Manufacturer + ' ' + Vista.ComputerData.Model
</Query>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="GenerateAlert" TypeID="SystemHealth!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>1</Severity>
<AlertMessageId>$MPElement[Name="Microsoft.Windows.Client.Vista.ComputerGroup.DiskTrendsComputer.AlertMessage"]$</AlertMessageId>
<AlertParameters/>
<Suppression>
<SuppressionValue/>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>