Метрики мониторинга браузера в синтетическом мониторинге
Метрики мониторинга браузера в синтетическом мониторинге
Метрики и параметры
Монитор
| Ключ метрики | Название метрики | Описание метрики | Единица | Размеры |
|---|---|---|---|---|
dt.synthetic.browser.availability |
Уровень доступности (по местоположению) [Монитор браузера] | Коэффициент доступности браузерных мониторов. | % | dt.synthetic.monitor.id, dt.entity.synthetic_test, monitor.name, dt.synthetic.step.id, dt.entity.synthetic_test_step, step.name, step.sequence_number, dt.entity.synthetic_location, dt.synthetic.monitored_entity_ids, primary_tags.__key__, dt.security_context, interpolated |
dt.synthetic.browser.executions |
Количество выполнений (по статусу) [Монитор браузера] | Количество выполнений монитора. | считать | dt.synthetic.monitor.id, dt.entity.synthetic_test, monitor.name, dt.synthetic.step.id, dt.entity.synthetic_test_step, step.name, step.sequence_number, dt.entity.synthetic_location, dt.maintenance_window_ids, dt.synthetic.monitored_entity_ids, primary_tags.__key__, result.state, result.status.code, result.status.message, dt.security_context |
dt.synthetic.browser.duration |
Продолжительность [Монитор браузера] | Продолжительность работы браузера, рассчитанная как сумма длительностей всех шагов. | РС | dt.synthetic.monitor.id, dt.entity.synthetic_test, monitor.name, dt.synthetic.step.id, dt.entity.synthetic_test_step, step.name, step.sequence_number, dt.entity.synthetic_location, dt.synthetic.monitored_entity_ids, primary_tags.__key__, dt.security_context |
dt.synthetic.browser.classic.total_duration |
Общая продолжительность (классическая) [Монитор браузера] | Общая продолжительность работы браузера, измеряемая как сумма общей продолжительности всех шагов. Источник метрики — классический JavaScript-код RUM. | РС | dt.synthetic.monitor.id, dt.entity.synthetic_test, monitor.name, dt.synthetic.step.id, dt.entity.synthetic_test_step, step.name, step.sequence_number, dt.entity.synthetic_location, dt.synthetic.monitored_entity_ids, primary_tags.__key__, dt.security_context |
dt.synthetic.browser.user_events.duration |
Длительность событий пользователя [Монитор браузера] | Продолжительность мониторинга браузера, рассчитываемая как сумма длительностей всех событий пользователя на уровне шагов. Источник метрики — новый JavaScript-код RUM. | РС | dt.synthetic.monitor.id, dt.entity.synthetic_test, monitor.name, dt.synthetic.step.id, dt.entity.synthetic_test_step, step.name, step.sequence_number, dt.entity.synthetic_location, dt.synthetic.monitored_entity_ids, primary_tags.__key__, dt.security_context |
dt.synthetic.browser.user_events.total_duration |
Общая продолжительность событий пользователя [Монитор браузера] | Общая продолжительность мониторинга браузера, измеренная как сумма всех значений метрики User events total duration на уровне шагов. Источник метрики — новый JavaScript-код RUM. | РС | dt.synthetic.monitor.id, dt.entity.synthetic_test, monitor.name, dt.synthetic.step.id, dt.entity.synthetic_test_step, step.name, step.sequence_number, dt.entity.synthetic_location, dt.synthetic.monitored_entity_ids, primary_tags.__key__, dt.security_context |
dt.synthetic.browser.user_actions.duration |
Длительность действий пользователя [Монитор браузера] | Продолжительность мониторинга браузера, рассчитываемая как сумма продолжительности всех действий пользователя на уровне шагов. Источник метрики — новый JavaScript-код RUM. | РС | dt.synthetic.monitor.id, dt.entity.synthetic_test, monitor.name, dt.synthetic.step.id, dt.entity.synthetic_test_step, step.name, step.sequence_number, dt.entity.synthetic_location, dt.synthetic.monitored_entity_ids, primary_tags.__key__, dt.security_context |
dt.synthetic.browser.user_actions.total_duration |
Общая продолжительность действий пользователя [Монитор браузера] | Общая продолжительность мониторинга браузера, измеренная как сумма всех значений метрики User actions total duration на уровне шагов. Источник метрики — новый JavaScript-код RUM. | РС | dt.synthetic.monitor.id, dt.entity.synthetic_test, monitor.name, dt.synthetic.step.id, dt.entity.synthetic_test_step, step.name, step.sequence_number, dt.entity.synthetic_location, dt.synthetic.monitored_entity_ids, primary_tags.__key__, dt.security_context |
Шаги
| Ключ метрики | Название метрики | Описание метрики | Единица | Размеры |
|---|---|---|---|---|
dt.synthetic.browser.step.executions |
Количество выполнений (шаг) (по статусу) [Монитор браузера] | Количество выполнений шагов. | считать | dt.synthetic.monitor.id, dt.entity.synthetic_test, monitor.name, dt.synthetic.step.id, dt.entity.synthetic_test_step, step.name, step.sequence_number, dt.entity.synthetic_location, dt.maintenance_window_ids, dt.synthetic.monitored_entity_ids, primary_tags.__key__, result.state, result.status.code, result.status.message, dt.security_context |
dt.synthetic.browser.step.duration |
Длительность (шаг) [Монитор браузера] | Длительность отдельного шага мониторинга браузера, измеряемая как сумма длительностей событий действий пользователя на этом шаге. | РС | dt.synthetic.monitor.id, dt.entity.synthetic_test, monitor.name, dt.synthetic.step.id, dt.entity.synthetic_test_step, step.name, step.sequence_number, dt.entity.synthetic_location, dt.synthetic.monitored_entity_ids, primary_tags.__key__, dt.security_context |
dt.synthetic.browser.step.classic.total_duration |
Общая продолжительность (классическая) (шаг) [Монитор браузера] | Общая продолжительность каждого шага мониторинга браузера, измеряемая как сумма всех действий пользователя на этом шаге. Источником метрики является классический JavaScript-код RUM. | РС | dt.synthetic.monitor.id, dt.entity.synthetic_test, monitor.name, dt.synthetic.step.id, dt.entity.synthetic_test_step, step.name, step.sequence_number, dt.entity.synthetic_location, dt.synthetic.monitored_entity_ids, primary_tags.__key__, dt.security_context |
dt.synthetic.browser.step.user_events.duration |
Длительность событий пользователя (шаг) [Монитор браузера] | Продолжительность отдельного шага мониторинга браузера, измеряемая от начала первого пользовательского события этого шага до конца последнего пользовательского события. Источником метрики является новый JavaScript-код RUM. | РС | dt.synthetic.monitor.id, dt.entity.synthetic_test, monitor.name, dt.synthetic.step.id, dt.entity.synthetic_test_step, step.name, step.sequence_number, dt.entity.synthetic_location, dt.synthetic.monitored_entity_ids, primary_tags.__key__, dt.security_context |
dt.synthetic.browser.step.user_events.total_duration |
Общая продолжительность событий пользователя (шаг) [Монитор браузера] | Общая продолжительность каждого шага мониторинга браузера, измеряемая как сумма длительностей всех пользовательских событий на этом шаге. Источником метрики является новый JavaScript-код RUM. | РС | dt.synthetic.monitor.id, dt.entity.synthetic_test, monitor.name, dt.synthetic.step.id, dt.entity.synthetic_test_step, step.name, step.sequence_number, dt.entity.synthetic_location, dt.synthetic.monitored_entity_ids, primary_tags.__key__, dt.security_context |
dt.synthetic.browser.step.user_actions.duration |
Длительность действий пользователя (шаг) [Монитор браузера] | Продолжительность отдельного шага мониторинга браузера, измеряемая от начала первого действия пользователя на этом шаге до конца последнего действия пользователя на этом шаге. Источником метрики является новый JavaScript-код RUM. | РС | dt.synthetic.monitor.id, dt.entity.synthetic_test, monitor.name, dt.synthetic.step.id, dt.entity.synthetic_test_step, step.name, step.sequence_number, dt.entity.synthetic_location, dt.synthetic.monitored_entity_ids, primary_tags.__key__, dt.security_context |
dt.synthetic.browser.step.user_actions.total_duration |
Общая продолжительность действий пользователя (шаг) [Монитор браузера] | Общая продолжительность каждого шага мониторинга браузера, измеряемая как сумма длительностей всех действий пользователя на этом шаге. Источником метрики является новый JavaScript-код RUM. | РС | dt.synthetic.monitor.id, dt.entity.synthetic_test, monitor.name, dt.synthetic.step.id, dt.entity.synthetic_test_step, step.name, step.sequence_number, dt.entity.synthetic_location, dt.synthetic.monitored_entity_ids, primary_tags.__key__, dt.security_context |
Варианты использования
Следующие примеры использования демонстрируют, как можно применять метрики в запросах DQL.
Доступность монитора отслеживания
Предположим, вам нужно выявить мониторы, у которых возникли проблемы с доступностью.
Следующий запрос использует метрику dt.synthetic.browser.availability и измерение dt.entity.synthetic_test для возврата мониторов, отсортированных по их доступности, при этом наименее доступные мониторы отображаются первыми.
timeseries {
availability_series = avg(dt.synthetic.browser.availability)
}, by: { dt.entity.synthetic_test }
| fieldsAdd monitor_name = entityName(dt.entity.synthetic_test)
| summarize { monitor_name = takeFirst(monitor_name),
availability = avg(arrayAvg(availability_series)) },
by: {dt.entity.synthetic_test}
| sort availability asc
Исходный ответ выглядит следующим образом:
{
"records": [ { "dt.entity.synthetic_test": "SYNTHETIC_TEST-06AFE815FF214729", "monitor_name": "Browser monitor1", "availability": 31.746031746031743 }, { "dt.entity.synthetic_test": "SYNTHETIC_TEST-094D2E6AA99D2252", "monitor_name": "Browser monitor2", "availability": 46.03174603174603 }, { "dt.entity.synthetic_test": "SYNTHETIC_TEST-0C362AEC36824874", "monitor_name": "Browser monitor3", "availability": 100 } ]}
Анализ сбоев, вызванных взаимодействием серверов
Предположим, вам необходимо проанализировать сбои в работе браузерных мониторов, вызванные взаимодействием с сервером.
В следующем запросе используются метрика dt.synthetic.browser.step.executions и измерения dt.entity.synthetic_test, result.status.message и result.status.code.
timeseries {
execution_series = sum(dt.synthetic.browser.step.executions)
}, by: { result.status.message,
result.status.code,
dt.entity.synthetic_test},
interval: 15 min
| filter result.status.code != 0
| filter (result.status.code < 1000 and result.status.code >= 400 ) or in(result.status.code, array( 10054 , 12014 , 12183 ))
| summarize { dt.synthetic.monitor_ids = collectArray(dt.entity.synthetic_test),
execution_number = sum(arraySum(execution_series)),
executions = sum(execution_series[]) },
by: {timeframe, interval, result.status.message, result.status.code}
Оцените доступность и производительность фронтенда
Предположим, вам необходимо оценить доступность и производительность фронтенда.
В следующем запросе используются метрики dt.synthetic.browser.availability, dt.synthetic.browser.step.duration и dt.synthetic.browser.executions вместе с измерением dt.synthetic.monitored_entity_ids.
timeseries {
availability_series = avg(dt.synthetic.browser.availability),
performance_series = avg(dt.synthetic.browser.step.duration)
},
by: { dt.synthetic.monitored_entity_ids }
| expand entity = dt.synthetic.monitored_entity_ids
| filter isNotNull(entity)
| fieldsAdd entity_name = entityName(entity, type: "dt.entity.application" )
| fieldsAdd frontend_name = coalesce(entity_name, entity)
| summarize { frontend_name = takeLast(frontend_name),
availability = avg(arrayAvg(availability_series)),
performance = avg(arrayAvg(performance_series))
}, by: {dt.entity.application = entity}
| sort availability asc, performance desc
| limit 10
| fieldsRename `Frontend` = frontend_name,
`Доступность` = availability,
`Средняя продолжительность события` = performance