Создать предупреждение для события сбоя приложения APM

Microsoft.SystemCenter.Apm.ApplicationInstance.AlertAppFailureAspectRule (Rule)

Knowledge Base article:

Сводка

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

Причины

Предупреждения об исключениях приложения возникают из-за необрабатываемых исключений и исключений верхнего уровня, препятствующих выполнению задач приложениями. Дополнительные сведения о предупреждении содержат тип исключения и стек вызовов исключения. Исключения приложений обусловлены ошибками в коде приложений. Для таких исключений требуется анализ трассировки стека и значений данных, используемых в функциях.

Решения

Предупреждения о сбоях приложения возникают из-за необработанных исключений в приложении. Для устранения этих исключений проверьте тип исключения и функцию, создавшую исключение. Устранение проблем такого типа обычно требует доступа к исходному коду приложения.

Для получения дополнительных сведений об этом предупреждении используйте ссылку на сведения о событии в описании предупреждения или на вкладке "Контекст предупреждения". Ссылка откроет событие в консоли диагностики приложения. Консоль диагностики приложения содержит информацию, связанную с этим событием, а также с другими схожими событиями, которые были обнаружены.

Element properties:

TargetMicrosoft.SystemCenter.Apm.ApplicationInstance
CategoryAlert
EnabledFalse
Alert GenerateTrue
Alert SeverityWarning
Alert PriorityNormal
RemotableFalse
Alert Message
Исключение приложения сервера
В "{0}" в {1} произошел сбой приложения. Исключение типа "{2}" с сообщением "{3}" создано в "{4}". Для получения дополнительной информации используйте следующую ссылку: $Url[Query='{5}']/APMEvent$

Member Modules:

ID Module Type TypeId RunAs 
LOBProvider DataSource Microsoft.SystemCenter.Apm.LobDataProvider Default
AlertWriteAction WriteAction System.Health.GenerateAlert Default

Source Code:

<Rule ID="Microsoft.SystemCenter.Apm.ApplicationInstance.AlertAppFailureAspectRule" Enabled="false" ConfirmDelivery="true" Target="Microsoft.SystemCenter.Apm.ApplicationInstance" Remotable="false">
<Category>Alert</Category>
<DataSources>
<DataSource ID="LOBProvider" TypeID="Microsoft.SystemCenter.Apm.LobDataProvider">
<Name>$Target/Property[Type="Microsoft.SystemCenter.Apm.ApplicationInstanceBase"]/ApplicationName$</Name>
<AspectType>applicationfailure</AspectType>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="AlertWriteAction" TypeID="Health!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>1</Severity>
<AlertMessageId>$MPElement[Name='Microsoft.SystemCenter.Apm.ApplicationInstance.AlertAppFailureAspectRule.AlertMessage']$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Target/Property[Type="Microsoft.SystemCenter.Apm.ApplicationInstanceBase"]/ApplicationName$</AlertParameter1>
<AlertParameter2>$Target/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/PrincipalName$</AlertParameter2>
<AlertParameter3>$Data/EventData/exceptionclass$</AlertParameter3>
<AlertParameter4>$Data/EventData/message$</AlertParameter4>
<AlertParameter5>$Data/EventData/name$</AlertParameter5>
<AlertParameter6>$Data/EventData/ViewDetail$</AlertParameter6>
</AlertParameters>
<Suppression>
<SuppressionValue>$Data/EventData/eventConsolidationHash$</SuppressionValue>
</Suppression>
<Custom1>ApplicationFailure</Custom1>
</WriteAction>
</WriteActions>
</Rule>