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

Создание визуализаций

Интерфейс Chart Explorer в HyperDX позволяет визуализировать метрики, трассировки и журналы с течением времени, упрощая создание быстрых визуализаций для анализа данных. Этот интерфейс также используется при создании панелей мониторинга. В следующем разделе пошагово показано, как создать визуализацию с помощью Chart Explorer. Создание любой визуализации начинается с выбора источника данных, затем метрики, а при необходимости — выражений фильтра и полей группировки. По сути, визуализации в HyperDX соответствуют SQL-запросу с GROUP BY: вы задаёте метрики для агрегации по выбранным измерениям.
Генерация графиков с помощью ИИClickStack также поддерживает создание графиков из промптов на естественном языке с помощью возможности text-to-chart. Опишите, что вы хотите увидеть, и ClickStack автоматически сгенерирует визуализацию.
Например, можно построить график количества ошибок (count()), сгруппированных по имени сервиса. В примерах ниже используется удалённый набор данных, доступный на sql.clickhouse.com, который описан в руководстве “Remote Demo Dataset”. Вы также можете повторить эти примеры на play-clickstack.clickhouse.com.
1

Перейдите в Chart Explorer

Выберите Chart Explorer в левом меню.
2

Создайте визуализацию

В примере ниже мы строим график средней длительности запросов по времени с группировкой по имени сервиса. Для этого нужно указать метрику, столбец (это может быть SQL-выражение) и поле группировки.Выберите тип визуализации Line/Bar в верхнем меню, затем набор данных Traces (или Demo Traces, если вы используете play-clickstack.clickhouse.com). Заполните следующие значения:
  • Метрика: Average
  • Столбец: Duration/1000
  • Where: <empty>
  • Group By: ServiceName
  • Alias: Average Time
Обратите внимание: события можно фильтровать либо с помощью SQL-условия WHERE, либо с помощью синтаксиса Lucene, а также задавать временной диапазон, за который они должны отображаться. Также поддерживается несколько серий.Например, можно отфильтровать данные по сервису frontend, добавив фильтр ServiceName:\"frontend\". Нажмите Add Series, чтобы добавить вторую серию для количества событий по времени с псевдонимом Count.
Визуализации можно создавать из любого источника данных — метрик, трассировок или журналов. ClickStack обрабатывает всё это как события в широком формате. Любой числовой столбец можно отображать на графике во времени, а строковые, числовые столбцы и столбцы с датами можно использовать для группировки.Такой унифицированный подход позволяет создавать панели мониторинга для разных типов телеметрии, используя единую гибкую модель.

Создание панелей мониторинга

Панели мониторинга позволяют группировать связанные визуализации, чтобы сравнивать Метрики и анализировать закономерности рядом друг с другом, выявляя возможные первопричины проблем в ваших системах. Эти панели мониторинга можно использовать для разовых исследований или сохранять для постоянного мониторинга. Глобальные фильтры можно применять на уровне панели мониторинга, и они автоматически распространяются на все визуализации в её составе. Это обеспечивает единообразную детализацию во всех диаграммах и упрощает сопоставление событий между сервисами и различными типами телеметрии. Ниже мы создадим панель мониторинга с двумя визуализациями, используя источники данных журналов и трассировок. Эти шаги можно повторить на play-clickstack.clickhouse.com или локально, подключившись к датасету, размещённому на sql.clickhouse.com, как описано в руководстве “Remote Demo Dataset”.
1

Перейдите в раздел Dashboards

Выберите Dashboards в левом меню. Затем нажмите New Dashboard, чтобы создать временную или сохранённую панель мониторинга.
2

Создайте визуализацию — среднее время запроса по сервисам

Выберите Add New Tile, чтобы открыть панель создания визуализации.В верхнем меню выберите тип визуализации Line/Bar, затем набор данных Traces (или Demo Traces, если вы используете play-clickstack.clickhouse.com). Заполните следующие поля, чтобы создать диаграмму со средней длительностью запросов во времени для каждого сервиса:
  • Название диаграммы: Average duration by service
  • Метрика: Average
  • Столбец: Duration/1000
  • Where: <empty>
  • Группировать по: ServiceName
  • Псевдоним: Average Time
Нажмите кнопку play перед тем, как нажать Save.Измените размер визуализации так, чтобы она занимала всю ширину панели мониторинга.
3

Создайте визуализацию — события по времени по сервисам

Выберите Add New Tile, чтобы открыть панель создания визуализации.Выберите в верхнем меню тип визуализации Line/Bar, затем набор данных Logs (или Demo Logs, если используете play-clickstack.clickhouse.com). Заполните следующие поля, чтобы создать график, показывающий количество событий по времени для каждого имени сервиса:
  • Название графика: Event count by service
  • Метрика: Count of Events
  • Where: <empty>
  • Group By: ServiceName
  • Alias: Count of events
