ClickStack — стек обсервабилити ClickHouse

ClickStack — это платформа наблюдаемости промышленного уровня, построенная на ClickHouse и объединяющая логи, трейсы, метрики и сеансы в едином высокопроизводительном решении. Предназначенная для мониторинга и отладки сложных систем, ClickStack позволяет разработчикам и SRE выполнять сквозное трассирование проблем без переключения между инструментами или ручного связывания данных по меткам времени или идентификаторам корреляции.
В основе ClickStack лежит простая, но мощная идея: все данные наблюдаемости должны поступать в систему в виде широких, информативных событий. Эти события хранятся в таблицах ClickHouse по типам данных — логи, трейсы, метрики и сеансы, — но при этом остаются полностью доступными для выполнения запросов и перекрёстной корреляции на уровне базы данных.
ClickStack создан для эффективной обработки рабочих нагрузок с высокой кардинальностью, используя колоночную архитектуру ClickHouse, встроенную поддержку JSON и полностью параллельный движок выполнения. Это обеспечивает выполнение запросов с задержкой менее секунды по огромным наборам данных, быстрые агрегации на больших интервалах времени и глубокий анализ отдельных трейсов. JSON хранится в сжатом колоночном формате, что позволяет изменять схему без ручного вмешательства или предварительного определения.
Возможности
Стек включает несколько ключевых возможностей, предназначенных для отладки и анализа первопричин:
- Коррелировать и искать логи, метрики, повторы сессий (session replays) и трейсы в одном месте
- Схемо-независимая работа поверх вашей существующей схемы ClickHouse
- Молниеносный поиск и визуализации, оптимизированные для ClickHouse
- Интуитивно понятный синтаксис полнотекстового и параметрического поиска (например,
level:err), SQL по желанию - Анализировать тренды аномалий с помощью дельт событий
- Настраивать оповещения всего в несколько кликов
- Создавать дашборды по событиям с высокой кардинальностью без сложного языка запросов
- Нативная поддержка запросов к JSON-строкам
- Live tail логов и трейсов для получения самых свежих событий
- Поддержка OpenTelemetry (OTel) «из коробки»
- Мониторинг состояния и производительности от HTTP-запросов до запросов к БД (APM)
- Дельты событий для выявления аномалий и регрессий производительности
- Распознавание шаблонов в логах
Компоненты
ClickStack состоит из трех основных компонентов:
- ClickStack UI (HyperDX) – специализированный интерфейс для исследования и визуализации данных наблюдаемости
- OpenTelemetry collector – специально разработанный, предварительно сконфигурированный коллектор с продуманной схемой для логов, трассировок и метрик
- ClickHouse – высокопроизводительная аналитическая база данных в основе стека
Эти компоненты можно развернуть совместно в полностью самоуправляемой конфигурации ClickStack Open Source или разделить между управляемыми и самоуправляемыми средами. В Managed ClickStack ClickHouse и HyperDX UI размещаются и управляются в ClickHouse Cloud, а пользователи запускают только OpenTelemetry Collector.
Также доступна веб-версия HyperDX UI, позволяющая пользователям напрямую подключаться к существующим развертываниям ClickHouse без развертывания дополнительной UI-инфраструктуры.
Для начала работы ознакомьтесь с руководством по началу работы, а затем загрузите пример набора данных. Вы также можете изучить документацию по вариантам развертывания и передовым практикам эксплуатации в production-средах.
Принципы
ClickStack спроектирован на основе ряда ключевых принципов, которые на всех уровнях стека наблюдаемости отдают приоритет простоте использования, производительности и гибкости:
Простая настройка за считанные минуты
ClickStack сразу готов к работе с любым экземпляром ClickHouse и любой схемой, требуя минимальной настройки. Независимо от того, начинаете ли вы с нуля или интегрируете его в существующую инфраструктуру, вы сможете запустить его в считанные минуты.
Удобный и специализированный
Интерфейс HyperDX поддерживает как SQL, так и синтаксис Lucene, позволяя пользователям выбирать тот язык запросов, который лучше вписывается в их рабочий процесс. Изначально спроектированный для задач наблюдаемости, интерфейс оптимизирован для того, чтобы помогать командам быстро находить первопричины и легко ориентироваться в сложных данных.
Сквозная наблюдаемость
ClickStack обеспечивает полную наблюдаемость всего стека — от пользовательских сессий на фронтенде до метрик инфраструктуры бэкенда, логов приложений и распределённых трассировок. Это единое представление позволяет выполнять глубокий анализ и сопоставление данных по всей системе.
Создано для ClickHouse
Каждый слой стека спроектирован так, чтобы в полной мере использовать возможности ClickHouse. Запросы оптимизированы для задействования аналитических функций и колоночного движка ClickHouse, обеспечивая быстрый поиск и агрегацию по огромным объёмам данных.
Нативная поддержка OpenTelemetry
ClickStack нативно интегрирован с OpenTelemetry и принимает все данные через конечную точку коллектора OpenTelemetry. Для продвинутых пользователей также поддерживается прямая ингестия в ClickHouse с использованием нативных файловых форматов, пользовательских конвейеров или сторонних инструментов, таких как Vector.
Открытый исходный код и полная настраиваемость
ClickStack полностью с открытым исходным кодом и может быть развёрнут где угодно. Схема гибкая и может изменяться пользователем, а UI спроектирован так, чтобы его можно было конфигурировать под пользовательские схемы без необходимости менять сам UI. Все компоненты — включая коллекторы, ClickHouse и UI — могут масштабироваться независимо друг от друга в соответствии с потребностями по ингестии, выполнению запросов или хранению данных.
Обзор архитектуры
Архитектура ClickStack зависит от способа развертывания. Существуют важные архитектурные различия между ClickStack Open Source, где все компоненты являются самоуправляемыми, и Managed ClickStack, где ClickHouse и интерфейс HyperDX UI размещаются и эксплуатируются в ClickHouse Cloud. Хотя базовые компоненты остаются одинаковыми в обеих моделях, ответственность за размещение, масштабирование и защиту каждого компонента различается.
- Управляемый ClickStack
- Open Source ClickStack

