Скрипты из видео с канала "Веселый1С": https://youtu.be/HnZ0Of-YpW0
Экспортер файлов ЖР: https://github.com/akpaevj/OneSTools.EventLog
Скрипты доработаны для экспорта файлов ЖР серверных баз кластера 1С.
Для установки и запуска выполнить:
-
Скачать релиз
OneSTools.EventLog
и распаковать в папкуlog-exporter/app/
-
Файл
appsettings.json
должен выглядеть так:
{
"Logging": {
"LogLevel": {
"Default": "Debug",
"Microsoft": "Warning",
"Microsoft.Hosting.Lifetime": "Information"
}
},
"Manager": {
"ClstFolders": [
{
"Folder": "/var/logdata",
"Templates": [
{
"Mask": "",
"Template": "[IBNAME]_reglogs"
}
]
}
]
},
"Exporter": {
"StorageType": 1,
"Portion": 10000,
"TimeZone": "Europe/Moscow",
"WritingMaxDegreeOfParallelism": 1,
"CollectedFactor": 3,
"ReadingTimeout": 1,
"LoadArchive": false
},
"ClickHouse": {
"ConnectionString": ""
}
}
-
В
docker-compose.yml
указать свой путь к каталогу кластера 1С (collector-volumes
) -
Выполнить
docker compose up -d
-
Подключиться к консоли
Tabix
: http://localhost:8085
В строке подключения к ClickHouse для пользователя default
задан пароль (перед компоновкой можно установить любой свой).
А контейнер с сервером ClickHouse поднимается из образа, в котором никакой пароль не задан.
Поэтому, после компоновки контейнеров, нужно остановить сервис collector
, далее в файловой системе контейнера clickhouse
изменить файл: /etc/clickhouse-server/users.xml
(добавить пароль внутри тегов password
).
После чего перезапустить контейнер clickhouse
и запустить контейнер collector
Дополнение: как поднять несколько экземпляров экспортера (каждый из которых "прослушивает" свой каталог кластера 1С)
В общем случае, на одном и том же хосте можно поднять несколько контейнеров с сервисом collector
.
Пример можно посмотреть в файле one-more-collector.yml
.
Последовательность действий остается той же самой: должен быть уже создан контейнер с ClickHouse Server, затем на него можно "завязать" произвольное количество экспортеров (каждый из которых должен анализировать свой собственный каталог кластера 1С).
Для создания еще одного контейнера с сервисом collector
следует переименовать файл one-more-collector.yml
в docker-compose.yml
.
Необходимо убедиться, что имя нового контейнера отличается от имен ранее созданных аналогичных контейнеров (секция файла "services").
При совпадении имен вместо создания нового контейнера система пересоберет существующий.
Команда для создания еще одного экземпляра collector
(без запуска после создания): docker compose up -d --no-start
Таким образом, хост с N сервисов collector
может экспортировать данные из N каталогов кластеров 1С в одну и ту же БД ClickHouse. Главное условия - имена ИБ 1С в них должны различаться.
АнализЖурналовРегистрацииПоБД_Clickhouse
Данный отчет универсален и может работать в любой конфигурации 1С, даже в пустой. Для http-запросов к Clickhouse используется функционал подсистемы "Коннектор": https://github.com/vbondarevsky/Connector
Если просматривать записи журнала в "родной" для этих записей базе - будет доступно преобразование уникальных идентификаторов в ссылки на объекты.
Доработки отчета могут быть произведены простым добавлением новых вариантов, как в пользовательском режиме, так и созданием предопределенных (в конфигураторе). "Движок" отчета построит запрос к Clickhouse с учетом выбранных полей и настроенных отборов.
Сохранена вся функциональность СКД (отборы, расшифровки, детализация и т.д.) В конфигурациях на базе БСП дополнительно будут работать варианты отчета, связанные с отображением изменений пользователей ИБ (изменение прав, реквизитов). При выполнении детализаций все отборы из "родительского" отчета наследуются "дочерним" (плюс прибавляется указанный новый отбор). В этом случаем удобно просматривать общую таблицу записей журнала и по ПКМ открывать новый отчет (в соседнем окне), с фильтром на значение любой колонки.
Несмотря на то, что отчет позволяет получать и отображать 500к+ записей - не рекомендуется использовать эту возможность в рабочих ИБ (так как это приводит к перерасходу ОЗУ клиентом 1С и к перерасходу ОЗУ самим Clickhouse - вплоть до падения его сервиса).
Скриншоты работы с отчетом можно посмотреть здесь: Описание_сервиса