Нажмите кнопку play перед тем, как нажать Save.Измените размер визуализации так, чтобы она занимала всю ширину панели мониторинга.
4

Добавьте плитку тепловой карты для длительности span

Плитки тепловой карты показывают количество событий, попадающих в каждый бакет (time, value), в виде цветной сетки. Используйте тепловую карту, когда нужно видеть форму распределения во времени, а не только среднее значение или один процентиль. Тепловая карта задержки позволяет выявить бимодальные паттерны длительности, кластеры «медленного хвоста» или резкие расширения, которые линейный график просто усреднил бы.Чтобы добавить плитку тепловой карты:
  1. Выберите Add New Tile.
  2. В верхнем меню выберите тип визуализации Heatmap. В раскрывающемся списке источников данных показываются только источники, чей тип источника — Traces. Источники журналов, метрик и сеансов скрыты, поскольку для тепловых карт нужен столбец длительности span, который есть только у источников трассировок.
  3. Выберите любой из ваших источников трассировок по имени. Само имя произвольно — значение имеет только тип.
После выбора источника поля тепловой карты автоматически заполняются:
  • Value: Duration Expression источника, приведённое к текущей единице отображения (например, (Duration)/1e6, чтобы преобразовать длительность span каждого события из наносекунд в миллисекунды)
  • Count: count()
  1. Задайте имя графика и используйте Where, чтобы ограничить тепловую карту конкретным сервисом или набором операций, за производительностью которых вы хотите наблюдать.
  2. Настройте временной диапазон в соответствии с нужным периодом. Более широкие диапазоны позволяют увидеть сдвиги распределения и бимодальные паттерны задержки, которые короткие окна могут скрывать.
В примере ниже показан один сервис в 24-часовом окне, где быстрый и медленный пути длительности его span чётко разделены на две горизонтальные полосы.Чтобы дополнительно настроить тепловую карту, нажмите Display Settings, чтобы открыть выдвижную панель для Scale (Log или Linear), а также выражений Value и Count. Полный список параметров приведён в разделе Customize the heatmap на странице Event Deltas. Здесь используется та же панель.Нажмите Run, чтобы предварительно просмотреть график, затем — Save.Сохранённая плитка отображается на панели мониторинга как тепловая карта. Наведите указатель на любую ячейку, чтобы увидеть границы бакета и количество событий.
Два запроса ClickHouse для каждой тепловой картыТепловая карта строится с помощью двух последовательных запросов: небольшого запроса границ, который определяет диапазон значений, и запроса тепловой карты, который подсчитывает события в каждом бакете. Оба запроса видны в редакторе в разделе Generated SQL, если вы хотите их изучить или скопировать.

Переход к Event Deltas

Нажмите любую ячейку на готовой плитке тепловой карты, чтобы открыть действие View in Event Deltas.При выборе этого действия открывается представление Event Deltas, куда переносятся источник данных плитки, условие Where и временной диапазон. Там вы сможете интерактивно исследовать то же распределение, разбить его по attribute, чтобы понять, чем медленные spans отличаются от быстрых, и изучить отдельные spans, стоящие за любой ячейкой, не пересобирая запрос вручную.
5

Фильтрация на панели мониторинга

Фильтры Lucene или SQL, а также временной диапазон, можно задавать на уровне панели мониторинга — они автоматически применяются ко всем визуализациям.Для примера примените к панели мониторинга фильтр Lucene ServiceName:"frontend" и установите временной диапазон Последние 3 часа. Обратите внимание: теперь визуализации показывают данные только сервиса frontend.Панель мониторинга сохраняется автоматически. Чтобы задать ей имя, выберите заголовок, измените его и нажмите Save Name.

Панели мониторинга — редактирование визуализаций

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

Панели мониторинга — теги

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

Как работают теги

  • Организация: Теги отображаются на левой боковой панели, где панели мониторинга и сохранённые поиски сгруппированы по назначенным им тегам
  • Несколько тегов: Для более удобной категоризации одному элементу можно назначить один или несколько тегов
  • Автосоздание: Если вы назначите тег, которого ещё не существует, он будет создан автоматически
  • Простое управление: Вы можете в любой момент добавлять или удалять теги, чтобы менять структуру организации
Это упрощает поиск связанных элементов и помогает поддерживать порядок в рабочем пространстве по мере роста коллекции. Вы также можете выбрать несколько тегов, чтобы отфильтровать и просмотреть элементы из разных категорий:

Пользовательские фильтры

