Создание визуализации на основе SQL
- Выберите подключение к ClickHouse, для которого будет выполняться запрос.
- При необходимости выберите Source — это позволит применять к вашей визуализации фильтры уровня панели мониторинга через макрос
$__filters. - Напишите SQL-запрос в редакторе, используя параметры запроса и макросы для интеграции с временным диапазоном и фильтрами панели мониторинга.
- Нажмите кнопку play, чтобы просмотреть результат, затем нажмите Save.
Параметры запроса
{paramName:Type}.
Доступные параметры
Диаграммы Table, Pie и Number:
Макросы
$__ и заменяются до отправки запроса в ClickHouse.
Макросы временных границ
Макросы фильтрации по времени
WHERE, который фильтрует столбец по временному диапазону панели мониторинга.
Пример развёртывания
$__timeFilter(TimestampTime):
Макросы временных интервалов
SELECT и GROUP BY для графиков временных рядов. Они доступны только для визуализаций Line и столбчатых диаграмм с накоплением.
Пример развёртывания
$__timeInterval(TimestampTime):
Макрос фильтра панели мониторинга
Когда на графике выбран Source и включены фильтры панели мониторинга,
$__filters разворачивается в соответствующие условия SQL WHERE. Если источник не выбран или фильтры не заданы, он разворачивается в (1=1), поэтому его всегда можно безопасно включать в условие WHERE.
Как результаты запроса отображаются на диаграмме
Линейные диаграммы и столбчатые диаграммы с накоплением
Круговая диаграмма
Числовая диаграмма
Табличная диаграмма
Примеры
Требуется доступ к системной таблицеЕсли вы запускаете следующие примеры на play-clickstack.clickhouse.com, необходимо указать
otel_v2.otel_logs или otel_v2.otel_traces.Линейная диаграмма — количество логов по сервисам во времени
ts(DateTime) используется как временная метка на оси X.count(числовое значение) отображается как значение серии.ServiceName(строка) создает отдельную линию для каждого сервиса.
Линейная диаграмма — с использованием макросов
Столбчатая диаграмма с накоплением — количество ошибок по уровням серьёзности
Табличная диаграмма — 10 конечных точек с наибольшей задержкой
Круговая диаграмма — распределение запросов по сервисам
request_count(числовое значение) определяет размер каждого сегмента.ServiceName(строка) задает метку каждого сегмента.
Числовая диаграмма — общее число ошибок
total_errors из первой строки.
Примечания
- Визуализации на основе SQL выполняются во включенном режиме
readonly— разрешены только запросыSELECT. - Визуализации на основе SQL должны содержать ровно один SQL-запрос — несколько запросов не поддерживаются.
- Редактор SQL предлагает автодополнение как для параметров запроса, так и для макросов.
- Чтобы фильтры панели мониторинга применялись к визуализациям на основе SQL, необходимо выбрать Source. Для корректной фильтрации Source должен соответствовать таблице, к которой обращается запрос.