Телефон: 8-800-350-22-65
WhatsApp: 8-800-350-22-65
Telegram: sibac
Прием заявок круглосуточно
График работы офиса: с 9.00 до 18.00 Нск (5.00 - 14.00 Мск)

Статья опубликована в рамках: Научного журнала «Студенческий» № 17(313)

Рубрика журнала: Информационные технологии

Библиографическое описание:
Воронкова А.С. АВТОМАТИЗАЦИИ МОНИТОРИНГА ПРОИЗВОДИТЕЛЬНОСТИ ПРОГРАММНОГО КОМПЛЕКСА «ТЕХНОДОК» И МОДУЛЯ ОТЧЕТОВ // Студенческий: электрон. научн. журн. 2025. № 17(313). URL: https://sibac.info/journal/student/313/372235 (дата обращения: 16.05.2025).

АВТОМАТИЗАЦИИ МОНИТОРИНГА ПРОИЗВОДИТЕЛЬНОСТИ ПРОГРАММНОГО КОМПЛЕКСА «ТЕХНОДОК» И МОДУЛЯ ОТЧЕТОВ

Воронкова Анастасия Сергеевна

магистрант, кафедра программных систем, Самарский государственный университет,

РФ, г. Самара

Зеленко Лариса Сергеевна

научный руководитель,

канд. техн. наук, доц. кафедры программных систем, Самарский государственный университет,

РФ, г. Самара

AUTOMATION OF PERFORMANCE MONITORING OF THE SOFTWARE PACKAGE «TECHNODOK» AND THE REPORT MODULE

 

Anastasiya Voronkova

master student, Department of Software Systems, Samara University,

Russia, Samara

Larisa Zelenko

scientific supervisor, Ph.D. tech. Sciences, Associate Professor department of software systems, Samara State University,

Russia, Samara

 

АННОТАЦИЯ

В статье рассматривается вопросы автоматизации производительности мониторинга программного комплекса «ТехноДок» с применением решений с открытым исходным кодом Prometheus и Grafana.

ABSTRACT

The article discusses the issues of automation of monitoring performance of the software package «Technodoc» using Prometheus and Grafana open source solutions.

 

Ключевые слова: мониторинг; программный комплекс «ТехноДок»; метрики; панели; дэшборды; Grafana; Prometheus.

Keywords: monitoring; software package «TechnoDoc»; metrics; dashboards; dashboards; Grafana; Prometheus.

 

Введение

В современном мире, где информационные системы играют ключевую роль в деятельности компаний и организаций, использование метрик, оповещений и журналов для мониторинга систем становится все более актуальным [1]. Эти инструменты позволяют автоматически контролировать работу различных компонентов информационной системы, а также предупреждать о возможных проблемах или сбоях до того, как они повлияют на работу всей системы.

Метрики позволяют отслеживать различные показатели производительности системы, такие как загрузка процессора, объем используемой памяти, скорость передачи данных и другие. Сигналы тревоги предупреждают о сбоях в работе системы, таких как высокие нагрузки или неожиданные отключения электроэнергии. В журналах фиксируется информация о активности системы, что позволяет анализировать данные и выявлять тенденции.

В связи с необходимостью повышения надежности программного комплекса (ПК) «Технодок» и модуля отчетов, созданного компанией ООО НВФ «Сенсоры. Модули. Системы (СМС)», а также уменьшения числа дефектов при его работе, наличия исторических данных при разборе дефекта и принятии решения для его исправления, возникла потребность в мониторинге и контроле функционирования ПК «ТехноДок» и модуля отчетов.

ПК «ТехноДок» – это система производственной отчетности и аналитики для промышленных предприятий [2]. Он позволяет автоматизировать задачи формирования суточных ведомостей, расчет и учет наработки оборудования, расчет материальных и энергетических балансов, формирование и отправку макетов электроэнергии, ведение бланков переключений. «ТехноДок» предоставляет мощный конструктор отчетов, позволяющий сотрудникам предприятия создавать и модифицировать отчеты собственными силами без программирования.