Помимо текстовых фильтров, доступных на всех панелях мониторинга, сохраненные панели мониторинга поддерживают пользовательские выпадающие фильтры, значения для которых загружаются из данных, запрошенных в ClickHouse. Это удобные, повторно используемые элементы управления фильтрацией, которые позволяют пользователям фильтровать данные без ручного ввода выражений. Ниже показано, как добавить пользовательский фильтр на панель мониторинга, созданную в разделе «Создание панелей мониторинга».
1

Откройте диалоговое окно Edit Filters

Откройте сохраненную панель мониторинга и выберите Edit Filters на панели инструментов.
2

Добавьте новый фильтр

Нажмите Add new filter. Настройте фильтр: укажите Name, выберите Data source и введите Filter expression — SQL-столбец или выражение, уникальные значения которого будут заполнять выпадающий список. Затем нажмите Save filter.Например, чтобы добавить фильтр по сервису для данных трассировки, используйте ServiceName в качестве выражения фильтра и источник данных Traces. Поле “Dropdown values filter” необязательно и позволяет ограничить набор значений, отображаемых в выпадающем списке.Модальное окно Filters показывает все настроенные фильтры для панели мониторинга. Здесь можно изменять или удалять существующие фильтры, а также добавлять новые.
3

Используйте фильтр

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

(Необязательно) Сохраните значения фильтра по умолчанию

Чтобы сохранить выбранное значение фильтра как значение по умолчанию для панели мониторинга, выберите Save Query & Filters as Default в меню панели мониторинга. После этого панель мониторинга всегда будет открываться с примененными выбранными фильтрами. Чтобы сбросить настройки, выберите Remove Default Query & Filters в том же меню.
Пользовательские выпадающие фильтры доступны в сохраненных панелях мониторинга. Пример использования такого подхода см. в панели мониторинга Kubernetes, где есть встроенные выпадающие фильтры для пода, развертывания, имени узла, пространства имен и кластера.
Плитки панели мониторинга поддерживают переход на страницу Search. Нажмите точку данных на визуализации, чтобы открыть контекстное меню со следующими вариантами:
  • Показать все события — выполняет переход на страницу Search, где отображаются все события за выбранный период времени.
  • Фильтровать по группе — выполняет переход на страницу Search с фильтром по определённой серии.
Это удобно для исследования конкретных всплесков или аномалий, замеченных на панели мониторинга: вы можете быстро перейти от агрегированного представления к отдельным исходным событиям.

Предустановки

HyperDX поставляется с готовыми панелями мониторинга.

Панель мониторинга ClickHouse

На этой панели мониторинга представлены визуализации для мониторинга ClickHouse. Чтобы перейти к ней, выберите её в левом меню. На этой панели мониторинга используются вкладки, которые разделяют мониторинг запросов на чтение, вставок и инфраструктуры ClickHouse.
Требуемый доступ к системным таблицамЭта панель мониторинга обращается к системным таблицам ClickHouse, чтобы показывать ключевые метрики. Требуются следующие привилегии:GRANT SHOW COLUMNS, SELECT(CurrentMetric_MemoryTracking, CurrentMetric_S3Requests, ProfileEvent_OSCPUVirtualTimeMicroseconds, ProfileEvent_OSReadChars, ProfileEvent_OSWriteChars, ProfileEvent_S3GetObject, ProfileEvent_S3ListObjects, ProfileEvent_S3PutObject, ProfileEvent_S3UploadPart, event_time) ON system.metric_logGRANT SHOW COLUMNS, SELECT(active, database, partition, rows, table) ON system.partsGRANT SHOW COLUMNS, SELECT(event_date, event_time, memory_usage, normalized_query_hash, query, query_duration_ms, query_kind, read_rows, tables, type, written_bytes, written_rows) ON system.query_logGRANT SHOW COLUMNS, SELECT(event_date, event_time, hostname, metric, value) ON system.transposed_metric_log

Панель мониторинга сервисов

Панель мониторинга сервисов отображает активные в данный момент сервисы на основе данных трассировок. Для этого необходимо собирать трассировки и настроить корректный источник данных Traces. Имена сервисов автоматически определяются по данным трассировок, а готовые визуализации распределены по трём вкладкам: HTTP Services, Database и Errors. Визуализации можно фильтровать с помощью синтаксиса Lucene или SQL, а временной интервал — настраивать для более точного анализа.

Панель мониторинга Kubernetes

Эта панель мониторинга позволяет изучать события Kubernetes, собранные через OpenTelemetry. В ней есть расширенные параметры фильтрации: можно фильтровать по поду Kubernetes, Развертыванию, имени узла, Пространству имен и кластеру, а также выполнять поиск по произвольному тексту. Данные Kubernetes для удобства навигации распределены по трем вкладкам: Поды, Узлы и Пространства имен.
Последнее изменение 10 июня 2026 г.