Перейти к основному содержанию
Хотите сохранять журналы аудита ClickHouse Cloud в Splunk? Следуйте руководству “Storing ClickHouse Cloud Audit logs into Splunk”.
Splunk — популярная платформа для безопасности и обсервабилити. Это также мощный движок для поиска и создания панелей мониторинга. Существуют сотни приложений Splunk для самых разных сценариев использования. Для ClickHouse мы используем Splunk DB Connect App, который обеспечивает простую интеграцию с высокопроизводительным JDBC-драйвером ClickHouse и позволяет выполнять запросы к таблицам в ClickHouse напрямую. Эта интеграция лучше всего подходит, когда ClickHouse используется для крупных источников данных, таких как NetFlow, бинарные данные Avro или Protobuf, DNS, журналы потоков VPC и другие журналы OTel, которыми можно делиться с командой через Splunk для поиска и создания панелей мониторинга. При таком подходе данные не поступают в слой индекса Splunk, а запрашиваются напрямую из ClickHouse — аналогично другим интеграциям для визуализации, таким как Metabase или Superset.

Цель​

В этом руководстве мы будем использовать JDBC-драйвер ClickHouse, чтобы подключить ClickHouse к Splunk. Мы установим локальную версию Splunk Enterprise, но не будем индексировать данные. Вместо этого воспользуемся функциями поиска через движок запросов DB Connect. С помощью этого руководства вы сможете создать панель мониторинга, подключенную к ClickHouse, примерно такую:
В этом руководстве используется набор данных New York City Taxi. Вы также можете использовать множество других наборов данных из нашей документации.

Предварительные требования

Перед началом работы вам потребуется:
  • Splunk Enterprise для работы с функциями search head
  • Установленная в ОС или контейнере Java Runtime Environment (JRE), соответствующая требованиям
  • Splunk DB Connect
  • Роль Admin или SSH-доступ к ОС экземпляра Splunk Enterprise
  • сведения о подключении к ClickHouse (см. здесь, если вы используете ClickHouse Cloud)

Установите и настройте DB Connect в Splunk Enterprise

Сначала необходимо установить Java Runtime Environment в вашем экземпляре Splunk Enterprise. Если вы используете Docker, можно воспользоваться командой microdnf install java-11-openjdk. Запишите путь java_home: java -XshowSettings:properties -version. Убедитесь, что в Splunk Enterprise установлено приложение DB Connect App. Его можно найти в разделе Apps в веб-интерфейсе Splunk:
  • Войдите в Splunk Web и перейдите в Apps > Find More Apps
  • Используйте поле поиска, чтобы найти DB Connect
  • Нажмите зелёную кнопку “Install” рядом со Splunk DB Connect
  • Нажмите “Restart Splunk”
Если у вас возникают проблемы с установкой DB Connect App, дополнительные инструкции см. по этой ссылке. После того как вы убедитесь, что DB Connect App установлен, добавьте путь java_home в DB Connect App в разделе Configuration -> Settings, затем нажмите save и reset.

Настройка JDBC для ClickHouse

Скачайте JAR-файл драйвера JDBC для ClickHouse и скопируйте его в папку DB Connect Drivers по адресу:
Чтобы в DB Connect App были доступны все необходимые зависимости, скачайте один из следующих файлов:
Затем необходимо изменить конфигурацию типов подключений в $SPLUNK_HOME/etc/apps/splunk_app_db_connect/local/db_connection_types.conf, чтобы добавить сведения о классе JDBC-драйвера ClickHouse. Добавьте следующий блок в db_connection_types.conf:
Перезапустите Splunk командой $SPLUNK_HOME/bin/splunk restart. Вернитесь в DB Connect App и перейдите в Configuration > Settings > Drivers. Рядом с ClickHouse должен отображаться зеленый флажок:

Подключите поиск Splunk к ClickHouse

Перейдите в DB Connect App Configuration -> Databases -> Identities и создайте Identity для ClickHouse. Создайте новое подключение к ClickHouse через Configuration -> Databases -> Connections и выберите “New Connection”.
Добавьте данные хоста ClickHouse и убедитесь, что флажок “Enable SSL” установлен: После сохранения подключение ClickHouse к Splunk будет успешно настроено!
Если вы получаете ошибку, убедитесь, что IP-адрес вашего экземпляра Splunk добавлен в ClickHouse Cloud IP Access List. Подробнее см. в документации.

Выполните SQL-запрос

Теперь выполним SQL-запрос, чтобы проверить, что всё работает. В SQL Explorer выберите сведения о подключении в разделе DataLab приложения DB Connect App. В этом примере мы используем таблицу trips: Выполните SQL-запрос к таблице trips, который возвращает общее количество записей в таблице: Если запрос выполнен успешно, вы увидите результаты.

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

Давайте создадим панель мониторинга, в которой используется сочетание SQL и мощного языка Splunk Processing Language (SPL). Прежде чем продолжить, необходимо сначала отключить механизмы защиты DPL. Запустите следующий запрос, который показывает 10 районов, где чаще всего забирают пассажиров:
Выберите вкладку визуализации, чтобы увидеть созданную столбчатую диаграмму: Теперь создадим панель мониторинга: нажмите Save As > Save to a Dashboard. Давайте добавим ещё один запрос, который показывает среднюю стоимость поездки в зависимости от количества пассажиров.
На этот раз давайте создадим столбчатую диаграмму и сохраним её на предыдущей панели мониторинга. Наконец, давайте добавим ещё один запрос, который показывает корреляцию между количеством пассажиров и длиной поездки:
Наша итоговая панель мониторинга должна выглядеть так:

Данные временных рядов

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

Подробнее

Если вы хотите узнать больше о Splunk DB Connect и создании панелей мониторинга, см. документацию Splunk.
Последнее изменение 12 июня 2026 г.