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

18.09.23

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

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

Скачать файл

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

Наименование По подписке [?] Купить один файл
Экспорт технологического журнала 1с в Elastc с помощью Logstash :
.zip 23,75Mb
16
16 Скачать (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 оптимизация Рефакторинг и качество кода Технологический журнал Программист Платформа 1С v8.3 Россия Бесплатно (free)

Технологии бегут вперёд, но боль производительности 1С остаётся вечной: инфраструктура, код или настройки? Пока ИИ не научился чинить всё «на лету», мы автоматизировали ключевое — диагностику. Читайте статью — показываем, как превратить хаос диагностики в понятные графики и цифры. Спойлер: это работает даже если ваша 1С — «чёрный ящик» на старом железе.

19.03.2025    2386    EFSOL_oblako    3    

6

Технологический журнал Механизмы платформы 1С Запросы Программист Запросы Бесплатно (free)

Существуют различные методики и инструменты просмотра запроса 1С в PostgreSQL. В этой статье мы разберём подробнее метод анализа запроса 1С на стороне PostgreSQL с помощью технологического журнала платформы 1С и команд в терминале Ubuntu.

04.03.2025    949    user593895_gurov-boris-spb    5    

4

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

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

24.06.2024    6725    ivanov660    12    

57

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

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

1 стартмани

15.11.2023    2132    8    AlexSTAL    0    

8

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

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

1 стартмани

13.11.2023    5797    11    AlexSTAL    0    

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

Я полдня с фильтром и с гроком безуспешно сношался, потом загуглил и нашел эту статью.
7. saver77 65 18.03.25 22:18 Сейчас в теме
Спасибо за проделанную работу. Использовали ваши файлы настроек и всё хорошо
Но есть две проблемы:
1. Не работает многострочное преобразование. Т.е. в message получаю только первую строку, начинающуюся с метки времени.
2. TimeToMinutes не распарсивается, получается значение %{TimeToMinutes}24:04.894
Подскажите, пожалуйста, как их решить.
Оставьте свое сообщение