Managed ClickStack полностью выполняется в ClickHouse Cloud, предоставляя полностью управляемый бекенд обсервабилити при сохранении той же модели данных ClickStack и пользовательского опыта.
В этой модели ClickHouse и ClickStack UI (HyperDX) размещаются, эксплуатируются и защищаются ClickHouse Cloud. Пользователи отвечают только за запуск OpenTelemetry Collector для отправки телеметрических данных в управляемый сервис.
Managed ClickStack состоит из следующих компонентов:
-
ClickStack UI (HyperDX)
Интерфейс ClickStack UI (HyperDX) полностью интегрирован в ClickHouse Cloud и управляется как часть сервиса. Он предоставляет поиск по логам, исследование трассировок, дашборды, оповещения и корреляцию между типами телеметрии с интегрированной аутентификацией и управлением доступом. -
OpenTelemetry collector (самоуправляемый)
Пользователи запускают OpenTelemetry Collector, который получает телеметрические данные от их приложений и инфраструктуры. Этот коллектор пересылает данные по OTLP в ClickHouse Cloud. Хотя можно использовать любой совместимый со стандартом OpenTelemetry Collector, мы настоятельно рекомендуем дистрибутив ClickStack, который преднастроен и оптимизирован для ингестии в ClickHouse и «из коробки» работает со схемами ClickStack. -
ClickHouse Cloud
ClickHouse полностью управляется в ClickHouse Cloud и выступает в роли хранилища и движка запросов для всех данных обсервабилити. Пользователям не нужно управлять кластерами, обновлениями или операционными задачами.
Managed ClickStack предоставляет несколько ключевых преимуществ:
- Автоматическое масштабирование вычислительных ресурсов независимо от хранилища
- Низкая стоимость и практически неограниченный срок хранения, обеспеченные объектным хранилищем
- Независимая изоляция чтения и записи с использованием ClickHouse Cloud Warehouses
- Интегрированная аутентификация и управление доступом
- Автоматизированные резервные копии
- Функции безопасности и соответствия требованиям
- Плавные обновления без операционных простоев
Эта модель развертывания позволяет командам полностью сосредоточиться на рабочих процессах обсервабилити и инструментировании без накладных расходов на эксплуатацию ClickHouse или ClickStack UI.
Для пользователей, развертывающих ClickStack в продуктивной среде, Managed ClickStack является рекомендуемым вариантом. Инструкции по развертыванию ClickStack с ClickHouse Cloud см. в руководстве по началу работы.

Open Source ClickStack состоит из трёх основных компонентов:
-
ClickStack UI (HyperDX)
Удобный интерфейс, созданный для задач наблюдаемости. Поддерживает запросы в стиле Lucene и SQL, интерактивные дашборды, оповещения, исследование трассировок и многое другое — всё оптимизировано для ClickHouse в качестве бекенда. -
OpenTelemetry collector
Специально разработанный коллектор, настроенный с предопределённой схемой, оптимизированной для ингестии в ClickHouse. Получает логи, метрики и трассировки по протоколам OpenTelemetry и записывает их напрямую в ClickHouse с использованием эффективных пакетных вставок. -
ClickHouse
Высокопроизводительная аналитическая база данных, которая выступает в роли центрального хранилища данных для событий с широкой структурой. ClickHouse обеспечивает быстрый поиск, фильтрацию и агрегацию на больших объёмах данных, используя свой колонночный движок и встроенную поддержку JSON.
Помимо этих трёх компонентов, ClickStack использует экземпляр MongoDB для хранения состояния приложения, такого как дашборды, учётные записи пользователей и параметры конфигурации.
Полная схема архитектуры и подробности развертывания приведены в разделе «Architecture».
Пользователям, планирующим развернуть Open Source ClickStack в продуктивной среде, рекомендуется ознакомиться с руководством «Production».