КраткоСобирайте и визуализируйте системные журналы хостов (syslog, auth, kernel) в ClickStack с помощью OTel-ресивера
filelog. Включает демо-набор данных и преднастроенный дашборд.Интеграция с существующими хостами
Необходимые условия
- Запущенный экземпляр ClickStack
- Система с файлами syslog
- Доступ на изменение файлов конфигурации ClickStack
1
Проверьте наличие файлов syslog
Сначала убедитесь, что система записывает файлы syslog:- Ubuntu/Debian:
/var/log/syslog - RHEL/CentOS/Fedora:
/var/log/messages - macOS:
/var/log/system.log
2
Создание пользовательской конфигурации OTel collector
ClickStack позволяет расширить базовую конфигурацию OpenTelemetry Collector, подключив пользовательский файл конфигурации и установив переменную среды.Создайте файлhost-logs-monitoring.yaml с конфигурацией для вашей системы:- Современный Linux (Ubuntu 24.04+)
- Linux предыдущих версий (Ubuntu 20.04, RHEL, CentOS)
- macOS
Все конфигурации:
- Считывайте файлы syslog из стандартных расположений
- Разберите формат syslog, чтобы извлечь структурированные поля (временная метка, имя хоста, unit/сервис, PID, сообщение)
- Сохраняйте исходные временные метки логов
- Добавьте атрибут
source: host-logsдля фильтрации данных в HyperDX - Направляйте журналы в экспортёр ClickHouse через выделенный конвейер
- В пользовательской конфигурации вы определяете только новые приёмники и конвейеры
- Процессоры (
memory_limiter,transform,batch) и экспортёры (clickhouse) уже определены в базовой конфигурации ClickStack — вы просто ссылаетесь на них по имени - Regex-парсер извлекает имена юнитов systemd, PID и другие метаданные из формата syslog
- В этой конфигурации используется
start_at: end, чтобы избежать повторного приёма журналов при перезапуске коллектора. Для тестирования измените наstart_at: beginning, чтобы сразу увидеть исторические журналы.
3
Настройте ClickStack для загрузки пользовательской конфигурации
Чтобы включить пользовательскую конфигурацию collector в существующем развертывании ClickStack, необходимо:- Смонтировать файл пользовательской конфигурации по пути
/etc/otelcol-contrib/custom.config.yaml - Задать переменную окружения
CUSTOM_OTELCOL_CONFIG_FILE=/etc/otelcol-contrib/custom.config.yaml - Смонтировать каталог syslog, чтобы collector мог читать из него
Вариант 1: Docker Compose
Обновите конфигурацию развертывания ClickStack:Вариант 2: Docker Run (образ «всё в одном»)
Если вы используете образ «всё в одном» через docker run:Убедитесь, что у коллектора ClickStack есть необходимые разрешения на чтение файлов syslog. В рабочей среде используйте монтирования только для чтения (
:ro) и придерживайтесь принципа наименьших привилегий.4
Проверка журналов в HyperDX
После настройки войдите в HyperDX и убедитесь, что журналы поступают:- Перейдите в представление поиска
- В поле source выберите Logs
- Отфильтруйте по
source:host-logs, чтобы увидеть журналы с конкретного хоста - Вы должны увидеть структурированные записи журнала с такими полями, как
unit,hostname,pid,messageи т. д.
Демо-набор данных
1
Скачайте демо-набор данных
Скачайте демонстрационный файл журнала:- Последовательность загрузки системы
- Активность входа по SSH (успешные и неуспешные попытки)
- Инцидент безопасности (brute-force-атака с реакцией fail2ban)
- Плановое обслуживание (cron-задачи, anacron)
- Перезапуски сервисов (rsyslog)
- Сообщения ядра и активность межсетевого экрана
- Сочетание обычных операций и заметных событий
2
Создайте тестовую конфигурацию коллектора
Создайте файл с именемhost-logs-demo.yaml со следующей конфигурацией:3
Запустите ClickStack с демо-конфигурацией
Запустите ClickStack с демо-журналами и этой конфигурацией:Файл журнала монтируется прямо в контейнер. Это сделано для тестирования на статических демо-данных.
4
Проверьте журналы в HyperDX
После запуска ClickStack:- Откройте HyperDX и войдите в свою учётную запись (возможно, сначала потребуется её создать)
- Перейдите в представление Search и выберите источник
Logs - Установите временной диапазон 2025-11-10 00:00:00 - 2025-11-13 00:00:00
Отображение часового поясаHyperDX отображает временные метки в локальном часовом поясе вашего браузера. Демо-данные охватывают период 2025-11-11 00:00:00 - 2025-11-12 00:00:00 (UTC). Широкий временной диапазон гарантирует, что вы увидите демо-журналы независимо от своего местоположения. После этого можно сузить диапазон до 24 часов для более наглядной визуализации.
Панели мониторинга и визуализация
1
конфигурацию панели мониторинга
2
Импортируйте преднастроенный дашборд
- Откройте HyperDX и перейдите в раздел Dashboards
- Нажмите Import Dashboard в правом верхнем углу в меню с многоточием
- Загрузите файл
host-logs-dashboard.jsonи нажмите Finish Import
3
Откройте панель мониторинга
Панель мониторинга будет создана со всеми преднастроенными визуализациями:Основные визуализации:- Объём журналов во времени по уровням серьёзности
- Юниты systemd, генерирующие больше всего журналов
- Активность входа по SSH (успешные и неудачные попытки)
- Активность межсетевого экрана (заблокировано и разрешено)
- События безопасности (неудачные входы, баны, блокировки)
- Активность перезапуска сервисов
Для демо-набора данных установите временной диапазон 2025-11-11 00:00:00 - 2025-11-12 00:00:00 (UTC) (скорректируйте его в соответствии с вашим часовым поясом). В импортированной панели мониторинга по умолчанию временной диапазон не задан.
Устранение неполадок
Пользовательская конфигурация не загружается
Журналы не отображаются в HyperDX
Логи разбираются некорректно
Следующие шаги
- Настройте оповещения для критически важных системных событий (сбои сервиса, ошибки аутентификации, предупреждения о состоянии диска)
- Фильтруйте по конкретным юнитам, чтобы отслеживать отдельные сервисы
- Коррелируйте журнал хоста с журналами приложений для комплексной диагностики и устранения неполадок
- Создайте пользовательские панели мониторинга для мониторинга безопасности (попытки SSH, использование sudo, блокировки межсетевым экраном)