Yandex Cloud
Поиск
Связаться с намиПопробовать бесплатно
  • Кейсы
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
  • Marketplace
    • Доступны в регионе
    • Инфраструктура и сеть
    • Платформа данных
    • Искусственный интеллект
    • Безопасность
    • Инструменты DevOps
    • Бессерверные вычисления
    • Управление ресурсами
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Партнёрская программа
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Калькулятор цен
    • Тарифы
    • Акции и free tier
  • Кейсы
  • Документация
  • Блог
Создавайте контент и получайте гранты!Готовы написать своё руководство? Участвуйте в контент-программе и получайте гранты на работу с облачными сервисами!
Подробнее о программе
Проект Яндекса
© 2026 ТОО «Облачные Сервисы Казахстан»
Monium
  • Начало работы
  • Обзор
    • Основные понятия
    • Конфигурация объектов
    • Модель данных
    • Язык запросов
    • Строка запроса
    • Функции для поиска метрик
    • Время хранения данных (TTL)
    • Квоты и лимиты
  • Управление доступом
  • Правила тарификации
  • Справочник Terraform
  • История изменений
  • Обучающие курсы

В этой статье:

  • Запросы
  • Типы данных
  • Операции в строке запроса
  • Выражения для фильтрации данных
  • Загрузка метрик
  • Использование имен запросов в качестве переменных
  1. Концепции
  2. Язык запросов

Язык запросов в Monium

Статья создана
Yandex Cloud
Обновлена 3 марта 2026 г.
  • Запросы
    • Типы данных
    • Операции в строке запроса
    • Выражения для фильтрации данных
  • Загрузка метрик
  • Использование имен запросов в качестве переменных

ЗапросыЗапросы

Запрос — произвольное выражение на языке запросов. Результат выполнения запроса зависит от типа данных:

  • Метрики — линия или набор линий.
  • Логи — строка или набор строк лога.
  • Трейсы (спаны) — набор операций или цепочек операций, которые выполняет распределенное приложение.

В тексте запроса можно ссылаться на результаты вышестоящих запросов как на переменные.

Запрос состоит из ключа, операции сравнения и значения:

{ <key>="<value>", <key>="<value>", ... }

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

Помимо поиска по выражению в строке запроса, можно выполнять выборку метрик при помощи функций.

Типы данныхТипы данных

Язык запросов поддерживает следующие типы данных:

  • Строка (string) — для всех типов телеметрии.

    Любое литеральное выражение в кавычках (одинарных или двойных) будет представлено как строка.

  • Вещественное число (scalar) — для метрик и логов.

    Вещественное число с плавающей точкой двойной точности по стандарту IEEE 754. Для метрик тип данных включает специальное значение NaN, для логов — не включает.

    Примеры: 101, 75.3, 20G, 1E-3.

    При записи вещественных чисел поддерживается запись с мантиссой, а также следующие суффиксы:

    • k — 103;
    • M — 106;
    • G — 109;
    • T — 1012;
    • P — 1015;
    • E — 1018.
  • Длительность (duration) — для метрик, трейсов и спанов.

    Значения должны быть в формате 1s, 10ms, 150us, 2m, 6h без кавычек.

  • Набор временных рядов (timeseries_vector) — для метрик.

    Пример объекта типа timeseries_vector. Следующее выражение вернет вектор метрик с различными значениями метки host:

    {service='compute', host='*', name='exceptionCount'}
    
  • Логический тип (bool) — для метрик, может принимать значения true или false.

Операции в строке запросаОперации в строке запроса

  • Строки (string).

    • = и != — равенство и неравенство. Поддерживаются glob-выражения с символами * ? |. Символы [ ] не поддерживаются.

    • =~ и !~ — регулярное выражение в формате re2.

    • == и !== — строгое равенство и неравенство. Glob-выражения и регулярные выражения будут интерпретированы как обычные символы.

  • Длительность (duration) — применяется для значений trace.duration и span.duration.

    • Поддерживаются операции сравнения > < >= <=.
    • Значения должны быть в формате 1s, 10ms, 150us, 2m, 6h без кавычек.

Выражения для фильтрации данныхВыражения для фильтрации данных

Язык запросов используется для описания фильтров по данным телеметрии и имеет общие конструкции для разных видов данных (метрик, логов, трейсов). Также есть отличия, обусловленные особенностями модели данных для каждого вида.

Поля верхнего уровня (например, message, level) рассматриваются как метки. Селектор состоит из имени метки, оператора и выражения, описывающего множество значений меток. Условия внутри селектора объединяются по AND.

Операторы для всех типов телеметрииОператоры для всех типов телеметрии

Вид селектора Описание Примеры
label="<value>" Возвращает все элементы телеметрии (логи, метрики, трейсы), у которых есть метка label со значением, совпадающим с value. В значении поддерживаются glob-выражения (только символы *, ? и |, символы [ и ] не поддерживаются). host="vla" – вернет элементы, у которых значение метки host равно vla.

host="*" – вернет элементы, у которых есть метка host.

host="sas-*" – вернет элементы, у которых значение метки host начинается с префикса sas-.

host="sas-?00" – вернет элементы со значениями метки host, равными sas-100, sas-200 и т. д.

host="sas*|vla*" — вернет элементы, у которых значение метки host начинается с префиксов sas или vla.
label="-" Возвращает все элементы, у которых отсутствует указанная метка. Применимо: логи, метрики, трейсы. host="-" – вернет элементы без метки host.

host="-|myhost" – вернет элементы без метки host или со значением метки host, равным myhost.
label!="<value>" Противоположность селектору label="<value>". Применимо: логи, метрики, трейсы. host!="myhost-*" – вернет элементы, у которых метка host отсутствует или ее значение не начинается с префикса myhost-.
label=="<value>" Возвращает элементы, у которых значение метки label точно совпадает со значением <value>, без поддержки glob. Применимо: логи, метрики, трейсы. host=="myhost" – вернет элементы, у которых значение метки host совпадает со строкой myhost.

