Состояние объекта меняется на неработоспособное, когда общее число событий производительности на стороне клиента для настроенной транзакции превышает пороговое значение монитора.
Предупреждения о производительности на стороне клиента создаются, если время загрузки страницы веб-приложения превышает настроенное пороговое значение. Общее время измеряется в веб-браузере, коррелируется со временем обработки на сервере, а затем разделяется на следующие категории, которые можно увидеть в сведениях о событии.
Время загрузки страницы может превышать пороговое значение:
времени запроса и ответа сети;
перенаправлений на страницы;
времени ответа сервера;
времени загрузки модели DOM;
загрузки периферийных ресурсов — времени, потраченного на загрузку на страницу внешних ресурсов, таких как изображения и сценарии.
Время выполнения обработчиков событий Window.OnLoad() на стороне клиента
Время отклика на вызовы AJAX может превышать пороговое значение:
времени запроса и ответа сети;
времени ответа сервера;
выполнения JavaScript.
Значительное время, потраченное на одну или несколько категорий, может указать на основную причину проблемы с производительностью. Например, время, затрачиваемое на обработку запросов и ответов сети, может указывать на медленное сетевое подключение. Длительное время ответа сервера может быть вызвано медленным серверным кодом; эту проблему можно устранить, исследуя связанные предупреждения о производительности сервера. Медленная загрузка DOM может быть связана со слишком сложной или большой страницей приложения и также может указывать на низкую производительность клиентского браузера. Длительное время выполнения события Window.OnLoad() или AJAX JavaScript указывает на неэффективный код на странице или может быть вызвано низкой производительностью клиентского браузера. Большое число перенаправлений страниц может быть вызвано сложным или неэффективным кодом приложения.
Предупреждения о производительности на стороне клиента создаются, если время выполнения превышает настроенное пороговое значение. К типичным причинам ухудшения производительности приложения относятся низкое быстродействие веб-сервера, медленная сеть или неэффективный код приложения.
Для получения дополнительных сведений об этом предупреждении используйте ссылку на сведения о событии в описании предупреждения или на вкладке "Контекст предупреждения". Ссылка откроет событие в консоли Application Diagnostics. Консоль диагностики приложения содержит информацию, связанную с этим событием, а также с другими схожими событиями, которые были обнаружены.
Target | Microsoft.SystemCenter.Apm.CsmWebPageTransaction | ||
Category | Alert | ||
Enabled | False | ||
Alert Generate | True | ||
Alert Severity | Warning | ||
Alert Priority | Normal | ||
Remotable | False | ||
Alert Message |
|
ID | Module Type | TypeId | RunAs |
---|---|---|---|
LOBProvider | DataSource | Microsoft.SystemCenter.Apm.Csm.CsmWebPageTransaction.LobDataProvider | Default |
AlertWriteAction | WriteAction | System.Health.GenerateAlert | Default |
<Rule ID="Microsoft.SystemCenter.Apm.CsmWebPageTransaction.AlertPerformanceAspectRule" Enabled="false" ConfirmDelivery="false" Target="Microsoft.SystemCenter.Apm.CsmWebPageTransaction" Remotable="false">
<Category>Alert</Category>
<DataSources>
<DataSource ID="LOBProvider" TypeID="Microsoft.SystemCenter.Apm.Csm.CsmWebPageTransaction.LobDataProvider">
<Name>$Target/Host/Property[Type="AL!Microsoft.SystemCenter.Apm.ApplicationInstanceBase"]/ApplicationName$ (Client)</Name>
<AspectType>performance</AspectType>
<RootName>$Target/Property[Type="Microsoft.SystemCenter.Apm.CsmWebPageTransaction"]/PageName$</RootName>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="AlertWriteAction" TypeID="Health!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>1</Severity>
<AlertMessageId>$MPElement[Name='Microsoft.SystemCenter.Apm.CsmWebPageTransaction.AlertPerformanceAspectRule.AlertMessage']$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Data/EventData/log/properties/property[name="scomProblemDescription"]/value$</AlertParameter1>
<AlertParameter2>$Data/EventData/log/alertingThreshold$</AlertParameter2>
<AlertParameter3>$Target/Host/Property[Type="AL!Microsoft.SystemCenter.Apm.ApplicationInstanceBase"]/ApplicationName$</AlertParameter3>
<AlertParameter4>$Target/Host/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/PrincipalName$</AlertParameter4>
<AlertParameter5>$Target/Property[Type="AL!Microsoft.SystemCenter.Apm.TransactionBase"]/TransactionName$</AlertParameter5>
<AlertParameter6>$Data/EventData/ViewDetail$</AlertParameter6>
</AlertParameters>
<Suppression>
<SuppressionValue>$Data/EventData/eventConsolidationHash$</SuppressionValue>
</Suppression>
<Custom1>Performance</Custom1>
</WriteAction>
</WriteActions>
</Rule>