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

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

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

Используйте сценарии, чтобы:

  • Прототипировать дашборды без подключения к реальному источнику данных.
  • Воспроизводить ошибки с контролируемыми, детерминированными данными, которые другие разработчики могут воспроизвести.
  • Тестировать поведение панелей с такими крайними случаями, как пустые результаты, временные метки вне видимого диапазона или смешанные данные и ошибки.
  • Проверять конвейеры алертинга с использованием предсказуемых шаблонов, которые срабатывают и разрешаются по известному расписанию.
  • Смоделировать потоковую передачу, чтобы проверить, как панели обрабатывают обновления данных в реальном времени.

Чтобы построить запрос, выберите сценарий в раскрывающемся списке Scenario. Редактор запросов обновляется, показывая поля, специфичные для этого сценария. Нажмите Run queries или используйте сочетание клавиш для выполнения.

Note

Некоторые сценарии выполняются полностью в браузере (Streaming Client, Grafana Live, Grafana API, Steps, No Data Points). Эти сценарии не отправляют запросы на бэкенд, что означает, что их нельзя использовать с Grafana Alerting или в любом контексте, требующем серверного вычисления.

Справочник по сценариям

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

Сценарий Категория Назначение
Random Walk Генерация данных Временной ряд случайного блуждания (сценарий по умолчанию).
Random Walk Table Генерация данных Случайное блуждание в табличном формате с состоянием Enum.
Random Walk (with error) Генерация данных Случайное блуждание, которое также возвращает ошибку.
Predictable Pulse Генерация данных Повторяющаяся волна вкл/выкл на основе абсолютного времени.
Predictable CSV Wave Генерация данных Пользовательские повторяющиеся волны из значений CSV.
Simulation Генерация данных Движок непрерывного моделирования (flight, sine, tank).
USA generated data Генерация данных Многомерные данные с измерениями штатов США.
CSV Content Ручной ввод Вставьте или введите данные CSV напрямую.
Steps Ручной ввод Данные ступенчатой функции из ввода CSV.
CSV File Ручной ввод Выбор из встроенных файлов данных CSV.
CSV Metric Values Ручной ввод Временной ряд из значений, разделённых запятыми.
Raw Frames Ручной ввод Определение data frame в формате JSON.
Load Apache Arrow Data Ручной ввод Отрисовка полезных нагрузок Arrow в base64.
Table Static Ручной ввод Статическая таблица с предопределёнными столбцами.
Logs Тестирование визуализаций Смоделированные данные журналов со случайными уровнями.
Node Graph Тестирование визуализаций Данные для визуализаций графа узлов.
Flame Graph Тестирование визуализаций Данные для визуализаций графа пламени.
Trace Тестирование визуализаций Смоделированные данные распределённой трассировки.
Annotations Тестирование визуализаций Точки данных аннотаций.
Exponential heatmap bucket data Тестирование визуализаций Данные тепловой карты с экспоненциальными корзинами.
Linear heatmap bucket data Тестирование визуализаций Данные тепловой карты с линейными корзинами.
Streaming Client Потоковая передача Потоковая передача на стороне браузера (signal, logs, traces).
Grafana Live Потоковая передача Серверная потоковая передача через live-каналы.
Grafana API Получение данных Извлечение данных из внутренних конечных точек Grafana.
Conditional Error Тестирование ошибок Настраиваемая ошибка или данные CSV.
Error with source Тестирование ошибок Ошибка с классификацией плагина или нижестоящего сервиса.
No Data Points Тестирование ошибок Пустой результат без данных.
Data Points Outside Range Тестирование ошибок Точка данных вне видимого диапазона времени.
Slow Query Тестирование ошибок Настраиваемая задержка перед возвратом данных.
Query Metadata Метаданные Возвращает метаданные контекста запроса.

Общие параметры запроса

Каждый сценарий отображает раскрывающийся список Scenario. Большинство сценариев также показывают поле Alias и, когда сценарий определяет значение по умолчанию, поле String Input. Некоторые сценарии предоставляют дополнительные общие элементы управления. Специфичные для сценария параметры появляются под этими полями.

