ClickHouse1CTechJournal
Приложение загружает логи Технологического журнала 1С в базу данных ClickHouse.
Использование
Путь к логам ТЖ для загрузки указывается первым параметром. Если первый параметр не указан, то поиск логов выполняется в текущем каталоге. Поиск выполняется по маске *.log. Причем имя логов должно быть каноническим YYMMDDHH.log и родительский каталог должен содержать информацию о виде процесса и его PID (rphost_324).
Настройки ClickHouse располагаются в файле config.yaml. Также настройками можно управлять через переменные окружения (см. пример в файле docker-compose.yml). Для локального развертывания ClickHouse можно воспользоваться Docker-образами. Для удобства подготовлен файл docker-compose.yml. По умолчанию логи загружаются в таблицу с секционированием по часам и источнику. На каждые сутки создается одна таблица. В таблице создается первичный ключ по временнОй отметке и виду события ТЖ.
Для подключения используется к ClickHouse JDBC драйвер.
Варианты запуска
Запуск через jar-архив
Собранное и упакованное приложение можно взять в дистрибутивах или откомпилировать самим.
java -classpath [путь_к_модулям] com.clickhouse1ctj.TechJournalToClickHouse [путь_к_логам_ТЖ]
Запуск через shell-скрипт
Наиболее простой вариант взять архив с дистрибутивом, распаковать его и запустить cmd-файл в папке bin. Все необходимые библиотеки поставляются вместе с архивом.
ClickHouse1CTechJournal.bat [путь_к_логам_ТЖ]
Запуск в Docker
Docker-образ опубликован в DockerHub: kron1sant/ch-1c-techjournal. Для запуска отдельного Docker контейнера можно воспользоваться командой:
docker run --name my-test -it --rm -v [путь_к_логам_ТЖ]:/var/lib/ClickHouse1CTechJournal/tj \
-e CH_DATABASE=TechJournalDocker -e CH_HOST=[хост_с_clickhouse] \
kron1sant/ch-1c-techjournal:latest
Запуск в Docker вместе с ClickHouse
Для запуска сразу вместе с сервером ClickHouse можно воспользоваться файлом docker-compose.yml
docker-compose up -d