[0001] Представленное техническое решение относится, в общем, к области вычислительной техники, а в частности к способу и системе мониторинга автоматизированных систем (АС), находящихся в эксплуатации, с целью проективного и реактивного выявления отклонений в их работе на различных уровнях архитектуры (инфраструктура, среда исполнения, уровень приложения), диагностики причины выявленного отклонения, а также оповещения заинтересованных лиц о выявленном событии.
УРОВЕНЬ ТЕХНИКИ
[0002] Из уровня техники известны различные системы, предназначенные для мониторинга автоматизированных систем, разработанные компаниями Splunk, Zabbix, Tivoli, Naumen Network Manager, Naumen Business Service.
[0003] Упомянутые системы, представленные на рынке в настоящий момент, имеют следующую последовательность обработки данных: сбор данных с объекта мониторинга, запись полученной информации в систему хранения, обработка сохраненных данных с целью выявления отклонений. Каждый из этапов обработки данных требует временных затрат, что в свою очередь ведет к увеличению времени выявления отклонения. В отличии от аналогов в заявленном решении система осуществляет обработку данных и поиск отклонений одновременно с записью данных в систему хранения, т.е из процесса обработки исключается этап сохранения данных в базу данных (БД), что в свою очередь сокращает время выявления отклонения, а также сохранит работоспособность системы мониторинга в части выявления отклонений в работе АС и оповещения о выявленных отклонениях соответствующих пользователей в случае выхода из строя БД. В тоже время выход из строя механизма поиска отклонений не влияет на работоспособность системы в целом и позволяет работать с данными мониторинга.
[0004] Второй отличительной особенностью заявленного решения является способ взаимодействия пользователя с системой. Помимо традиционных способов (работа с дашбордами, информирование путем отправки почтовых сообщений и смс) в системе реализован механизм получения информации о состоянии объекта мониторинга через мессенджер, что позволяет сократить время на принятие решения о корректирующих действиях, направленных на восстановление согласованного состояния системы, за счет отсутствия необходимости подключаться к рабочему месту инженерам и другим лицам, принимающим решения. Получение информации осуществляется как путем получения сообщений об отклонениях в работе систем от платформы мониторинга в мессенджер, так и запросом данных мониторинга из интерфейса мессенджера в платформу мониторинга за необходимой информацией.
[0005] Третьей отличительной особенностью заявленного решения является наличие встроенной системы построения предиктивной модели: базовой линии и границ коридора. Система использует накопленную за последнее время информацию о состоянии объекта мониторинга, что позволяет предсказать поведение АС в конкретно взятое время и заранее выявить негативный тренд в поведении АС до наступления событий, которые могут привести к отклонению.
[0006] Большинство систем мониторинга направлены на работу с определенным технологическим слоем, например, с серверной или сетевой инфраструктурой. В заявленном решении система собирает информацию со всех доступных технологических слоев, в том числе за счет существующих коннекторов к другим системам мониторинга. Таким образом, реализуется возможность построения многоуровнего мониторинга в едином месте, что дает возможность сократить время на диагностику корневой причины отклонения в работе системы.
[0007] Ключевым механизмом любой системы мониторинга является алертинг (выявление отклонений и информирование о них). Качество алертинга определяет качество мониторинга, однако известные нам системы мониторинга не содержат механизмов оценки качества алертинга. В заявленном решении система содержит в себе функционал, позволяющий оценивать каждое событие с точки зрения его соответствия реальному состоянию системы. Оценка качества осуществляется получателями алертов через специализированный интерфейс. По обратной связи в системе есть возможность на основе реализованной отчетности определить и откорректировать события, с плохой статистикой срабатывания.
РАСКРЫТИЕ ИЗОБРЕТЕНИЯ
[0008] Технической проблемой или задачей, поставленной в данном техническом решении, является создание нового эффективной, простой и надежной системы мониторинга АС.
[0009] Техническим результатом является повышение надежности системы мониторинга АС.
[0010] Указанный технический результат достигается благодаря созданию системы (100) мониторинга АС, содержащей:
- устройство (10) сбора данных, содержащее: модуль (11) управления, модуль (12) извлечения данных из объекта (1) мониторинга и модуль (13) преобразования данных;
- устройство (20) потоковой передачи данных, содержащее: модуль (21) памяти промежуточного хранения данных, модуль (22) управления данными для валидации, и модуль (23) хранения данных, предназначенных для передачи;
- устройство (30) потоковой обработки данных, содержащее: модуль (31) управления валидацией, модуль (32) хранения правил определения отклонений, модуль (33) хранения правил валидации и модуль (34) определения отклонений;
- систему (40) хранения данных, содержащая: модуль (41) памяти для хранения данных о метриках и модуль (42) памяти для хранения спрогнозированных данных;
- устройство (50) прогнозирования;
- устройство (60) определения отклонений, содержащее: модуль (61) формирования уведомлений, модуль (62) управления правилами определения отклонений и модуль (63) определения отклонений;
- устройство (70) информирования пользователей;
причем модуль (11) управления соединен с модулем (12) извлечения данных, модуль (12) извлечения данных соединен с объектом мониторинга и модулем (13) преобразования данных, модуль (21) памяти промежуточного хранения данных соединен с модулем (13) преобразования данных и модулем (22) управления данными для валидации, модуль (22) управления данными для валидации соединен с модулем (31) управления валидацией и модулем (23) хранения данных, модуль (31) управления валидацией соединен с модулем (33) хранения правил валидации и модулем (23) хранения данных, модуль (23) соединен с модулем (34) определения отклонений и модулем (41) памяти для хранения данных о метриках, модуль (34) определения отклонений соединен с модулем (32) хранения правил определения отклонений и модулем (61) формирования уведомлений, модуль (62) управления правилами определения отклонений соединен с модулем (32) хранения правил определения отклонений, модуль (63) определения отклонений соединен с модулем (41) памяти для хранения данных о метриках, модулем (42) памяти для хранения спрогнозированных данных, модулем (62) управления правилами определения отклонений и модулем (61) формирования уведомлений, модуль (61) формирования уведомлений соединен с устройством (70) информирования пользователей.
[0011] В одном из частных примеров осуществления системы устройство (20) потоковой передачи данных дополнительно содержит модуль (24) хранения данных, соединенный с объектом 1 мониторинга и модулем (12) извлечения данных.
[0012] В другом частном примере осуществления системы устройство (50) прогнозирования содержит соединенные между собой: модуль (51) управления, модуль (52) обработки данных, модуль (53) памяти, предназначенной для оперативной работы сданными, и модель (54) машинного обучения;
причем модуль (52) обработки данных соединен с модулем (41) памяти для хранения данных о метриках и модулем (42) памяти для хранения спрогнозированных данных.
[0013] В другом частном примере осуществления системы она дополнительно содержит модуль (43) визуализации данных, соединенный с модулем (41) памяти для хранения данных о метриках, модулем (42) памяти для хранения спрогнозированных данных и модулем (61) формирования уведомлений.
[0014] В другом частном примере осуществления системы модуль (63) определения отклонений оснащен счетчиками для определения количества отклонений за заданный период времени, для определения разности значений различных метрик в единицу времени, для определения разности значений метрии в разное время наблюдения, для определения суммы значений метрики за определенный интервал времени.
[0015] В другом частном примере осуществления системы устройство (20) потоковой передачи данных дополнительно содержит область памяти, предназначенную для хранения данных о метриках, непрошедших процедуру валидации.
[0016] В другом предпочтительном варианте осуществления заявленного решения представлен способ автоматического мониторинга АС, выполняемый модулем (63) определения отклонений, содержащий этапы, на которых: - получают инструкции для определения отклонений;
- извлекают из памяти, согласно упомянутым инструкциям, данные о метриках за заданный промежуток времени;
- извлекают из памяти, согласно упомянутым инструкциям, верхние и нижние границы значений метрик, определенные для упомянутых метрик;
- сравнивают каждое значение метрики с упомянутыми границами значений метрик, причем если значение метрики выходит за упомянутые границы значений, то модуль (63) увеличивает показатель счетчика на 1;
- после сравнения всех значений метрик с упомянутыми границами значений метрик извлекают показатель счетчика и сравнивают его с пороговым значением счетчика, заданным в инструкции, причем если показатель счетчика превышает или соответствует заданному пороговому значению счетчика, то формируют в модуль (61) формирования уведомлений команду для формирования уведомления о выявленном отклонении в значении метрики.
[0017] В одном из частных примеров осуществления способа дополнительно выполняют этап фиксации наличия отклонения в данных о метриках.
[0018] В другом частном примере осуществления способа дополнительно выполняют этапы, на которых:
- извлекают из памяти, согласно упомянутым инструкциям, данные о метриках за следующий промежуток времени;
- извлекают из памяти, согласно упомянутым инструкциям, верхние и нижние границы значений метрик, определенные для упомянутых метрик;
- сравнивают каждое значение метрики с упомянутыми границами значений метрик, причем если значение метрики выходит за упомянутые границы значений, то модуль (63) увеличивает показатель счетчика на 1;
- после сравнения всех значений метрик с упомянутыми границами значений метрик извлекают показатель счетчика и сравнивают его с пороговым значением счетчика, заданным в инструкции, причем если показатель счетчика не превышает заданное пороговое значение счетчика, то фиксируют устранение отклонения и формируют в модуль (61) формирования уведомлений команду для формирования уведомления о устранении отклонения в значении метрики.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
[0019] Признаки и преимущества настоящего технического решения станут очевидными из приводимого ниже подробного описания изобретения и прилагаемых чертежей, на которых:
[0020] на Фиг. 1 представлена общая схема диагностики АС.
[0021] на Фиг. 2 представлен пример общего вида вычислительного устройства.
ОСУЩЕСТВЛЕНИЕ ИЗОБРЕТЕНИЯ
[0022] Ниже будут описаны понятия и термины, необходимые для понимания данного технического решения.
[0023] В данном техническом решении под системой подразумевается, в том числе компьютерная система, ЭВМ (электронно-вычислительная машина), ЧПУ (числовое программное управление), ПЛК (программируемый логический контроллер), компьютеризированные системы управления и любые другие устройства, способные выполнять заданную, четко определенную последовательность операций (действий, инструкций).
[0024] Под устройством обработки команд подразумевается электронный блок, вычислительное устройство, либо интегральная схема (микропроцессор), исполняющая машинные инструкции (программы).
[0025] Устройство обработки команд считывает и выполняет машинные инструкции (программы) с одного или более устройств хранения данных. В роли устройства хранения данных могут выступать, но не ограничиваясь, жесткие диски (HDD), флеш-память, ПЗУ (постоянное запоминающее устройство), твердотельные накопители (SSD), оптические приводы.
[0026] Программа - последовательность инструкций, предназначенных для исполнения устройством управления вычислительной машины или устройством обработки команд.
[0027] База данных (БД) - совокупность данных, организованных в соответствии с концептуальной структурой, описывающей характеристики этих данных и взаимоотношения между ними, причем такое собрание данных, которое поддерживает одну или более областей применения (ISO/IEC 2382:2015, 2121423 «database»).
[0028] Сигнал - материальное воплощение сообщения для использования при передаче, переработке и хранении информации.
[0029] Логический элемент - элемент, осуществляющий определенные логические зависимости между входными и выходными сигналами. Логические элементы обычно используются для построения логических схем вычислительных машин, дискретных схем автоматического контроля и управления. Для всех видов логических элементов, независимо от их физической природы, характерны дискретные значения входных и выходных сигналов.
[0030] В соответствии со схемой, приведенной на Фиг. 1, система 100 мониторинга АС содержит: устройство 10 сбора данных, устройство 20 потоковой передачи данных, устройство 30 потоковой обработки данных, систему 40 хранения данных, устройство 50 прогнозирования, устройство 60 определения отклонений и устройство 70 информирования пользователей.
[0031] Устройство 10 сбора данных может быть реализовано на базе по меньшей мере одного вычислительного устройства и содержать: модуль 11 управления, модуль 12 извлечения данных из объекта 1 мониторинга и модуль 13 преобразования данных с функцией буферизации. Упомянутые модули могут быть реализованы с использованием логических элементов на транзисторах, например, «И», «ИЛИ», «НЕ», «И-НЕ», «ИЛИ-НЕ» и пр., размещенных на печатной плате широко известным методом для обеспечения передачи между упомянутыми модулями сигналов, содержащих данные, а также для обеспечения обработки полученных данных. Для обеспечения возможности обработки данных из различных источников может быть реализовано два и более устройства 10, либо устройство 10 может быть сконфигурировано таким образом, чтобы одновременно обрабатывать данные из нескольких источников данных. Также для обеспечения дополнительной надежности может быть реализован кластер из двух и более устройств 10 (для каждого вида устройства), расположенных в различных центрах обработки данных.
[0032] Устройство 20 потоковой передачи данных может быть реализовано на базе по меньшей мере одного вычислительного устройства и содержать: модуль 21 памяти промежуточного хранения данных, модуль 22 управления данными для валидации, модуль 23 хранения данных, предназначенных для передачи, и модуль 24 хранения данных, полученных от объекта 1 мониторинга. Упомянутые модули могут быть реализованы с использованием логических элементов на транзисторах, например, «И», «ИЛИ», «НЕ», «И-НЕ», «ИЛИ-НЕ» и пр., размещенных на печатной плате широко известным методом для обеспечения передачи между упомянутыми модулями сигналов, содержащих данные, а также для обеспечения обработки полученных данных. Также для обеспечения дополнительной надежности может быть реализован кластер из двух и более устройств 20, расположенных в различных центрах обработки данных.
[0033] Устройство 30 потоковой обработки данных может быть реализовано на базе по меньшей мере одного вычислительного устройства и содержать: модуль 31 управления валидацией, модуль 32 хранения правил определения отклонений, модуль 33 хранения правил валидации и модуль 34 определения отклонений. Упомянутые модули могут быть реализованы с использованием логических элементов на транзисторах, например, «И», «ИЛИ», «НЕ», «И-НЕ», «ИЛИ-НЕ» и пр., размещенных на печатной плате широко известным методом для обеспечения передачи между упомянутыми модулями сигналов, содержащих данные, а также для обеспечения обработки полученных данных. Для обеспечения дополнительной надежности может быть реализован кластер из двух и более устройств 30, расположенных в различных центрах обработки данных.
[0034] Система 40 хранения данных может быть реализована на базе по меньшей мере одной БД и содержать: модуль 41 памяти для хранения данных о метриках и модуль 42 памяти для хранения спрогнозированных данных. Указанные модули могут быть реализованы на базе устройства постоянного хранения данных, например, жесткий диск (HDD), твердотельный накопитель данных (SSD), флэш-память (EEPROM, NAND и т.п.), оптические носители информации (CD-R/RW, DVD-R/RW, BlueRay Disc, MD) и др. Дополнительно система 40 хранения данных может быть оснащена модулем 43 визуализации данных, реализованным на базе вычисленного устройства с использованием логических элементов на транзисторах, предназначенным для извлечения данных о метриках и спрогнозированных данных и отображения их пользователям системы 100 мониторинга АС. В альтернативном варианте реализации представленного решения упомянутый модуль 43 может быть самостоятельным устройством, т.е. внешним по отношению системе 40. Также упомянутое устройство 43 может быть оснащено техническими средствами, например, ЖК-панелями, для отображения информации, например, сохраненной в системе 40 хранения данных, в реальном времени.
[0035] Для обеспечения надежности может быть реализован кластер из двух и более систем 40, расположенных в различных центрах обработки данных. Дополнительно в каждом центре обработки данных может быть реализована копия системы 40, содержащая данные системы 40, расположенной в другом центре обработки данных.
[0036] Устройство 50 прогнозирования может быть реализовано на базе по меньшей мере одного вычислительного устройства и содержать: модуль 51 управления, модуль 52 обработки данных, модуль 53 памяти, предназначенной для оперативной работы с данными, и модель 54 машинного обучения. Упомянутые модули могут быть реализованы с использованием логических элементов на транзисторах, например, «И», «ИЛИ», «НЕ», «И-НЕ», «ИЛИ-НЕ» и пр., размещенных на печатной плате широко известным методом для обеспечения передачи между упомянутыми модулями сигналов, содержащих данные, а также для обеспечения обработки полученных данных.
[0037] Устройство 60 определения отклонений может быть реализовано на базе по меньшей мере одного вычислительного устройства и содержать: модуль 61 формирования уведомлений, модуль 62 управления правилами определения отклонений и модуль 63 определения отклонений. Упомянутые модули могут быть реализованы с использованием логических элементов на транзисторах, например, «И», «ИЛИ», «НЕ», «И-НЕ», «ИЛИ-НЕ» и пр., размещенных на печатной плате широко известным методом для обеспечения передачи между упомянутыми модулями сигналов, содержащих данные, а также для обеспечения обработки полученных данных. Для обеспечения дополнительной надежности может быть реализован кластер из двух и более устройств 60, расположенных в различных центрах обработки данных.
[0038] Устройство 70 информирования пользователей может быть реализовано на базе по меньшей мере одного вычислительного устройства, выполненного в программно-аппаратной части таким образом, чтобы обеспечить передачу сообщения о выявленном отклонении, либо об устранении отклонении в устройства пользователей системы 100 мониторинга АС. Также упомянутое устройство 70 может быть оснащено техническими средствами, например, ЖК-панелями, для отображения информации, например, сохраненной в системе 40 хранения данных в реальном времени.
[0039] В качестве автоматизированной системы (АС), мониторинг которой осуществляется упомянутой системой мониторинга АС, может быть любая система, предназначенная для автоматизации процессов производственной деятельности. Каждая АС оснащается объектом 1 мониторинга, под которым далее по тексту понимается информационная система, либо ее подсистема или отдельный компонент, предназначенным для сбора и хранения данных о метриках, которые могут быть представлены, например, в виде числовой характеристики, по величие которой можно судить о состоянии АС или процессах, протекающих в АС.
[0040] Например, объект 1 мониторинга может быть размещен в системе телефонии, а в качестве метрики может служить количество входящих или исходящих звонков за заданное единицу времени. Резкое снижение или увеличение количества звонков может говорить о потенциальных проблемах в работе АС. Данные о метриках могут быть собраны широко известными способами в ручном или автоматизированном режиме и сохранены в объекте 1 мониторинга.
[0041] Соответственно, в зависимости от заданного разработчиком модуля 11 управления режимом работы упомянутый модуль 11 формирует команду на подключение к объекту 1 мониторинга для извлечения данных о метриках за заданный разработчиком временной интервал, преимущественно извлекаются данные о текущем состоянии объекте мониторинга, т.е. значение метрик в момент извлечения, либо за последнюю минуту. Сформированная команда направляется упомянутым модулем 11 в модуль 12 извлечения данных, который посредством проводной или беспроводной связи осуществляет подключение к объекту 1 мониторинга и направляет запрос данных о метриках за заданный временной интервал к объекту 1 мониторинга для извлечения данных о метриках из памяти упомянутого объекта 1. Данные о метриках могут содержать идентификатор (ID) АС или ID объекта мониторинга, список ID метрик, значения метрик и значения временного интервала, характеризующие время получения метрик объектом 1 мониторинга.
[0042] Извлеченные данные о метриках, например, в виде пакета данных, направляются упомянутым модулем 12 в модуль 13 преобразования данных, который преобразует данные к заданному разработчиком модуля 13 формату, в частности пригодному для обработки на следующих этапах, а также расчета агрегатов. Например, в упомянутый модуль 13 могут поступить данные о метриках, характеризующие перечень всех звонков, которые поступили за прошедшую минуту, где ID метрики будет указывать на то, что метрика является метрикой звонка, а значение метрики может характеризовать длительность звонка. На основе полученных данных о метриках, в частности перечня всех звонков, модуль 13 может определить количество поступивших звонков за прошедшую минуту, после чего упомянутое количество может быть включено в данные о метриках в виде дополнительной метрики. Дополнительно в рамках упомянутого преобразования данных из полученных данных о метриках могут быть удалены лишние атрибуты, например, характеризующие тематики звонков, либо, наоборот, все входящие звонки могут быть сгруппированы по тематикам и переданы на дальнейшие этапы в виде отдельных метрик - числа звонков по конкретным тематикам за прошедшую минуту.
[0043] В альтернативном варианте реализации представленного решения данные о метриках могут быть извлечены модулем 12 извлечения данных из модуля 24 хранения данных, полученных от объекта 1 мониторинга. Загрузка данных о метриках в модуль 24 может быть выполнена объектом 1 мониторинга в соответствии с заложенным в его память программным алгоритмом.
[0044] Преобразованные данные о метриках модулем 13 преобразования данных записываются в модуль 21 памяти промежуточного хранения данных устройства 20 потоковой передачи данных, в котором данные о метриках хранятся заданный интервал времени, после чего упомянутые данные удаляются. Команда на удаление данных может быть получена упомянутым модулем 21, например, от соответствующего контроллера, которым модуль 21 может быть оснащен, выполненного с возможностью назначения записанным данным временной метки, указывающей на время, когда они были записаны, и удаления данных, записанных в модуле 21, после истечения заданного, например, разработчиком модуля 21, интервала времени. Например, команда на удаление данных может указывать на то, что из модуля 21 необходимо удалить все данные, временная метка которых указывает на то, что с момента сохранения этих данных прошло 6 часов. В альтернативном варианте реализации представленного решения команда на удаление данных упомянутым контроллером может поступать при достижении модулем 21 заданного лимита объема данных.
[0045] Далее посредством модуля 22 управления данными определяются данные о метриках, в отношении которых необходимо провести процесс валидации данных о метриках, причем список данных о метриках (например, список ID АС или объектов мониторинга), валидацию которых необходимо выполнить, может быть задан разработчиком упомянутого модуля 22, либо получен от модуля 31 управления валидацией. Для определения необходимости проведения валидации данных о метриках упомянутый модуль 22 сравнивает сохраненные в модуле 21 данные о метриках с упомянутым списком данных о метриках, например, ID АС или объекта мониторинга - со списком ID АС или объектов мониторинга, и если модуль 22 определил, что данные о метриках требуют валидации (например, ID АС или объекта мониторинга содержатся в списке ID АС или объектов мониторинга), то модуль 22 извлекает данные о метриках из модуля 21 и направляет их в модуль 31 управления валидацией. Если модуль 22 определил, что данные о метриках не требуют валидации (например, ID АС или объекта мониторинга не содержатся в списке ID АС или объектов мониторинга), то модуль 22 извлекает данные о метриках из модуля 21 и направляет их в модуль 23 хранения данных, предназначенных для передачи.
[0046] При получении модулем 31 управления валидацией данных о метриках упомянутый модуль проверят их на соответствие установленным требованиям. Для определения установленных требований для данных о метриках упомянутый модуль 31 обращается к модулю 32 хранения правил валидации, в который упомянутые требования могут быть занесены разработчиком модуля или его оператором. Например, в рамках валидации модулем 31 могут быть валидированы следующие атрибуты метрик каждой записи, содержащиеся в данных о метриках:
- ID метрики (например, имя);
- Временная метка создания\получения метрики;
- Значение метрики;
- Наименование источника метрики;
- Идентификатор объекта мониторинга (наименование автоматизированной системы);
- И другие
[0047] Реализованный в модуле 31 валидатор метрик сконфигурирован для проведения проверки как каждого поля всех записей, содержащихся в данных о метриках, по отдельности, так и для проверки заданных разработчиком полей, например, проверки наличия значения метрики в поле «Значение метрики» (т.е. поле не пустое) и проверки того, что «Идентификатор объекта мониторинга» входит в множество допустимых значений. Справочник допустимых значений идентификаторов объектов 1 мониторинга может храниться в памяти модуля 32.
[0048] В частности, для каждого поля в записи модулем 31 могут быть выполнены следующие проверки:
- Проверка на соответствие значения регулярному выражению;
- Ненулевое значение (для любого типа поля);
- Соответствие значения атрибута одному из значений в заданном справочнике или перечислении.
[0049] Например, данные о метриках, полученные модулем 31, могут содержать поле, характеризующее время получения метрики (datearrival), которое может содержать следующую информацию: "date_arrival": "2022-12-08 10:35:00", где ID поля характеризует атрибут "date_arrival", а значение поля "2022-12-08 10:35:00".
Соответственно, модуль 31 при проведении валидации данных о метриках извлекает ID поля "date_arrival" и обращается к данным, характеризующим требования к данным о метриках, полученных от модуля 32, для определения алгоритма валидации данных.
[0050] Например, алгоритм валидации данных может указывать на то, что упомянутому модулю 31 следует проверить наличие значения поля, характеризующее время получения метрики, в данных о метриках. Если модулем 31 определено, что значение поля отсутствует (т.е. значение поля пустое), то модуль 31 принимает решение о том, что данные о метриках не соответствуют установленным требованиям, после чего данные о метриках удаляются из буфера модуля 31. Таким образом, в дальнейшем данные о метриках, не прошедшие процедуру валидации, будут удалены из модуля 21 памяти промежуточного хранения данных согласно описанному ранее алгоритму. Дополнительно данные о метриках, непрошедшие процедуру валидацию, могут помещаться в область памяти устройства 20 для дальнейшего анализа причин, по которым данные не прошли валидацию.
[0051] Если модулем 31 определено, что значение поля присутствует в данных о метриках, то модуль 31 извлекает значение поля "2022-12-08 10:35:00" из данных о метриках и сравнивает упомянутое значение с установленными требованиями, полученными от модуля 32. Установленные требования могут указывать, например, за то, что запись значения поля должна соответствовать установленному формату, например, "yyyy-MM-dd HH:mm:ss", а само значение поля должно соответствовать заданному интервалу значений поля, например, значение поля, характеризующее время получения данных, не может быть старше 6 часов, не может быть позже текущего времени. Для определения текущего времени упомянутый модуль 31 может быть оснащен соответствующим таймером, широко известным из уровня техники.
[0052] Если модулем 31 определено, что значение поля не соответствует установленному формату или интервалу значений метрики, то модуль 31 принимает решение о том, что данные о метрики не соответствуют установленным требованиям, после чего данные о метриках удаляются из буфера модуля 31. Таким образом, в дальнейшем данные о метриках, не прошедшие процедуру валидации, будут удалены из модуля 21 памяти промежуточного хранения данных согласно описанному ранее алгоритму. Дополнительно данные о метриках, непрошедшие процедуру валидацию, могут помещаться в область памяти устройства 20 для дальнейшего анализа причин, по которым данные не прошли валидацию. Если модулем 31 определено, что данные о метриках соответствуют установленным требованиям, то модуль 31 записывает данные о метриках в модуль 23 хранения данных, предназначенных для передачи.
[0053] Аналогичные процессы валидации модулем 31 могут быть проведены в отношении полей, содержащих информацию, характеризующую:
- время создания метрики, которое может быть представлено в виде: "date_created": "2022-12-08 10:33:05", где ID поля характеризует атрибут "date_created", а значение поля - "2022-12-08 10:33:05";
- имя метки, которое может быть представлено в виде: "metric_name": "Avaya CRM.PB: Active Calls \"Total\" \"Total\"", где ID поля характеризует атрибут "metric_name", а значение поля - "Avaya CRM.PB: Active Calls \"Total\" \"Total\"";
- имя агента, которое может быть представлено в виде: "agent host": "10.111.0.39", где ID поля характеризует атрибут "agent_host", а значение поля -"10.111.0.39";
- имя источника, которое может быть представлено в виде: "source_host": "aggregate.data.mpp", где ID поля характеризует атрибут "source host", а значение поля - "aggregate.data.mpp";
- тип метрики, который может быть представлен в виде: "metric_type": "арр", где ID поля характеризует атрибут source_host", а значение поля - "арр";
- имя АС, которое может быть представлено в виде: "as_name": "esgr", где ID поля характеризует атрибут "as_name", а значение поля - "esgr";
- uuid процесс, который может быть представлен в виде: "process uuid": "47b331b8-b773-401c-bcce-84d74eac6ef4", где ID поля характеризует атрибут "process_uuid", а значение поля - "47b331b8-b773-401c-bcce-84d74eac6ef4";
- значение метрики, которое может быть представлено в виде: "value_int": 844, где ID поля характеризует атрибут "value_int", а значение поля - 844.
[0054] Соответственно, информация о времени создания метрики упомянутым модулем 31 может быть проверена описанным выше способом на соответствие установленному формату и установленному порогу значений; информация о имени метки может быть проверена на наличие значения поля, причем это значение не может быть значением «null»; информация о имени агента может быть проверена на наличие значения поля и на соответствие значения поля заданному формату, например, формату ip или dns; информация о имени источника может быть проверена на наличие значения поля и на соответствие значения поля заданному формату, например, формату ip или dns, либо url; информация о типе метрики может быть проверена на наличие значения поля и на соответствие значения поля, например, одному из следующих значений: "арр", "regex", "business", "synt", "infra", "logs", "sql", "unknown"; информация о имени AC может быть проверена на наличие значения поля, причем значение поля должно совпадать с заранее заданными в установленных требованиях значений; информация о uuid процесса может быть проверена на наличие значения поля, причем это значение не может быть значением «null»; значение метрики может быть проверено на наличие значения поля, причем это значение не может быть значением «null».
[0055] Сохраненные в модуле 23 данные о метриках, прошедшие процедуру валидации, далее могут быть считаны модулем 34 определения отклонений, а также модулем 41 памяти для хранения данных о метриках. Считывание данных упомянутыми модулями может осуществляться как в реальном времени, так и согласно расписаниям, заданным разработчиками модулей, причем данные о метриках извлекаются с момента получения предыдущей порции данных. Модуль 23 также, как и модуль 21, хранит данные о метриках заданный интервал времени, после чего упомянутые данные удаляются.
[0056] Из полученных данных о метриках модуль 34 определения отклонений извлекает значение метрики, после чего сравнивает извлеченное значение метрики с пороговым значением данной метрики. Пороговое значение метрики упомянутым модулем 34 может быть определено посредством обращения к модулю 33 хранения правил определения отклонений, в котором для каждой метрики сохранено ее пороговое значение и инструкции по обработке данных для определения отклонения. Упомянутые пороговые значения могут быть записаны в модуль 33 посредством модуля 62 управления правилами определения отклонений согласно заложенному разработчиком упомянутого модуля 62 алгоритму обновления пороговых значений, в связи с чем исключается возможность несанкционированного внесения изменений в данные, сохраненные в модуле 33, оператором или разработчиком. Также в модуль 33 могут быть записаны модулем 62 инструкции по обработке данных о метриках для определения отклонений.
[0057] Если модулем 34 определено, что значение метрики не соответствует пороговым значениям, например, значение метрики, характеризующее количество звонков за минуту, равно «0» или превышает заданное пороговое значение «1000», то упомянутый модуль 34 фиксирует наличие отклонения в данных о метриках и направляет в модуль 61 формирования уведомлений команду для формирования уведомления о выявленном отклонении в значении метрики, которое далее направляется в устройство 70 информирования пользователей для оповещения о выявленном отклонении заинтересованных лиц, после чего модуль 34 считывает следующую порцию данных из модуля 23, содержащих данные о метриках, для их анализа. Если модулем 34 определено, что значение метрики соответствует пороговым значениям, то упомянутый модуль 34 считывает следующую порцию данных из модуля 23, содержащих данные о метриках, для их анализа.
[0058] Если в процессе сравнения следующей порции данных модулем 34 определено, что значение метрики не превышает заданное пороговое значение, и при этом ранее было выявлено отклонение, то модуль 34 фиксирует устранение отклонения, после чего направляет в модуль 61 формирования уведомлений команду для формирования уведомления о устранении отклонения в значении метрики, которое далее направляется в устройство 70 информирования пользователей для оповещения об устранении отклонения заинтересованных лиц после чего модуль 34 считывает следующую порцию данных из модуля 23, содержащих данные о метриках, для их анализа.
[0059] Считанные модулем 41 памяти данные о метриках из модуля 23 сохраняются в БД, например, в виде временного ряда, после чего данные о метриках могут быть извлечены из БД для их анализа и обработки. Например, данные о метриках могут быть извлечены устройством 50 прогнозирования посредством модуля 52 обработки данных по команде, полученной от модуля 51 управления. Упомянутая команда может быть сформирована и направлена модулем 51 согласно расписанию, заданному разработчиком модуля 51, в котором также может быть определен временной период, за который следует извлечь данные о метриках.
[0060] Извлеченные модулем 52 данные о метриках за заданные период времени сохраняются в модуль 53 памяти, предназначенной для оперативной работы с данными, после чего модуль 51 управления формирует команду для запуска модели 54 машинного обучения для получения данных прогнозирования за заданный период времени. Модель 54 машинного обучения при получении упомянутой команды от модуля 51 извлекает данные о метриках из модуля 53 памяти и известными методами осуществляет определение прогнозных значений метрик за заданный период времени.
[0061] Например, данные о метриках, сохраненные в модуле 53 памяти, могут содержать значения, характеризующие число звонков за каждую минуту, за три предыдущих месяца, а моделью 54 машинного обучения известными методами может быть определены прогнозные значения метрик, характеризующих число звонков за каждую минуту, на ближайшие сутки. Также вместе с упомянутыми прогнозными значениями модулем 54 могут быть определены верхние и нижние границы (коридоры) значений метрик, в которые с вероятностью 95% должны попадать в конкретную минуту определенные ранее прогнозные значения метрик.
[0062] Для определения упомянутых выше прогнозных значений метрик и границ значений метрик упомянутая модель 54 может быть заранее обучена известными методами на обучающем наборе данных метрик и границ упомянутых метрик. Прогнозные значения метрик и данные о границах значений метрик сохраняются в модуль 53 памяти, после чего извлекаются модулем 52 и сохраняются в модуль 42 памяти для хранения спрогнозированных данных. После того, как прогнозные значения метрик и данные о границах значений метрик сохранены, они могут быть извлечены модулем 43 визуализации данных вместе с данными о метриках и направлены в модуль 61 формирования уведомлений, который формирует соответствующее уведомление, в которое включаются упомянутые полученные данные, например, в виде графика, после чего сформированное уведомление направляется в устройство 70 информирования пользователей для оповещения заинтересованных лиц.
[0063] Для определения отклонений в данных о метриках, сохраненных в системе 40 хранения данных, с учетом прогнозные значения метрик, система 100 мониторинга АС оснащается устройством 60 определения отклонений, которое выявляет отклонения в упомянутых данных по более сложным инструкциям в соответствии с заложенным разработчиком алгоритмом.
[0064] В частности, в соответствии с заложенным алгоритмом модуль 63 определения отклонений обращается к модулю 62 управления правилами определения отклонений для извлечения инструкций для определения отклонений. Упомянутые инструкции, сохраненные в модуле 62, как правило, содержат следующие параметры:
- Уникальный ID инструкций (формируется модулем 62 автоматически известными методами при получении данных с инструкциями на основании алгоритма, заложенного в память модуля 62);
- Наименование инструкций;
- ID метрики или набор ID метрик, которые следует обработать;
- По меньшей мере одно пороговое значение - численное значение, с которым будут сравниваться значения метрик;
- По меньшей мере одна инструкция по обработке данных для определения отклонения - операция сравнения, которая будет применяться для сравнения метрики и порогового значения. Например, «Больше», «Меньше», «Больше или равно», «Равно», «Не равно» и т.д.;
- Телефон и email получателей информации о выявленном на основании инструкций отклонении с указанием каналов оповещения (смс, электронная почта, мессенджер), по которым будут доставляться сообщения.
[0065] Указанные инструкции для определения отклонений могут быть заданы разработчиком или оператором устройства 60 определения отклонений посредством специализированного канала связи с модулем 62 или посредством устройств ввода/вывода данных. Инструкция по обработке данных может представлять собой:
- простую инструкцию, предписывающую модулю 63 выполнить операцию сравнения значения метрики с по меньшей мере одним пороговым значением для определения наличия или отсутствия отклонения. Например, для количества входящих звонков пороговое значение может быть установлено «2000», а значение метрики, характеризующее количество водящих звонков за минуту, не должно превышать 2000. Упомянутые инструкции автоматически записываются в модуль 32 хранения правил определения отклонений;
- составные инструкцию, предписывающую модулю 63 выполнить операцию сравнения более одного значения метрик с по меньшей мере одним пороговым значением, заданным для всех метрик для определения наличия или отсутствия отклонения. Например, в рамках составной инструкции значение метрики, характеризующее количество входящих звонков за минуту, и значение метрики, характеризующее количество исходящих звонков за эту же минуту, может быть сравнено модулем 63 с пороговым значением «2000», причем наличие отклонения будет определено в том случае, если одно из значений метрик будет превышать пороговое значение;
- инструкцию по постобработке данных, предписывающую модулю 63 выполнить гибкую агрегацию и корреляцию данных с использованием исторических данных для предписывающую модулю 63 выполнить. В рамках данной постобработки для определения наличия отклонения данные о метриках могут быть сравнены с прогнозированными значениями метрик и границами значений метрик, например, количество входящих звонков может быть сравнено с верхней и нижними границами значений метрик за заданную минуту. Гибкая агрегация и корреляция данных может быть реализована через оснащение устройства 63 специализированными счетчиками: счетчиком для определения количества отклонений за заданный период времени, счетчиком для определения разности значений различных метрик в единицу времени, счетчиком определения разности значений метрики в разное время наблюдения, счетчиком суммы значений метрики за определенный интервал времени и другими счетчиками, основанными на математических и логических операциях над значениями метрик.
[0066] Что касается простых инструкций, то согласно заложенному разработчиком расписанию они записываются модулем 62 в модуль 32 хранения правил определения отклонений. Остальные инструкции, в частности составные и по постобработке данных направляются упомянутым модулем 62 в модуль 63 определения отклонений, который в соответствии с полученными инструкциями выполняет проверку данных о метриках, сохраненных в модуле 41 хранения.
[0067] Дополнительно модуль 63 определения отклонений может быть оснащен счетчиком отклонений и выполнен с возможностью определения количества отклонений за заданный период времени в соответствии с инструкциями по обработке данных для определения отклонений. Например, в соответствии с упомянутыми инструкциями модуль 63 может извлечь из модуля 41 памяти значение метрики, например, характеризующее количество звонков за конкретную минуту, и из модуля 42 памяти верхние и нижние границы значений метрики, определенные для упомянутой метрики, после чего выполнить сравнение значения метрики и упомянутыми границами значений.
[0068] Если значение метрики не выходит за упомянутые границы значений, то модуль 63 переходит к анализу других значений метрик, сохраненных в модуле 41 хранения. Если значение метрики выходит за упомянутые границы значений, то модуль 63 фиксирует наличие отклонения и направляет в модуль 61 формирования уведомлений команду для формирования уведомления о выявленном отклонении в значении метрики, которое далее направляется в устройство 70 информирования пользователей для оповещения о выявленном отклонении заинтересованных лиц, после чего модуль 63 считывает следующую порцию данных из модуля 41, содержащих данные о метриках, для их анализа, и из модуля 42 памяти верхние и нижние границы значений метрики, определенные для упомянутой метрики.
[0069] Если в процессе сравнения следующей порции данных модулем 63 определено, что значение метрики не выходит за упомянутые границы, и при этом ранее было выявлено отклонение, то модуль 63 фиксирует устранение отклонения, после чего направляет в модуль 61 формирования уведомлений команду для формирования уведомления о устранении отклонения в значении метрики, которое далее направляется в устройство 70 информирования пользователей для оповещения об устранении отклонения заинтересованных лиц после чего модуль 63 считывает следующую порцию данных из модуля 41, содержащих данные о метриках, для их анализа, и из модуля 42 памяти верхние и нижние границы значений метрики, определенные для упомянутой метрики,
[0070] Дополнительно модуль 63 определения отклонений может быть оснащен счетчиками для определения количества отклонений за заданный период времени, для определения разности значений различных метрик в единицу времени, для определения разности значений метрии в разное время наблюдения, для определения суммы значений метрики за определенный интервал времени и пр.
[0071] Например, в соответствии с полученными от модуля 62 инструкциями модуль 63 может извлечь данные о метриках за заданный промежуток времени, например, характеризующие количество звонков за последние 5 минут, и из модуля 42 памяти верхние и нижние границы значений метрик, определенные для упомянутых метрик, после чего сравнить каждое значение метрики, характеризующее количество звонков за минуту, с упомянутыми границами значений метрик. Если значение метрики выходит за упомянутые границы значений, то модуль 63 увеличивает показатель счетчика, в частности для определения количества отклонений за заданный период времени, на 1.
[0072] После сравнения всех значений метрик с упомянутыми границами значений метрик модуль 63 извлекает показатель счетчика и сравнивает его с пороговым значением счетчика, например, которое может представлять собой значение 4 и содержаться в данных с инструкциями.
[0073] Если показатель счетчика не превышает заданное пороговое значение счетчика, т.е. показатель счетчика представляет собой значение от 1 до 3, то модуль 63 переходит к извлечению из модуля 41 памяти следующей порции данных о метриках.
[0074] Если показатель счетчика соответствует заданному пороговому значению счетчика, например, показатель счетчика равен 4 (т.е. четыре значения метрики из 5 не соответствуют верхним или нижним границам значений метрик), то модуль 63 направляет в модуль 61 формирования уведомлений команду для формирования уведомления о выявленном отклонении в значении метрики, которое далее направляется в устройство 70 информирования пользователей для оповещения о выявленном отклонении заинтересованных лиц.
[0075] Также модуль 63 может быть выполнен с возможностью фиксации наличия отклонения в данных о метриках, причем данные о наличии отклонения в данных о метриках заносится модулем 63 в оперативную память, которой он может быть оснащен, или в соответствующий регистр. После того, как наличие отклонение зафиксировано, модуль 63 извлекает из памяти модуля 41 следующую порцию данных о метрике за следующую минуту или данные о метриках за прошедшие 5 минут, которые обрабатываются описанным выше образом посредством их сравнения с верхними и нижними границами значений метрик. Если при анализе следующей порции данных упомянутым выше способом модуль 63 зафиксирует наличие отклонения в значении метрики и при этом в соответствующем регистре оперативной памяти будут содержаться данные о наличии отклонении, то модуль 63 не будет передавать в модуль 61 формирования уведомления повторную команду для формирования уведомления о выявленном отклонении.
[0076] Если в процессе сравнения модулем 63 определено, что данные о метрике, полученные за следующую минуту, или по результатам обработки данных о метриках за прошедшие 5 минут показатель счетчика не превышает заданное пороговое значение, то модуль 63 фиксирует устранение отклонения, после чего направляет в модуль 61 формирования уведомлений команду для формирования уведомления о устранении отклонения в значении метрики, которое далее направляется в устройство 70 информирования пользователей для оповещения об устранении отклонения заинтересованных лиц, после чего модуль 63 переходит к извлечению из модуля 41 памяти следующей порции данных о метриках.
[0077] Дополнительно упомянутый модуль 63 может извлечь, например, значение метрики, характеризующие количество звонков за минуту, и значение метрики, характеризующее количество звонков за минуту, в заданный момент времени в прошлом, например, 3 минуты назад. Далее модуль 63 посредством счетчика для определения разности значений различных метрик в разное время наблюдения рассчитывает значение разницы в извлеченных значениях метрик и сравнить полученное значение разницы с установленным пороговым значением в соответствии с инструкцией. Если определенное значение разницы, определенное упомянутым счетчиком, превышает установленное пороговое значение, например, разница превышает 300 единиц, то модуль 63 направляет в модуль 61 формирования уведомлений команду для формирования уведомления о выявленном отклонении в значении упомянутого счетчика, которое далее направляется в устройство 70 информирования пользователей для оповещения о выявленном отклонении заинтересованных лиц.
[0078] Дополнительно упомянутый модуль 63 может извлечь значения метрик за заданный интервал времени и сравнить каждое значение метрики с верхними или нижними границами значений метрик, рассчитанными для упомянутого интервала времени для определения значений разницы между упомянутыми значениями, причем определенные значения разницы записываются модулем 63 в счетчик для определения суммы значений метрики за определенный интервал времени. Например, модулем 63 могут быть сравнены значения метрик, характеризующие количество звонков за минуту, за интервал времени в последние 5 минут с нижними границами значений этих метрик. Соответственно, модуль 63 определяет для каждой минуты из выбранного интервала значение разности между нижней границей и значением метрики, обновляя значение счетчика на определенное значение разности. После того, как все значения метрик за заданный интервал времени проанализированы, модуль 63 сравнивает показатель упомянутого счетчика с установленным пороговым значением в соответствии с инструкцией. Если показатель счетчика превышает установленное пороговое значение, например, разница превышает 200 единиц, то модуль 63 направляет в модуль 61 формирования уведомлений команду для формирования уведомления о выявленном отклонении в значении упомянутого счетчика, которое далее направляется в устройство 70 информирования пользователей для оповещения о выявленном отклонении заинтересованных лиц.
[0079] Дополнительно упомянутый модуль 63 может определить разницу заданных значений метрик в заданную единицу времени. Например, модуль 63 может посредством счетчика определить разницу между количеством звонком, принятых оператором, и ботом и если эта разница меньше порогового значения, например, меньше 50, то модуль 63 направляет в модуль 61 формирования уведомлений команду для формирования уведомления о выявленном отклонении, которое далее направляется в устройство 70 информирования пользователей для оповещения о выявленном отклонении заинтересованных лиц.
[0080] Дополнительно модуль 34 и модуль 63 могут быть выполнены с возможностью не направлять в заданный интервал времени в модуль 61 команду для формирования уведомления в отношении тех отклонений, которые ранее были ими уже зафиксированы, но не устранены.
[0081] Таким образом, за счет наличия в системе 100 мониторинга АС устройства (20) потоковой передачи данных, содержащего: модуль (21) памяти промежуточного хранения данных, модуль (22) управления данными для валидации и модуль (23) хранения данных, предназначенных для передачи, обеспечивается фильтрация данных о метриках, требующих валидацию, от данных, не требующих валидацию, в связи с чем исключаются ошибки, которые могут возникнуть при обработке упомянутой системой невалидированных данных. Также за счет наличия устройства (30) потоковой обработки данных и устройства (60) определения отклонений повышается надежность в выявлении отклонений, если одно из устройств выйдет из строя.
[0082] В общем виде (см. фиг. 2) вычислительное устройство (200) содержит объединенные общей шиной информационного обмена один или несколько процессоров (201), средства памяти, такие как ОЗУ (202) и ПЗУ (203), интерфейсы ввода/вывода (204), устройства (средства) ввода/вывода (205), и устройство (средство) для сетевого взаимодействия (206).
[0083] Процессор (201) (или несколько процессоров, многоядерный процессор и т.п.) может выбираться из ассортимента устройств, широко применяемых в настоящее время, например, таких производителей, как: Intel™, AMD™, Apple™, Samsung Exynos™, MediaTEK™, Qualcomm Snapdragon™ и т.п. Под процессором или одним из используемых процессоров в устройстве (200) также необходимо учитывать графический процессор, например, GPU NVIDIA с программной моделью, совместимой с CUDA, или Graphcore, тип которых также является пригодным для полного или частичного выполнения способа, а также может применяться для обучения и применения моделей машинного обучения в различных информационных системах.
[0084] ОЗУ (202) представляет собой оперативную память и предназначено для хранения исполняемых процессором (201) машиночитаемых инструкций для выполнения необходимых операций по логической обработке данных. ОЗУ (202), как правило, содержит исполняемые инструкции операционной системы и соответствующих программных компонент (приложения, программные модули и т.п.). При этом, в качестве ОЗУ (202) может выступать доступный объем памяти графической карты или графического процессора.
[0085] ПЗУ (203) представляет собой одно или более устройств постоянного хранения данных, например, жесткий диск (HDD), твердотельный накопитель данных (SSD), флэш-память (EEPROM, NAND и т.п.), оптические носители информации (CD-R/RW, DVD-R/RW, BlueRay Disc, MD) и др.
[0086] Для организации работы компонентов устройства (200) и организации работы внешних подключаемых устройств применяются различные виды интерфейсов В/В (204). Выбор соответствующих интерфейсов зависит от конкретного исполнения вычислительного устройства, которые могут представлять собой, не ограничиваясь: PCI, AGP, PS/2, IrDa, FireWire, LPT, COM, SATA, IDE, Lightning, USB (2.0, 3.0, 3.1, micro, mini, type C), TRS/Audio jack (2.5, 3.5, 6.35), HDMI, DVI, VGA, Display Port, RJ45, RS232 и т.п.
[0087] Для обеспечения взаимодействия пользователя с вычислительным устройством (200) применяются различные средства (205) В/В информации, например, клавиатура, дисплей (монитор), сенсорный дисплей, тач-пад, джойстик, манипулятор мышь, световое перо, стилус, сенсорная панель, трекбол, динамики, микрофон, средства дополненной реальности, оптические сенсоры, планшет, световые индикаторы, проектор, камера, средства биометрической идентификации (сканер сетчатки глаза, сканер отпечатков пальцев, модуль распознавания голоса) и т.п.
[0088] Средство сетевого взаимодействия (206) обеспечивает передачу данных посредством внутренней или внешней вычислительной сети, например, Интранет, Интернет, ЛВС и т.п. В качестве одного или более средств (206) может использоваться, но не ограничиваться: Ethernet карта, GSM модем, GPRS модем, LTE модем, 5G модем, модуль спутниковой связи, NFC модуль, Bluetooth и/или BLE модуль, Wi-Fi модуль и др.
[0089] Дополнительно могут применяться также средства спутниковой навигации в составе устройства (200), например, GPS, ГЛОНАСС, BeiDou, Galileo.
[0090] Конкретный выбор элементов устройства (200) для реализации различных программно-аппаратных архитектурных решений может варьироваться с сохранением обеспечиваемого требуемого функционала.
[0091] Модификации и улучшения вышеописанных вариантов осуществления настоящего технического решения будут ясны специалистам в данной области техники. Предшествующее описание представлено только в качестве примера и не несет никаких ограничений. Таким образом, объем настоящего технического решения ограничен только объемом прилагаемой формулы изобретения.
название | год | авторы | номер документа |
---|---|---|---|
АВТОМАТИЗИРОВАННАЯ СИСТЕМА УПРАВЛЕНИЯ РАЗВИТИЕМ УСТРОЙСТВ САМООБСЛУЖИВАНИЯ | 2017 |
|
RU2676030C1 |
Способ выявления аномалий в работе сети автоматизированной системы | 2020 |
|
RU2738460C1 |
СПОСОБ И СИСТЕМА ПОДБОРА ПРЕДЛОЖЕНИЙ ДЛЯ ПОЛЬЗОВАТЕЛЯ НА ОСНОВАНИИ АНАЛИЗА ЕГО ДЕЙСТВИЙ | 2018 |
|
RU2693646C1 |
СПОСОБ ОБРАБОТКИ ИНФОРМАЦИИ ДЛЯ НАПОЛНЕНИЯ БИБЛИОТЕКИ МОДЕЛЕЙ ДАННЫХ И УСТРОЙСТВО ДЛЯ ЕГО ОСУЩЕСТВЛЕНИЯ | 2019 |
|
RU2724799C1 |
СПОСОБ И СИСТЕМА МАРКИРОВКИ ДЕЙСТВИЙ ПОЛЬЗОВАТЕЛЯ ДЛЯ ПОСЛЕДУЮЩЕГО АНАЛИЗА И НАКОПЛЕНИЯ | 2018 |
|
RU2702275C1 |
Способ выявления нормальных реакций узлов компьютерной сети на сетевые пакеты, относящиеся к неизвестному трафику | 2022 |
|
RU2802164C1 |
СПОСОБ И УСТРОЙСТВО ОПРЕДЕЛЕНИЯ МЕСТОПОЛОЖЕНИЯ ТЕРМИНАЛА | 2021 |
|
RU2766548C1 |
СПОСОБ И СИСТЕМА РАСПРЕДЕЛЕНИЯ ВЫЧИСЛИТЕЛЬНЫХ РЕСУРСОВ ДЛЯ ОБРАБОТКИ ЗАПРОСОВ ПОЛЬЗОВАТЕЛЕЙ | 2023 |
|
RU2818490C1 |
СПОСОБ И СИСТЕМА ОПРЕДЕЛЕНИЯ СХОЖЕСТИ ВЕКТОРНЫХ ПРЕДСТАВЛЕНИЙ УЧАСТНИКОВ ТРАНЗАКЦИЙ | 2019 |
|
RU2728953C1 |
СПОСОБ ОБЕСПЕЧЕНИЯ КОМПЛЕКСНОЙ БЕЗОПАСНОСТИ ОБЪЕКТОВ, ТЕРРИТОРИЙ И НАСЕЛЕНИЯ НА БАЗЕ ПРОГРАММНО-АППАРАТНЫХ КОМПЛЕКСОВ И УНИВЕРСАЛЬНЫЙ ПРОГРАММНО-АППАРАТНЫЙ КОМПЛЕКС УПРАВЛЕНИЯ СИСТЕМОЙ КОМПЛЕКСНОЙ БЕЗОПАСНОСТИ | 2020 |
|
RU2790795C2 |
Представленное техническое решение относится, в общем, к области вычислительной техники, а в частности к способу и системе мониторинга автоматизированных систем (АС), находящихся в эксплуатации, с целью проективного и реактивного выявления отклонений в их работе на различных уровнях архитектуры, диагностики причины выявленного отклонения, а также оповещения заинтересованных лиц о выявленном событии. Техническим результатом является повышение надежности системы мониторинга АС. Указанный технический результат достигается благодаря созданию системы мониторинга АС, содержащей: устройство сбора данных, содержащее: модуль управления, модуль извлечения данных из объекта мониторинга и модуль преобразования данных; устройство потоковой передачи данных, содержащее: модуль памяти промежуточного хранения данных, модуль управления данными для валидации и модуль хранения данных, предназначенных для передачи; устройство потоковой обработки данных, содержащее: модуль управления валидацией, модуль хранения правил определения отклонений, модуль хранения правил валидации и модуль определения отклонений; систему хранения данных, содержащую: модуль памяти для хранения данных о метриках и модуль памяти для хранения спрогнозированных данных; устройство прогнозирования; устройство определения отклонений, содержащее: модуль формирования уведомлений, модуль управления правилами определения отклонений и модуль определения отклонений; устройство информирования пользователей и связи между ними. 2 н. и 7 з.п. ф-лы, 2 ил.
1. Система (100) мониторинга автоматизированных систем (АС), содержащая:
- устройство (10) сбора данных, содержащее: модуль (11) управления, модуль (12) извлечения данных из объекта (1) мониторинга и модуль (13) преобразования данных;
- устройство (20) потоковой передачи данных, содержащее: модуль (21) памяти промежуточного хранения данных, модуль (22) управления данными для валидации и модуль (23) хранения данных, предназначенных для передачи;
- устройство (30) потоковой обработки данных, содержащее: модуль (31) управления валидацией, модуль (32) хранения правил определения отклонений, модуль (33) хранения правил валидации и модуль (34) определения отклонений;
- систему (40) хранения данных, содержащую: модуль (41) памяти для хранения данных о метриках и модуль (42) памяти для хранения спрогнозированных данных;
- устройство (50) прогнозирования, подключенное к модулю (41) памяти для хранения данных о метриках и модулю (42) памяти для хранения спрогнозированных данных;
- устройство (60) определения отклонений, содержащее: модуль (61) формирования уведомлений, модуль (62) управления правилами определения отклонений и модуль (63) определения отклонений;
- устройство (70) информирования пользователей;
причем модуль (11) управления соединен с модулем (12) извлечения данных, модуль (12) извлечения данных соединен с объектом мониторинга и модулем (13) преобразования данных, модуль (21) памяти промежуточного хранения данных соединен с модулем (13) преобразования данных и модулем (22) управления данными для валидации, модуль (22) управления данными для валидации соединен с модулем (31) управления валидацией и модулем (23) хранения данных, модуль (31) управления валидацией соединен с модулем (33) хранения правил валидации и модулем (23) хранения данных, модуль (23) соединен с модулем (34) определения отклонений и модулем (41) памяти для хранения данных о метриках, модуль (34) определения отклонений соединен с модулем (32) хранения правил определения отклонений и модулем (61) формирования уведомлений, модуль (62) управления правилами определения отклонений соединен с модулем (32) хранения правил определения отклонений, модуль (63) определения отклонений соединен с модулем (41) памяти для хранения данных о метриках, модулем (42) памяти для хранения спрогнозированных данных, модулем (62) управления правилами определения отклонений и модулем (61) формирования уведомлений, модуль (61) формирования уведомлений соединен с устройством (70) информирования пользователей.
2. Система по п. 1, характеризующаяся тем, что устройство (20) потоковой передачи данных дополнительно содержит модуль (24) хранения данных, соединенный с объектом 1 мониторинга и модулем (12) извлечения данных.
3. Система по п. 1, характеризующаяся тем, что устройство (50) прогнозирования содержит соединенные между собой: модуль (51) управления, модуль (52) обработки данных, модуль (53) памяти, предназначенной для оперативной работы с данными, и модель (54) машинного обучения;
причем модуль (52) обработки данных соединен с модулем (41) памяти для хранения данных о метриках и модулем (42) памяти для хранения спрогнозированных данных.
4. Система по п. 1, характеризующаяся тем, что она дополнительно содержит модуль (43) визуализации данных, соединенный с модулем (41) памяти для хранения данных о метриках, модулем (42) памяти для хранения спрогнозированных данных и модулем (61) формирования уведомлений.
5. Система по п. 1, характеризующаяся тем, что модуль (63) определения отклонений оснащен счетчиками для определения количества отклонений за заданный период времени, для определения разности значений различных метрик в единицу времени, для определения разности значений метрии в разное время наблюдения, для определения суммы значений метрики за определенный интервал времени.
6. Система по п. 1, характеризующаяся тем, что устройство (20) потоковой передачи данных дополнительно содержит область памяти, предназначенную для хранения данных о метриках, непрошедших процедуру валидации.
7. Способ автоматического мониторинга АС, выполняемый модулем (63) определения отклонений, содержащий этапы, на которых:
- получают инструкции для определения отклонений;
- извлекают из памяти, согласно упомянутым инструкциям, данные о метриках за заданный промежуток времени;
- извлекают из памяти, согласно упомянутым инструкциям, верхние и нижние границы значений метрик, определенные для упомянутых метрик;
- сравнивают каждое значение метрики с упомянутыми границами значений метрик, причем если значение метрики выходит за упомянутые границы значений, то модуль (63) увеличивает показатель счетчика на 1;
- после сравнения всех значений метрик с упомянутыми границами значений метрик извлекают показатель счетчика и сравнивают его с пороговым значением счетчика, заданным в инструкции, причем если показатель счетчика превышает или соответствует заданному пороговому значению счетчика, то формируют в модуль (61) формирования уведомлений команду для формирования уведомления о выявленном отклонении в значении метрики.
8. Способ по п. 7, характеризующийся тем, что дополнительно выполняют этап фиксации наличия отклонения в данных о метриках.
9. Способ по п. 8, характеризующийся тем, что дополнительно выполняют этапы, на которых:
- извлекают из памяти, согласно упомянутым инструкциям, данные о метриках за следующий промежуток времени;
- извлекают из памяти, согласно упомянутым инструкциям, верхние и нижние границы значений метрик, определенные для упомянутых метрик;
- сравнивают каждое значение метрики с упомянутыми границами значений метрик, причем если значение метрики выходит за упомянутые границы значений, то модуль (63) увеличивает показатель счетчика на 1;
- после сравнения всех значений метрик с упомянутыми границами значений метрик извлекают показатель счетчика и сравнивают его с пороговым значением счетчика, заданным в инструкции, причем если показатель счетчика не превышает заданное пороговое значение счетчика, то фиксируют устранение отклонения и формируют в модуль (61) формирования уведомлений команду для формирования уведомления о устранении отклонения в значении метрики.
US 20040117185 A1, 17.06.2004 | |||
US 20160018991 A1, 21.01.2016 | |||
US 8996350 B1, 31.03.2015 | |||
US 20090306984 A1, 10.12.2009 | |||
US 2020065390 A1, 27.02.2020 | |||
US 2017155768 A1, 01.06.2017 | |||
US 8988237 B2, 24.03.2015. |
Авторы
Даты
2023-12-08—Публикация
2023-03-13—Подача