Поле Описание
Scenario Раскрывающийся список для выбора типа генерации данных. Сценарии перечислены в алфавитном порядке.
Alias Необязательное отображаемое имя для ряда. Скрыто для сценариев Simulation и Annotations. Поддерживает специальные значения __server_names и __house_locations для использования встроенных наборов имён.
String Input Текстовое поле, отображаемое, когда выбранный сценарий предоставляет строковое значение по умолчанию. Используется по-разному в каждом сценарии.
Labels Доступно для Random Walk и Predictable Pulse. Задавайте метки в синтаксисе key=value, например key="value", key2="value2". Используйте $seriesIndex в значении, чтобы вставить индекс ряда.
Drop percent Доступно для CSV Content и CSV File. Случайно отбрасывает процент (0-100) точек данных из результата.

Сценарии генерации данных

Эти сценарии создают данные временных рядов с настраиваемыми параметрами.

Random Walk

Генерирует данные временных рядов случайного блуждания. Это сценарий по умолчанию.

Поле Описание
Series count Количество генерируемых рядов. По умолчанию: 1.
Start value Начальное значение для блуждания. По умолчанию: авто (случайно).
Min Минимальное значение, которого может достичь блуждание. По умолчанию: нет.
Max Максимальное значение, которого может достичь блуждание. По умолчанию: нет.
Spread Управляет тем, насколько может отклоняться каждый шаг. По умолчанию: 1.
Noise Добавляет шум к каждой точке данных. По умолчанию: 0.
Drop (%) Процент точек для случайного исключения. По умолчанию: 0.

Random Walk Table

Генерирует данные случайного блуждания в табличном формате со столбцами Time, Value, Min, Max, Info и State. Столбец State использует поле enum со значениями Unknown, Up и Down. При включении withNil дополнительно включает нулевые значения.

Random Walk (with error)

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

Predictable Pulse

Генерирует предсказуемую импульсную волну на основе абсолютного времени от эпохи, что делает её воспроизводимой между запусками.

Поле Описание
Step Секунды между точками данных. По умолчанию: 60.
On Count Количество точек данных в начале каждого цикла, использующих значение «вкл». По умолчанию: 3.
Off Count Количество точек данных в каждом цикле, использующих значение «выкл». По умолчанию: 3.
On Value Значение для точек «вкл». Может быть числом, null или nan. По умолчанию: 2.
Off Value Значение для точек «выкл». Может быть числом, null или nan. По умолчанию: 1.

Волна циклится с интервалом Step * (On Count + Off Count) секунд. Временные метки выравниваются равномерно по интервалу шага.

При значениях по умолчанию (Step=60, On Count=3, Off Count=3) волна завершает полный цикл каждые 6 минут. Значение «вкл» (2) удерживается для первых 3 точек данных, затем значение «выкл» (1) удерживается для следующих 3.

Predictable CSV Wave

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

Поле Описание
Values Числовые значения для волны, разделённые запятыми. Поддерживает null и nan. По умолчанию: 0,0,2,2,1,1.
Step Секунды между точками данных. По умолчанию: 60.
Name Необязательное имя для ряда.
Labels Необязательные метки в формате key=value.

Нажмите кнопку + в последней строке волны, чтобы добавить ещё одну волну. Нажмите кнопку - в любой другой строке, чтобы удалить её.

Например, чтобы создать две перекрывающиеся волны для сравнения:

  • Волна 1: значения 0,1,2,3,4,5, Step 60, Name rising
  • Волна 2: значения 5,4,3,2,1,0, Step 60, Name falling

Simulation

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

Поле Описание
Simulation Тип моделирования: Flight (круговая траектория полёта), Sine (синусоида) или Tank (наполнение и слив водяного бака).
Stream Переключатель для потоковой передачи данных через Grafana Live вместо возврата статического результата.
Interval Частота тиков в Гц. По умолчанию: 10.
Last Переключатель для возврата только самого последнего значения вместо полного диапазона времени.
UID Необязательный уникальный идентификатор. Позволяет запускать несколько экземпляров одного типа моделирования одновременно.

