Последнее обновление: апреля 10, 2026

Редактор запросов Parca

Warning

Этот плагин устарел и будет получать только критически важные обновления безопасности. Поддержка прекратится 2 января 2027 года.

В этом документе объясняется, как использовать редактор запросов Parca для запроса и визуализации данных непрерывного профилирования.

Редактор запросов предоставляет доступ к селектору типа профиля, селектору меток с автодополнением и сворачиваемым параметрам для управления поведением запроса.

Перед началом

Перед использованием редактора запросов убедитесь, что у вас есть:

Доступ к редактору запросов

Чтобы получить доступ к редактору запросов:

  1. Войдите в Grafana.
  2. Выберите Explore в меню слева.
  3. Выберите ваш источник данных Parca в раскрывающемся списке источников данных.

Вы также можете получить доступ к редактору запросов из панели дашборда, выбрав источник данных Parca при редактировании панели.

Селектор типа профиля

Выберите тип профиля из каскадного раскрывающегося меню. Типы профилей сгруппированы по имени на первом уровне, а второй уровень показывает тип образца (sample type).

Например, профиль process_cpu может показывать типы образцов, такие как cpu или samples.

Вы должны выбрать тип профиля, чтобы запрос был корректным. Grafana не возвращает никаких данных, если тип профиля не выбран при выполнении запроса.

Формат ID типа профиля

Каждый тип профиля имеет ID в формате name:sampleType:sampleUnit:periodType:periodUnit. Дельта-типы профилей включают дополнительный суффикс :delta. Вам не нужно создавать эти ID вручную — каскадное раскрывающееся меню выполняет выбор за вас.

Примеры ID типов профилей:

ID типа профиля Описание
process_cpu:samples:count:cpu:nanoseconds Профиль ЦП, измеряющий количество образцов.
memory:alloc_objects:count:space:bytes Профиль памяти, измеряющий выделенные объекты.
process_cpu:cpu:nanoseconds:cpu:nanoseconds:delta Дельта-профиль ЦП, измеряющий наносекунды.

Селектор меток

Используйте селектор меток для фильтрации профилей по меткам. Редактор предоставляет автодополнение как для имён меток, так и для значений меток.

Синтаксис

Parca использует синтаксис, похожий на Prometheus, для фильтрации меток. Заключайте сопоставители меток в фигурные скобки в формате {key="value"}.

Поддерживаются следующие операторы:

Оператор Описание Пример
= Равно {job="my-service"}
!= Не равно {job!="test-service"}
=~ Соответствие регулярному выражению {job=~"prod-.*"}
!~ Несоответствие регулярному выражению {job!~"test-.*"}

Вы можете объединять несколько сопоставителей меток, разделённых запятыми:

text
{job="my-service", instance=~"10.0.0.*"}

Селектор меток можно оставить пустым, чтобы запросить все профили выбранного типа без фильтрации.

Дополнительные сведения о синтаксисе см. в документации Parca.

Автодополнение

Селектор меток предоставляет подсказки автодополнения по мере ввода. Автодополнение срабатывает при вводе следующих символов: {, ,, [, (, =, ~, пробел и ".

  • Имена меток: предлагаются, когда вы начинаете вводить внутри фигурных скобок или после запятой.
  • Значения меток: предлагаются после ввода имени метки, за которым следует = или =".

Сочетания клавиш

Сочетание Действие
Shift + Enter Выполнить запрос с текущим вводом.

Типы запросов

Разверните раздел Options, чтобы выбрать тип запроса. Тип запроса управляет тем, какие данные возвращаются и как они визуализируются.

Тип запроса Описание
Metric Возвращает агрегированные данные метрик, визуализированные как временной ряд.
Profile Возвращает объединённый профиль, визуализированный как граф пламени.
Both Возвращает как данные метрик, так и данные профиля. Доступно только в Explore.

Note

Опция Both доступна только в Explore. На панелях дашбордов вы можете выбрать либо Metric, либо Profile, поскольку панели поддерживают только один тип визуализации. Если запрос, установленный в Both, перемещается из Explore на дашборд, Grafana автоматически меняет его на Profile.

Использование переменных шаблонов в запросах

Поле селектора меток поддерживает переменные шаблонов Grafana. Вы можете использовать переменные, такие как $job или $instance, в селекторе меток для создания динамических, многократно используемых дашбордов.

Дополнительные сведения о поддерживаемых типах переменных, примерах и ограничениях см. в разделе Переменные шаблонов Parca.

Примеры запросов

В следующих примерах показаны распространённые запросы профилирования.

Запрос профилей ЦП для конкретной службы

  1. Выберите process_cpu > cpu в раскрывающемся списке типов профилей.

  2. Введите селектор меток для фильтрации по службе:

    text
    {job="my-service"}
  3. Установите тип запроса Profile, чтобы просмотреть граф пламени, или Metric, чтобы просмотреть использование ЦП во времени.

Сравнение профилей между экземплярами

  1. Выберите тип профиля, например process_cpu > samples.

  2. Отфильтруйте по конкретной службе и экземпляру:

    text
    {job="my-service", instance="10.0.0.1:7070"}
  3. Добавьте второй запрос (нажмите + Add query) с другим экземпляром:

    text
    {job="my-service", instance="10.0.0.2:7070"}
  4. Установите оба запроса в Metric, чтобы сравнить данные временных рядов между экземплярами.

Поиск горячих точек выделения памяти

  1. Выберите memory > alloc_objects в раскрывающемся списке типов профилей.

  2. При необходимости отфильтруйте по службе:

    text
    {job="api-gateway"}
  3. Установите тип запроса Profile, чтобы просмотреть граф пламени, показывающий, какие функции выделяют больше всего объектов.

  4. Настройте диапазон времени, чтобы сузить его до конкретного окна инцидента.

Результаты запроса профилей

Профили визуализируются как граф пламени. Ознакомьтесь с документацией по графу пламени, чтобы узнать о визуализации и её возможностях.

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

Граф пламени отображает следующие столбцы:

Столбец Описание
level Глубина функции в стеке вызовов.
value Совокупное значение, включая дочерние функции.
self Значение, относящееся только к этой функции.
label Имя функции или символ.

Единицы измерения автоматически преобразуются из форматов Parca в форматы Grafana: nanoseconds отображается как ns, а count отображается как короткое число.

Результаты запроса метрик

Результаты метрик представляют агрегированное значение выбранного типа профиля во времени.

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

Поле значения временного ряда именуется по типу образца из ID типа профиля. Например, запрос с использованием process_cpu:samples:count:cpu:nanoseconds создаёт поле значения с именем samples.