Monitoring Console

Anomaly Detection Help

Reference page for anomaly detection scopes, thresholds, lifecycle, storage, and reasons returned by the dashboard.

Dashboard

Overview

High-level behavior shared by all anomaly scopes.

API

Summary endpoint
/api/anomalies/summary
Default scope
core
Available scopes
core, opmet, opmet_rb, cks_vector, grib

Baseline

Retention window
7 days
Minimum samples
12
Method
median over stored snapshots
Extra tracked attrs
forecast_times_count

Storage

Snapshots table
monitor_metric_snapshots
Events table
monitor_anomaly_events

Lifecycle

Event hysteresis and state transitions.

Thresholds

Open event after
3 consecutive bad snapshots
Resolve event after
2 consecutive ok snapshots
Pending
bad snapshots were observed but open threshold is not reached yet

States

CodeMeaning
pendingAnomaly seen, waiting for repeated confirmation.
openConfirmed anomaly event is active.
resolvedConfirmed event was closed after consecutive healthy snapshots.
okNo active anomaly event.

Rules

Detection rules currently used by the service.

RuleSeverityTrigger
count_drop_criticalcriticalcurrent_count <= baseline * 0.3 when baseline >= 10
count_drop_warningwarningcurrent_count <= baseline * 0.6 when baseline >= 10
forecast_window_shrunk_criticalcriticalforecast_times_count <= baseline_forecast_times_count * 0.4
forecast_window_shrunk_warningwarningforecast_times_count <= baseline_forecast_times_count * 0.7
stale_latest_atwarninglatest_at is older than stale_after_seconds for the feed
latest_at_in_futurecriticallatest_at is ahead of current time by more than 600 seconds
future_rows_detectedcriticalfuture_count > 0 for feeds where future-row checks are enabled
missing_latest_atwarningsource is available but latest_at is empty
source_unavailablecriticalunderlying source table or payload is unavailable
baseline_warming_upinfothere are snapshots already, but fewer than 12 samples for stable comparison

Reasons

Russian descriptions returned in anomaly detail popovers and tables.

CodeDescription
baseline_warming_upBaseline ещё прогревается: исторических snapshots пока недостаточно для уверенного сравнения.
count_drop_criticalТекущее количество сообщений резко просело относительно накопленного baseline. Это сильная аномалия потока.
count_drop_warningТекущее количество сообщений заметно ниже baseline. Это предупреждение о возможной деградации.
forecast_window_shrunk_criticalШирина forecast window резко сократилась относительно baseline. Похоже, что источник перестал отдавать нормальный горизонт прогноза.
forecast_window_shrunk_warningШирина forecast window уменьшилась относительно baseline. Это похоже на частичную деградацию набора прогнозов.
future_rows_detectedОбнаружены строки с временными метками из будущего. Это типичный признак ошибки датировки или парсинга.
latest_at_in_futureПоследняя временная метка ушла в будущее относительно текущего времени сервиса.
missing_latest_atУ источника нет последней временной метки, поэтому свежесть данных определить нельзя.
source_unavailableИсточник недоступен: таблица отсутствует или данные сейчас не читаются.
stale_latest_atПоследняя временная метка слишком старая: похоже, что поток данных перестал обновляться вовремя.

METAR / TAF Scope

Scope name: core

FeedMetric keyKindSourceTableStale afterFuture rowsLatest in futureExtra dimension
METAR NOAAmetar_active_1hmetarnoaanoaa_metars2hononn/a
METAR ROSHYDROmetar_active_1hmetarroshydroroshydro_metars2hononn/a
TAF NOAAtaf_active_24htafnoaanoaa_tafs18hononn/a
TAF ROSHYDROtaf_active_24htafroshydroroshydro_tafs18hononn/a

OPMET Scope

Scope name: opmet

FeedMetric keyKindSourceTableStale afterFuture rowsLatest in futureExtra dimension
OPMET ROSHYDROopmet_active_24hopmet_totalroshydroopmetdata6hononn/a
OPMET SIGMETopmet_sigmet_active_1dopmet_typeroshydroopmetdata6hononSIGMET
OPMET AIRMETopmet_airmet_active_1dopmet_typeroshydroopmetdata6hononAIRMET
OPMET GAMETopmet_gamet_active_1dopmet_typeroshydroopmetdata6hononGAMET

OPMET RB Scope

Scope name: opmet_rb

FeedMetric keyKindSourceTableStale afterFuture rowsLatest in futureExtra dimension
OPMET RB ROSHYDROopmet_rb_active_24hopmet_rb_totalroshydrosigmet_telegramms12hoffoffn/a
OPMET RB SIGMETopmet_rb_sigmet_active_1dopmet_rb_typeroshydrosigmet_telegramms12hoffoffSIGMET
OPMET RB AIRMETopmet_rb_airmet_active_1dopmet_rb_typeroshydroairmet_telegramms12hoffoffAIRMET
OPMET RB GAMETopmet_rb_gamet_active_1dopmet_rb_typeroshydrogamet_telegramms12hoffoffGAMET

CKS Vector Scope

Scope name: cks_vector

FeedMetric keyKindSourceTableStale afterFuture rowsLatest in futureExtra dimension
CKS VECTORcks_vector_active_1dcks_vector_totalcksfronts24hoffoffn/a
CKS FRONTScks_vector_fronts_active_1dcks_vector_typecksfronts24hoffofffronts
CKS JET_STREAMcks_vector_jet_stream_active_1dcks_vector_typecksjet_stream24hoffoffjet_stream
CKS CLOUDScks_vector_clouds_active_1dcks_vector_typecksclouds24hoffoffclouds
CKS TURBULENCEcks_vector_turbulence_active_1dcks_vector_typecksturbulence24hoffoffturbulence
CKS TROPOPAUSEcks_vector_tropopause_active_1dcks_vector_typeckstropopause24hoffofftropopause
CKS VOLCANOcks_vector_volcano_active_1dcks_vector_typecksvolcano24hoffoffvolcano

GRIB Scope

Scope name: grib

FeedMetric keyKindSourceTableStale afterFuture rowsLatest in futureExtra dimension
GRIB NOAAgrib_active_snapshotgribnoaanoaa_grib_work18hoffoffn/a
GRIB ROSHYDROgrib_active_snapshotgribroshydroroshydro_grib_work18hoffoffn/a