USA generated data

Генерирует данные с измерениями штатов США. Полезно для тестирования визуализаций геокарт и многомерных данных.

Поле Описание
Mode Формат данных: values-as-rows, values-as-fields, values-as-labeled-fields, timeseries или timeseries-wide.
Period Период времени для генерации данных. По умолчанию: 30m.
Fields Включаемые поля: foo, bar, baz. По умолчанию: все.
States Коды штатов США для включения (например, CA, NY, TX). По умолчанию: все 50 штатов плюс DC.

Сценарии ручного ввода

Эти сценарии позволяют предоставлять собственные данные напрямую вместо их генерации.

CSV Content

Предоставляет текстовый редактор, где вы вставляете или вводите данные CSV напрямую. Первая строка рассматривается как заголовки. Используйте поле Drop percent, чтобы случайно исключить процент точек данных.

Например, введите следующее, чтобы создать временной ряд с двумя столбцами значений:

Time,Temperature,Humidity
2024-01-01 00:00:00,22.5,45
2024-01-01 01:00:00,21.8,48
2024-01-01 02:00:00,20.1,52

Steps

Предоставляет текстовую область CSV (тот же редактор, что и CSV Content) для определения данных ступенчатой функции. Содержимое по умолчанию — a, b, c. Этот сценарий обрабатывается полностью в браузере.

CSV File

Выбирает из набора встроенных файлов данных CSV. Используйте поле Drop percent, чтобы случайно исключить процент точек данных.

Доступные файлы:

  • flight_info_by_state.csv
  • population_by_state.csv
  • gdp_per_capita.csv
  • js_libraries.csv
  • ohlc_dogecoin.csv
  • weight_height.csv
  • browser_marketshare.csv
  • automobiles.csv

CSV Metric Values

Генерирует данные временных рядов из значений, разделённых запятыми, введённых в поле String Input. Значения равномерно распределяются по выбранному диапазону времени. По умолчанию: 1,20,90,30,5,0.

Например, при значениях по умолчанию и 6-часовом диапазоне времени шесть значений (1, 20, 90, 30, 5, 0) распределяются по диапазону через равные интервалы.

Raw Frames

Предоставляет редактор JSON для определения data frame напрямую. Редактор принимает формат JSON data frame Grafana и включает помощники вставки для JSON панели и необработанных результатов запроса.

Load Apache Arrow Data

Загружает данные из полезной нагрузки Apache Arrow в кодировке base64, введённой в текстовую область String Input. Используйте это для тестирования отрисовки формата Arrow.

Table Static

Генерирует статическую таблицу с предопределёнными столбцами: Time, Message, Description и Value.

Сценарии тестирования визуализаций

Эти сценарии генерируют данные для тестирования конкретных типов визуализаций.

Logs

Генерирует смоделированные данные журналов со случайными уровнями журналов, ID контейнеров и именами хостов.

Поле Описание
Lines Количество генерируемых строк журнала. По умолчанию: 10. Максимум: 10000.
Level Переключатель для включения отдельного столбца уровня в данные вместо встраивания его в сообщения.

Node Graph

Генерирует данные для визуализации Node Graph.

Поле Описание
Data type Тип данных графа: random, response_small, response_medium, random edges или feature_showcase.
Count Количество генерируемых узлов. Доступно для типов random и random edges.
Seed Значение начального числа для воспроизводимой случайной генерации. Доступно для типов random и random edges.

Flame Graph

Генерирует данные для визуализации Flame Graph.

Поле Описание
Diff profile Переключатель для генерации дифференциального графа пламени, сравнивающего два профиля.

Trace

Генерирует смоделированные данные распределённой трассировки.

Поле Описание
Span count Количество промежутков в генерируемой трассировке.

Annotations

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

Дополнительную информацию об аннотациях в Grafana см. в разделе Аннотирование визуализаций.