Целью данной работы является автоматизация мониторинга производительности ПК «ТехноДок» и модуля отчетов при помощи инструментов Prometheus и Grafana.

Описание Prometheus и Grafana и их совместное практическое применение

Prometheus – это инструментарий для мониторинга и оповещения систем с открытым исходным кодом, изначально созданный в компании SoundCloud [3]. Prometheus собирает и хранит свои метрики в виде временных рядов, т.е. информация о метриках хранится с меткой времени, в которую она была записана, а также с дополнительными парами ключ-значение, называемыми метками.

Grafana – это платформа визуализации и аналитики с открытым исходным кодом, разработанная компанией Grafana Labs [4]. Она интегрируется со сторонними инструментами для сбора и хранения данных временных рядов из различных сред, включая традиционные серверы, облачные сервисы, виртуальные машины, кластеры Kubernetes и др. Grafana позволяет запрашивать, визуализировать, оповещать и понимать показатели независимо от того, где они хранятся.

Grafana позволяет запрашивать, визуализировать, оповещать и понимать показатели независимо от того, где они хранятся.

Использование Grafana и Prometheus вместе дает несколько ключевых преимуществ:

  • визуализация метрик в реальном времени: Grafana позволяет визуализировать метрики, собранные Prometheus, что способствует быстрому и интуитивному пониманию текущего состояния системы;
  • настраиваемые алерты: Prometheus поддерживает настройку алертов, которые могут быть интегрированы с Grafana для визуального представления и отправки уведомлений через различные каналы, такие как email, Slack, PagerDuty и другие;
  • производительность и масштабируемость: использование Prometheus для сбора данных и Grafana для визуализации позволяет масштабировать мониторинг в соответствии с растущими требованиями системы, не теряя при этом производительности;
  • отладка и диагностика: логи, интегрированные в Grafana, могут быть использованы для диагностики и отладки проблем, позволяя разработчикам и операционным командам быстро находить и устранять источники сбоев;
  • хранилище данных: Prometheus сохраняет значения метрик в базе данных временных рядов, благодаря чему не надо хранить данные метрик в БД ПК «ТехноДок» и думать об оптимизации операций чтения и записи для больших объемов данных.

Таким образом, использование метрик в программном обеспечении через инструменты Grafana и Prometheus для ПК «ТехноДок» и модуля отчетов предоставляет мощные средства для мониторинга, диагностики и оптимизации системы и обеспечивает повышение надежности и производительности комплекса.

Взаимодействие ПК «ТехноДок» с Prometheus и Grafana

На рисунке 1 приведена структурная схема взаимодействия ПК «ТехноДок» с Prometheus и Grafana. Prometheus опрашивает ПК «ТехноДок» по HTTP и собирает метрики, формируемые подсистемой метрик, для мониторинга работы как самого комплекса, так и работы модуля отчетов. Для визуализации значений собранных метрик в реальном времени и за определенный период используется Grafana, которая в свою очередь использует в качестве источника необходимых данных Prometheus.

 

Рисунок 1. Структурная схема ПК «ТехноДок» и его взаимодействия с Prometheus и Grafana

 

Обзор разработанных метрик и созданных панелей для мониторинга

Для мониторинга производительности ПК «ТехноДок» и модуля отчетов используются следующие метрики:

  • метрики ресурсов (есть в Prometheus): утилизация CPU, использование памяти, рабочий набор памяти, свободное место на диске;
  • метрики производительности приложения: время выполнения запроса, количество запросов, время выполнения задач, количество успешных и проваленных задач;
  • метрики отчетов: счетчик созданных отчетов, время создания отчета, счетчик открытых отчетов, время создания отчета, время расчета параметра отчета, последнее значение параметра отчета.

