Экспорт технологического журнала 1С в Elastic с помощью Logstash

18.09.23

База данных - Технологический журнал

Целью данного решения является организация хранения и анализа данных из технологического журнала 1С с использованием стека Elasticsearch + Logstash + Kibana.

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
Экспорт технологического журнала 1с в Elastc с помощью Logstash :
.zip 23,75Mb
15
15 Скачать (5 SM) Купить за 3 050 руб.

В статье подробно описан процесс выгрузки данных из технологического журнала 1С и их загрузки в Elasticsearch с использованием Logstash.

Это позволит организовать гибкий поиск и аналитику по журналу в Elasticsearch Kibana.Сможете увидеть информацию о работе 1С в виде красивых графиков и дашбордов.

Рассмотрены шаги по настройке 1С, установке и конфигурированию Logstash, подготовке Elasticsearch для приема данных.

 

Цель

Целью данного решения является организация хранения и анализа данных из технологического журнала 1С с использованием стека Elasticsearch + Logstash + Kibana.

 

Компонентный состав решения

 
 Kibana необходима для удобной визуализации и анализа данных, хранящихся в Elasticsearch.

 

 
 Elasticsearch нужен для реализации быстрого и гибкого поиска и аналитики по данным технологического журнала 1С.

 

 
 Logstash нужен для извлечения данных из технологического журнала 1С и их преобразования в формат, пригодный для загрузки в Elasticsearch

 

Подготовка

Для того чтобы приступить нужен будет фрагмент журнала регистрации и установленный докер.

 

Установка kibana и elastic

Создаем такое докер композ файл: 

 
 docker-compose.yml

Думаю тут особо ничего не надо комментировать, единственное про logging options включенные могу добавить, что это чтобы логи много места не занимали, т.к. там все в лог будет писаться, а это огромные объемы данных в обычном текстовом виде.

После команды 

docker-compose up -d

Появятся запущенные контейнеры кибаны с эластиком:

 

 

На этом все с эластиком и кибаной, кибана будет доступна http://localhost:5601/

Еще может потребоваться VPN, чтобы загрузить образы для контейнеров.

 

Установка logstash

Дополняем докер композ файл: 

 
 > docker-compose.yml

 

Структура каталогов следующая: 

 
 Структура каталогов

 

Папка 

./logs - тут будут хранится логи которые будем парсить, т.е. каталоги rphost_* с логами.

./logstash/pipeline/patterns - файл с паттернами грока, примерно что это такое можно быстро глянуть тут.

./logstash/pipeline/logstash-tj.config - сам конфиг пайплайна логстеша.

 

Настройка Logstash

 
 Структура конфигурационного файла logstash

В целом конфиг по схеме - откуда брать, как обрабатывать, куда класть данные.

 

logstash-tj.config

 
 input

То есть эта настройка input извлекает все лог-файлы из директории, объединяет многострочные сообщения и помечает события тегом onec. 

 
 filter

Таким образом из "сырого" лога 1С извлекаются все необходимые поля и метаданные, структурируя данные для дальнейшего анализа в Elasticsearch.

 

 
 output

То есть эта настройка выделяет события, помеченные тегом onec, индексирует их в Elasticsearch по дате и выводит в лог для отладки.

 

 
 Что такое grok в секции filter

 

Запуск

Что мы сделали перед запуском:

1. Дополнили файл докер композа логстешем

2. Создали структуру каталогов и файлов, где хранятся настройки и откуда читаются логи

3. Настроили логстеш через конфигурационный файл пайплайна

Итак:

docker-compose up -d

Появятся запущенные контейнеры кибаны с эластиком и логстешем:

 

 
 Открываем кибану, создаем индекс

Идем в Discover кибаны http://localhost:5601/app/discover

 
 И видим что там есть в индексе записи

 

Результат

Дальше можем посмотреть графики:

 
 Что у нас по событиям EXCPCNTX
 
 Что у нас по TLOCK'ам
 
 Что у нас по SDBL 

 

Прочее:

Проект на github: Logstash_TechJournal_1C.

 
 Модуль "FormEditor"(РедакторФорм)
 
 Модуль APM Adapter 1C (elastic)

 

Docker Elastic Kibana Logstash DevOps

См. также

HighLoad оптимизация Технологический журнал Системный администратор Программист Бесплатно (free)

Обсудим поиск и разбор причин длительных серверных вызовов CALL, SCALL.

24.06.2024    5802    ivanov660    12    

56

Технологический журнал Мониторинг Системный администратор Программист Абонемент ($m)

Как легко и быстро с помощью специализированных решений собирать, парсить и передавать логи и метрики.

1 стартмани

15.11.2023    1785    8    AlexSTAL    0    

8

Мониторинг Журнал регистрации Технологический журнал Системный администратор Программист Абонемент ($m)

Как легко и быстро с помощью специализированных решений собирать, парсить и передавать логи и метрики.

1 стартмани

13.11.2023    5152    11    AlexSTAL    0    

47

Администрирование СУБД Технологический журнал Системный администратор Бесплатно (free)

Для расследования проблем производительности недостаточно просто проанализировать технологический журнал. Нужен парсинг контекста событий, его сопоставление с информацией из Extended Events и логов, агрегация огромного количества информации.

21.09.2023    7650    Andreynikus    14    

83
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. SerVer1C 839 18.09.23 16:35 Сейчас в теме
2. huxuxuya 377 18.09.23 19:04 Сейчас в теме
3. Sergant 54 19.09.23 10:21 Сейчас в теме
Очень хочется видеть "красивые графики"
4. user1216265 20.09.24 16:44 Сейчас в теме
Добрый день! Подскажите пожалуйста, без докер контейнеров на физически поднятых серверах можно это реализовать?
6. hexhoc 107 28.09.24 17:29 Сейчас в теме
5. hexhoc 107 28.09.24 17:28 Сейчас в теме
Огромнейшее спасибо автору за проделанную работу.

Я полдня с фильтром и с гроком безуспешно сношался, потом загуглил и нашел эту статью.
Оставьте свое сообщение