Настройка пользовательских ошибок
Dynatrace классифицирует ошибки по следующим типам:
- Ошибки запросов обнаруживаются браузером и OneAgent на ваших серверах.
- Пользовательские ошибки инициируются непосредственно в вашем приложении через RUM JavaScript API .
- Ошибки JavaScript — это обнаруженные исключения JavaScript, выдаваемые браузером.
Чтобы настроить захват ошибок, отредактируйте приложение и разверните раздел « Ошибки ». Выберите требуемый тип ошибки, а затем настройте ошибку для захвата, включения в расчеты Apdex или рассмотрения при обнаружении и анализе проблем ИИ Davis .
Настроить ошибки запроса
По умолчанию Dynatrace считает все коды состояния 4xx
и 5xx
коды состояния HTTP ошибками запроса. Нарушения CSP и ошибки с неудачными запросами изображений также регистрируются как ошибки запросов. Кроме того, RUM JavaScript также может использовать пользовательские коды состояния, чтобы информировать вас о проблемах с инфраструктурой.
Вы можете изменить настройки по умолчанию, настроив правила обработки ошибок запросов.
Добавить правило ошибки запроса
Чтобы добавить правило ошибки запроса
- В меню Dynatrace выберите Web .
- Выберите приложение, которое вы хотите настроить.
- В правом верхнем углу страницы обзора приложения выберите Дополнительно ( … ) > Изменить .
- В настройках приложения выберите Ошибки > Запросить ошибки .
- Выберите Добавить правило ошибки запроса .
- Используйте хотя бы один из следующих вариантов:
- Совпадение по коду ошибки . Укажите либо отдельный код ошибки HTTP, например
404
, либо весь диапазон кодов ошибок, например400-499
. - Сопоставление по ошибкам, из-за которых не удалось выполнить запрос изображения
- Сопоставление по ошибкам, имеющим нарушения CSP
- Совпадение по коду ошибки . Укажите либо отдельный код ошибки HTTP, например
- по желаниюЧтобы применить правило ошибки запроса только к определенным URL-адресам, настройте параметры в разделе Настройки фильтра .
- Укажите, хотите ли вы зафиксировать эту ошибку . Кроме того, вы можете включить ошибку в расчеты Apdex и включить ошибку в обнаружение и анализ проблем с искусственным интеллектом Дэвиса . Если вы решите включить ошибку в анализ ИИ Дейвиса, Дэвис может сообщить об этой ошибке как о новой открытой проблеме.
Правила обработки ошибок запросов выполняются в порядке их появления в списке ошибок. Выберите Переместить вверх или Переместить вниз, чтобы изменить приоритет правила.
Вы также можете включить параметр « Игнорировать ошибки запросов» в вычислениях Apdex , чтобы переопределить настройки Apdex для отдельных правил ошибок запросов.
Управление пользовательскими кодами состояния
Помимо захвата стандартных кодов ошибок HTTP, RUM JavaScript также может использовать пользовательские коды состояния, чтобы сигнализировать об обнаружении проблемы с инфраструктурой.
Для приложений, созданных с помощью Dynatrace версии 1.238+, RUM JavaScript сообщает о некоторых ошибках запросов с использованием пользовательских кодов состояния, 970
когда 979
реальный код состояния HTTP не может быть захвачен. Обратите внимание, что эти пользовательские коды состояния не являются реальными кодами состояния HTTP; они просто означают, что RUM JavaScript обнаружил ошибку, вызванную используемой вами структурой.
Влияют ли такие ошибки запросов на ваших пользователей, зависит от вашего приложения. Например, если вы отправляете запрос в службу отслеживания, а запрос отменяется, такая ошибка практически не повлияет на пользователей вашего приложения. Тем не менее, неудачный запрос на оплату определенно причинит им неудобства.
В RUM JavaScript используются следующие настраиваемые коды состояния:
Код | Имя | Объяснение |
---|---|---|
970 | Ошибка | Произошла неизвестная ошибка в используемом фреймворке. |
971 | Отменено | Запрос был отменен. |
972 | Тайм-аут | В запросе истекло время ожидания. |
973 | Разобрать | Не удалось обработать ответ. Сообщается модулями XMLHttpRequest, jQuery и MooTools. |
974 | Настраивать | При настройке запроса произошла ошибка. Сообщается только модулем MooTools. |
979 | Неизвестный | Произошла неизвестная ошибка платформы. Сообщается только модулями jQuery и MooTools. |
Приложения, созданные, начиная с Dynatrace версии 1.238
Для приложений, созданных, начиная с версии Dynatrace 1.238, эти пользовательские коды состояния обнаруживаются автоматически. Они включены в расчеты Apdex, но не учитываются при анализе ИИ Дейвиса.
Если вы хотите игнорировать эти настраиваемые коды состояния, удалите или отключите правило ошибки запроса HTTP 970-979 .
Чтобы удалить или отключить правило ошибок запроса HTTP 970-979
- В меню Dynatrace выберите Web .
- Выберите приложение, которое вы хотите настроить.
- В правом верхнем углу страницы обзора приложения выберите Дополнительно ( … ) > Изменить .
- В настройках приложения выберите Ошибки > Запросить ошибки .
- Найдите правило ошибок HTTP 970-979 и выполните одно из следующих действий:
- Выберите Удалить строку , чтобы полностью удалить это правило ошибки запроса.
- Разверните правило и отключите параметр Зафиксировать эту ошибку .
Приложения, созданные до версии Dynatrace 1.238
Для приложений, созданных с помощью версий Dynatrace до 1.238, пользовательские коды состояния не используются. Если вы хотите перехватывать эти коды, добавьте правило ошибки запроса со следующими настройками:
- Соответствие по коду ошибки :
970-979
- Зафиксируйте эту ошибку :
Enabled
- Включить ошибку в расчеты Apdex :
Enabled
илиDisabled
исходя из ваших потребностей - Включите ошибку в обнаружение и анализ проблем ИИ Дейвиса :
Enabled
илиDisabled
в зависимости от ваших потребностей
Настройка пользовательских ошибок
Пользовательские ошибки позволяют обнаруживать собственные ошибки. Примером этого является ошибка, возникающая во время проверки поля формы.
Чтобы настроить пользовательскую ошибку, настройте, как Dynatrace должна обрабатывать ошибку, а затем инициируйте ошибку в своем приложении с помощью RUM JavaScript API .
Чтобы добавить пользовательское правило ошибок
- В меню Dynatrace выберите Web .
- Выберите приложение, которое вы хотите настроить.
- В правом верхнем углу страницы обзора приложения выберите Дополнительно ( … ) > Изменить .
- В настройках приложения выберите « Ошибки» > « Пользовательские ошибки » .
- Выберите Добавить пользовательское правило ошибок .
- Укажите условия, которые Dynatrace должна использовать для идентификации пользовательской ошибки.
- Используйте ключ соответствия и шаблон ключа для пользовательской ошибки
key
. - Используйте значение соответствия и шаблон значения для пользовательской ошибки
value
. Пользовательские правила обработки ошибок нечувствительны к регистру. Например, такие значения, какmykey
иMyKeY
, обрабатываются одинаково.
- Используйте ключ соответствия и шаблон ключа для пользовательской ошибки
- Укажите, хотите ли вы зафиксировать эту ошибку . Кроме того, вы можете включить ошибку в расчеты Apdex и включить ошибку в обнаружение и анализ проблем с искусственным интеллектом Дэвиса . Если вы решите включить ошибку в анализ ИИ Дейвиса, Дэвис может сообщить об этой ошибке как о новой открытой проблеме.
Пользовательские правила обработки ошибок выполняются в порядке их появления в списке ошибок. Выберите Переместить вверх или Переместить вниз, чтобы изменить приоритет правила.
Вы также можете включить параметр « Игнорировать пользовательские ошибки в вычислениях Apdex» , чтобы переопределить настройки Apdex для отдельных пользовательских правил ошибок.
После добавления или исключения пользовательской ошибки в Dynatrace вы должны инициировать ошибку в своем приложении с помощью dtrum.reportCustomError()
метода RUM JavaScript API .
Например, для ошибки поля формы потребуются следующие параметры метода JavaScript:
Параметр | Объяснение | Пример |
---|---|---|
key
|
Имя поля формы. | custom_buying_form_number_of_travelers_field
|
value
|
Ошибка проверки, вызванная валидатором. | availability exceeded - e3434
|
hint
|
Фактический пользовательский ввод. | 1000
|
Только key
и value
может использоваться для группировки и анализа пользовательских ошибок; hint
является дополнительной информацией.
Дополнительные сведения о том, как сообщать о пользовательских ошибках, см. в статье RUM JavaScript API — reportCustomError .
Настройка ошибок JavaScript
Браузеры обнаруживают ошибки JavaScript автоматически, поэтому вам не нужно добавлять эти ошибки. Если вы настроили захват ошибок JavaScript, они автоматически включаются в расчеты Apdex и анализ Дейвиса.
Чтобы игнорировать ошибки JavaScript на отдельном уровне, выберите « Игнорировать эту ошибку JavaScript » на соответствующей странице сведений об ошибке JavaScript.
Чтобы игнорировать все ошибки JavaScript в вычислениях Apdex
- В меню Dynatrace выберите Web .
- Выберите приложение, которое вы хотите настроить.
- В правом верхнем углу страницы обзора приложения выберите Дополнительно ( … ) > Изменить .
- В настройках приложения выберите Ошибки > Ошибки JavaScript .
- Включите Игнорировать ошибки JavaScript в вычислениях Apdex .
Создайте дополнительные оповещения об ошибках для Дэвиса
Если стандартные оповещения о запросах, пользовательских ошибках и ошибках JavaScript недостаточно чувствительны для вас или если вы хотите сосредоточиться на отдельной ошибке, вы можете создать дополнительные оповещения об ошибках.
Создание дополнительных предупреждений об ошибках
- В меню Dynatrace перейдите в раздел Интернет и выберите приложение, чтобы отобразить страницу обзора приложения.
- В инфографике выберите Ошибки .
- В разделе Ошибки по типу выберите Анализировать по типу .
- В разделе Детальный анализ для выбранного таймфрейма установите фильтры в поле Фильтровать по… . Доступные фильтры в категории « Ошибки »:
Custom error name
,Custom error type
,Error type
,Errors
,Request error code
,Request error resource
иRequest error type
. - Выберите Создать показатель .
- В открывшемся наложении настройте параметры метрики и выберите Создать метрику . Дополнительные сведения о создании вычисляемых показателей и отображении их в виде диаграмм см. в разделе Создание вычисляемых показателей .
- Выберите Создать оповещение .
- Настройте параметры оповещения. Когда закончите, выберите Создать пользовательское событие для оповещения .
- Используйте статический порог,
1
если вы хотите, чтобы Дэвис всегда поднимал проблему при возникновении определенной ошибки. - Используйте автоматическое базовое определение , если вас интересуют только аномалии для этой ошибки.
- Дополнительные сведения о создании оповещения см. в разделе События показателей для оповещения .
- Используйте статический порог,