host=="*" — вернет элементы, у которых значение метки host содержит буквальный символ *.
label!=="<value>" Противоположность селектору label=="<value>". Применимо: логи, метрики, трейсы. host!=="myhost" — вернет элементы, у которых отсутствует метка host или ее значение не совпадает со строкой myhost.
message=*"<substring>" или meta.key=*"<substring>" Возвращает элементы, у которых значение метки содержит подстроку <substring> без учета регистра (<substring> может быть glob). Применимость: message — только логи; meta.key — логи, метрики, трейсы (если существует метка meta.key). message=*"request" — вернет логи с message, равным Failed search request, Request cancelled и т. д.

meta.error=*"failed*request" — вернет элементы, где meta.error равен Failed to make a request, Reader failed to retrieve data from a request и т. д.
message!=*"<substring>" или meta.key!=*"<substring>" Оператор, обратный =*. Применимость: message — только логи; meta.key — логи, метрики, трейсы (если существует метка meta.key).
label=~"<regex>" Возвращает элементы, у которых значение метки label удовлетворяет регулярному выражению <regex> на языке re2. Применимо: логи, метрики, трейсы.
label!~"<regex>" Противоположность селектору label=~"<regex>". Применимо: логи, метрики, трейсы.
label>300 Возвращает элементы, у которых значение метки label больше заданного значения. Применимо: логи, метрики — для числовых меток; трейсы — только для меток типа duration (временные значения). duration>500ms — вернет трейсы/спаны с длительностью более 500 мс.

value>0.95 — пример для метрик/логов с числовой меткой.
label>=300 Возвращает элементы, у которых значение метки label больше или равно заданному значению. Применимо: логи, метрики — для числовых меток; трейсы — только для duration. latency>=2s — вернет трейсы/спаны с задержкой не менее 2 с.
label<300 Возвращает элементы, у которых значение метки label меньше заданного значения. Применимо: логи, метрики — для числовых меток; трейсы — только для duration. elapsed<750ms — вернет трейсы/спаны короче 750 мс.
label<=300 Возвращает элементы, у которых значение метки label меньше или равно заданному значению. Применимо: логи, метрики — для числовых меток; трейсы — только для duration. duration<=1s — вернет трейсы/спаны с длительностью до 1 с включительно.

Для операторов > >= < <=:

  • Логи и метрики: справа ожидается числовой литерал; значение метки приводится к числу. Исключение — метка level.
  • Трейсы: сравнение поддерживается только для меток типа duration; справа ожидается литерал длительности с единицами (например, 500ms, 2s, 150us). Если привести значение метки к требуемому типу не удалось, результат именно этой части выражения считается ложным.

Для поиска по меткам, хранящимся в метаинформации meta, указывайте полный квалификатор meta.label_name. Доступны те же операторы, что и для меток верхнего уровня, во всех типах телеметрии.

Поле message существует только у логов.

Специфичные ключи для трейсовСпецифичные ключи для трейсов

При поиске трейсов и спанов доступны дополнительные ключи:

  • span.name — имя спана, поддерживает все строковые операторы.
  • span.id — идентификатор спана, поддерживает операторы = и !=.
  • span.status — статус спана: OK, ERROR или UNKNOWN, поддерживает операторы = и !=.
  • span.duration — длительность спана, поддерживает операторы сравнения >, >=, <, <= с литералами длительности (например, 500ms, 2s).
  • span.critical_path — принадлежность спана к критическому пути: PRESENT или ABSENT, поддерживает оператор =.
  • trace.id — идентификатор трейса (для поиска логов по трейсу).

Подробнее о поиске трейсов см. в разделе Поиск трейсов и спанов.

Язык запросов Monium используется для преобразования метрик при настройке дашбордов и алертов, а также в API-методе MetricsData.read.

Загрузка метрикЗагрузка метрик

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

Пример запроса метрик:

cpu_usage{project="folder__zoeu2rgjpqak********", service="compute"}

Этот запрос вернет метрики с именем cpu_usage для всех виртуальных машин сервиса Yandex Compute Cloud в проекте (каталоге) с идентификатором zoeu2rgjpqak********.

Важно

Учитывайте особенности метки project:

  • Значение метки должно совпадать с выбранным проектом (каталогом), запрашивать данные из других проектов нельзя. Это справедливо для всех вариантов применения языка запросов: при построении графиков, создании дашбордов, настройке алертов или вызове API-методов.

  • При вызове API-методов значение метки передается в заголовке x-monium-project, а не в теле запроса.

Использование имен запросов в качестве переменныхИспользование имен запросов в качестве переменных

В языке запросов поддерживаются ссылки на результаты выполнения других запросов как на имена переменных.

Например:

A: "temperature"{project="folder__my_folder_id", service="custom", room="bedroom", building="home", sensor="sensor1" }

B: "temperature"{project="folder__my_folder_id", service="custom", room="bedroom", building="home", sensor="sensor2" }

C: (A + B) / 2

Ссылаться по имени можно только в текстовом режиме и на вышестоящие запросы в одном и том же алерте или графике. К переменным можно применять любые поддерживаемые арифметические операции и функции языка запросов.

Была ли статья полезна?

Предыдущая
Модель данных
Следующая
Строка запроса
Создавайте контент и получайте гранты!Готовы написать своё руководство? Участвуйте в контент-программе и получайте гранты на работу с облачными сервисами!
Подробнее о программе
Проект Яндекса
© 2026 ТОО «Облачные Сервисы Казахстан»