Поле Описание
Count Количество генерируемых аннотаций. По умолчанию: 10.

Exponential heatmap bucket data

Генерирует данные тепловой карты с экспоненциально распределёнными границами корзин (1, 2, 4, 8, 16, …). Используйте это для тестирования панелей тепловых карт с экспоненциальными распределениями.

Linear heatmap bucket data

Генерирует данные тепловой карты с линейно распределёнными границами корзин (0, 10, 20, 30, …). Используйте это для тестирования панелей тепловых карт с линейными распределениями.

Сценарии потоковой передачи

Эти сценарии создают данные потоковой передачи в реальном времени. Данные обновляются непрерывно в браузере без необходимости ручного выполнения запроса.

Streaming Client

Генерирует данные потоковой передачи непосредственно из клиента браузера.

Поле Описание
Type Тип потока: Signal, Logs, Fetch, Traces или Watch.

Дополнительные поля зависят от выбранного типа:

  • Signal: Speed (ms), Spread, Noise, Bands.
  • Logs, Traces, Watch: только Speed (ms).
  • Fetch: URL удалённой конечной точки CSV для инкрементальной потоковой передачи.

Grafana Live

Подключается к каналу Grafana Live, который передаёт случайные данные с сервера.

Поле Описание
Channel Live-канал, на который следует подписаться. Варианты:
Канал Описание
random-2s-stream Случайный поток с точками каждые 2 с.
random-flakey-stream Поток, возвращающий данные через случайные интервалы.
random-labeled-stream Значение с перемещающимися метками.
random-20Hz-stream Случайный поток с точками на частоте 20 Гц.

Сценарии получения данных

Эти сценарии извлекают данные из внутренних конечных точек Grafana.

Grafana API

Извлекает данные из внутренних конечных точек API Grafana и возвращает результат как data frame. Этот сценарий выполняется в браузере.

Поле Описание
Endpoint Конечная точка API для запроса. Варианты:
Конечная точка Описание
Data Sources Перечисляет настроенные источники данных.
Search Возвращает результаты поиска по дашбордам.
Annotations Возвращает аннотации.

Сценарии тестирования ошибок и крайних случаев

Эти сценарии помогают тестировать, как Grafana обрабатывает ошибки, пустые данные и медленные ответы.

Conditional Error

Выдаёт ошибку или данные в зависимости от полей String Input и Error type. Когда поле String Input пусто, сценарий запускает выбранный тип ошибки. Когда поле содержит значения CSV (по умолчанию: 1,20,90,30,5,0), оно возвращает данные временных рядов, как сценарий CSV Metric Values, независимо от типа ошибки.

Поле Описание
Error type Тип ошибки для имитации: Server panic (паника бэкенда), Frontend exception (неперехваченная ошибка в браузере) или Frontend observable (ошибка, выдаваемая через наблюдаемый запрос).

Чтобы запустить ошибку, очистите поле String Input и выберите тип ошибки, который хотите протестировать.

Error with source

Возвращает ошибку с настраиваемой классификацией источника.

Поле Описание
Error source Источник ошибки: Plugin (ошибка плагина) или Downstream (ошибка нижестоящего сервиса).

Используйте это, чтобы тестировать, как Grafana различает ошибки плагинов и ошибки нижестоящих сервисов в алертинге и обработке ошибок.

No Data Points

Возвращает пустой результат без точек данных. Используйте это, чтобы тестировать, как панели отображаются, когда данных нет.

Data points Outside Range

Возвращает одну точку данных с временной меткой на час раньше диапазона времени запроса. Используйте это, чтобы тестировать, как панели обрабатывают данные вне видимого диапазона.

Slow Query

Вводит настраиваемую задержку перед возвратом данных случайного блуждания. Задайте длительность задержки в поле String Input, используя синтаксис длительности Go (например, 5s, 1m, 500ms). По умолчанию: 5s.

Сценарии метаданных

Эти сценарии возвращают метаданные, а не данные временных рядов.

Query Metadata

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