На основе приведенных выше метрик были разработаны следующие панели Grafana:

  • утилизация CPU – панель, отображающая загрузку процессора, то есть количество работы, которую выполняет машина;
  • рабочий набор памяти – панель, отображающая рабочий набор памяти;
  • свободное место на диске – панель, отображающая свободное место на дисках машины;
  • процент используемой памяти – панель, отображающая процент используемой памяти;
  • среднее время выполнения запроса – панель, отображающая среднее время выполнения каждого запроса;
  • запросы к серверу – панель, отображающая максимальное и последнее рассчитанное значение времени выполнения запроса в тот или иной момент времени;
  • среднее время открытия отчета – панель, отображающая среднее время открытия существующего отчета;
  • топ 10 отчетов с наибольшим просмотром – панель, отображающая список из 10 отчетов с наибольшим просмотром;
  • среднее время создания отчета – панель, отображающая среднее время создания отчета;
  • топ 10 созданных отчетов – панель, отображающая список из 10 шаблонов отчетов с наибольшим числом создания отчетов по ним;
  • среднее время расчета параметра – панель, отображающая среднее время расчета параметра для того или иного отчета;
  • время выполнения задач – панель, отображающая максимальное и последнее рассчитанное значения времени выполнения периодических задач;
  • среднее время выполнения задач – панель, отображающая среднее время выполнения периодических задач;
  • количество успешно выполненных задач – панель, отображающая число успешных выполнений той или иной периодической задачи;
  • количество ошибок при выполнении задач – панель, отображающая число проваленных выполнений той или иной периодической задачи;
  • среднее время создания определенного отчета – панель, отображающая среднее время создания определенного отчета на дэшборде отчета;
  • среднее время открытия отчета – панель, отображающая среднее время открытия конкретного отчета на дэшборде отчета;
  • среднее время расчета параметра – панель, отображающая среднее время расчета параметра конкретного отчета на дэшборде отчета;
  • создано отчетов – панель, отображающая число созданных отчетов на дэшборде отчета;
  • число просмотров – панель, отображающая число просмотров конкретного отчета на дэшборде отчета;
  • последнее значение параметра – панель, отображающая последнее значения параметров конкретного отчета на дэшборде отчета.

Результаты работы

Чтобы обосновать необходимость и эффективность автоматизации мониторинга производительности ПК «ТехноДок» и модуля отчетов, было проведено исследование, в ходе которого рассматривалась информативность и полезность разработанных метрик и панелей, созданных на их основе, для аналитики, администрирования и разработки. Результаты указывают на то, что используемые метрики и панели Grafana являются ценным инструментом для мониторинга производительности приложения и модуля отчетов.

Благодаря разработанным метрикам и панелям:

  • удалось заметить, что чаще всего используются отчеты определенной группы;
  • удалось выяснить активность пользователей – чаще всего ПК «ТехноДок» используют в первой половине дня;
  • удалось отследить нагрузку на CPU и потребление памяти, а также понять какие отчеты больше всего используют ресурсов;
  • удалось снизить нагрузку на CPU за счет оптимизации методов генерации отчетов и расчетов параметров.

Таким образом, сочетание Prometheus и Grafana для мониторинга производительности приложения позволяет не только оптимизировать работу системы, но и своевременно выявить критические проблемы в ее функционировании и предотвратить их. Это делает данные технологии незаменимыми для команд разработки и технической поддержки.

 

Список литературы:

  1. Основные аспекты наблюдаемости систем [Электронный ресурс]. URL: https://habr.com/ru/companies/ruvds/articles/727072/ (дата обращения: 10.03.2025).
  2. Официальный сайт ТехноДок [Электронный ресурс]. URL: https://www.sms-technodoc.ru (дата обращения: 10.03.2025).
  3. OVERVIEW Prometheus [Электронный ресурс]. URL: https://prometheus.io/docs/introduction/overview/ (дата обращения: 15.03.2025).
  4. Grafana [Электронный ресурс]. URL: https://github.com/grafana/grafana (дата обращения: 15.03.2025).

Оставить комментарий