Мониторинг потребления памяти рабочими процессами rphost

10.06.22

Администрирование - Мониторинг

Организация мониторинга за потребляемой рабочими процессами 1С памятью.

Файлы

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

Наименование Скачано Купить файл
Мониторинг потребления памяти рабочими процессами rphost:
.py 0,72Kb
7 1 850 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

Увидел на просторах Инфостарта статью и решил сделать себе нечто подобное. Никакой цели, кроме исследовательской, не преследовал. Было интересно просто посмотреть на графики, какое количество памяти выделяется на процесс, сколько живут процессы и каково их количество на каждом сервере.

Для получения объема потребляемой памяти процессами:

1. Был написан скрипт на python

import sys
sys.path.append('C:\\Program Files\\Python38\\lib\\site-packages\\win32')
sys.path.append('C:\\Program Files\\Python38\\lib\\site-packages\\win32\\lib')
import wmi
import json


servers = ['server1', 'server2', 'server3'] # указываем серверы кластера 
response = [] #список словарей с результатом
for server in servers:
    try:
        c = wmi.WMI(server)
        for proc in c.Win32_Process():
            if proc.Description == 'rphost.exe':
                dict_res = {'server_name': server, 'values': {'name_rphost': f'rphost_{proc.ProcessID}', 'working_set_size': round(int(proc.WorkingSetSize) / 1048576, 2)}}
                response.append(dict_res)
    except wmi.x_wmi as err:
            error = err
            continue
print(json.dumps(response)) #создаем json из списка словарей с результатом

Формат полученных данных будет приблизительно такой

[{"server_name": "server1", "values": {"name_rphost": "rphost_58564", "working_set_size": 48145.27}}, {"server_name": "server1", "values": {"name_rphost": "rphost_32956", "working_set_size": 54529.21}}, {"server_name": "server1", "values": {"name_rphost": "rphost_28856", "working_set_size": 27538.9}}, {"server_name": "server2", "values": {"name_rphost": "rphost_15800", "working_set_size": 49021.79}}, {"server_name": "server2", "values": {"name_rphost": "rphost_24416", "working_set_size": 56346.69}}, {"server_name": "server2", "values": {"name_rphost": "rphost_14772", "working_set_size": 63873.95}}, {"server_name": "server3", "values": {"name_rphost": "rphost_16416", "working_set_size": 53725.92}}, {"server_name": "server3", "values": {"name_rphost": "rphost_2424", "working_set_size": 45330.21}}, {"server_name": "server3", "values": {"name_rphost": "rphost_20116", "working_set_size": 48531.26}}, {"server_name": "server3", "values": {"name_rphost": "rphost_52112", "working_set_size": 33326.7}}]

 

2. Положил этот скрипт в папку для внешних скриптов Zabbix, настроил user_parameters и добавил элемент данных на сервер, на котором будет выполняться этот скрипт.

 

 

3. Создал правило обнаружения для этого элемента данных

 

 

и в макросах указал переменные, которые мы будем забирать из полученного в основном элементе данных json'a


 

4. В созданном правиле обнаружения создал прототип элементов данных

 

И добавил шаг предобработки JSONPath c параметром 

$[?(@.server_name=='{#SERVER_NAME}')].[?(@.name_rphost=='{#NAME_RPHOST}')].working_set_size.first()

 

 

5. Добавил прототип триггера, который будет срабатывать, если объем памяти рабочего процесса будет превышать 50 Гб

 

 

6. Добавил график в Grafana и наслаждался красотой

 

 

И вот такая картина за 7 дней, видно, как в один из дней все процессы резко умерли, это связано с рестартом кластера 1С

 

Вступайте в нашу телеграмм-группу Инфостарт

rphost python grafana zabbix мониторинг

См. также

Работа с интерфейсом Анализ учета Мониторинг 1С v8.3 8.3.14 1C:Бухгалтерия 1С:Бухгалтерия 3.0 1С:Библиотека стандартных подсистем 1С:ERP Управление предприятием 2 1С:Управление холдингом 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Управление торговлей 11 Платные (руб)

Скачайте бесплатную обработку "Анализ данных для использования в подсистеме 1С Инфоборды" и узнайте возможность внедрения подсистемы у себя в конфигурации! Создайте свой функциональный интерфейс в любой конфигурации 1С с помощью расширения "Инфоборды". Настраивайте панели виджетов с метриками, индикаторами и показателями на начальном экране.

28800 руб.

27.03.2025    13499    24    18    

34

Мессенджеры и боты Журнал регистрации Мониторинг Email рассылки Системный администратор 1С v8.3 Управляемые формы 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Комплексная автоматизация 2.х 1С:Зарплата и Управление Персоналом 3.x Платные (руб)

Рассылка уведомлений о событиях журнала регистрации на электронную почту и в Телеграмм. Программа позволяет анализировать журнал регистрации по заданным критериям, находить в нём интересующие события, и отправлять уведомления об этих событиях на электронную почту (одного или нескольких получателей) или в телеграмм. Может работать и как внешняя обработка, и как регламентное задание. Для УНФ, УТ 11, БП 3.0, ЗУП 3.0, ERP.

10800 руб.

18.06.2017    33863    4    2    

15

Мониторинг Системный администратор Программист 1С v8.3 Россия Платные (руб)

Обработка позволяет использовать подобные КОРП-функциональности механизмы контроля расхода памяти (сеансом на 1 вызов и рабочими процессами), реагируя завершением "тяжелых" вызовов, перезапуском рабочих процессов при чрезмерном потреблении этого важного ресурса.

3600 руб.

03.05.2023    5929    4    0    

5

Журнал регистрации Мониторинг Программист 1С v8.3 Россия Абонемент ($m)

Внешняя обработка, которую можно добавить как регламентное задание, которое выполняет анализ журнала регистрации за текущий день на наличие ошибок выполнения регламентных заданий (РЗ). Если обнаружены неисправленные ошибки (последнее событие РЗ - ошибка) - формирует и отправляет уведомление пользователю. В примере данной обработки - по электронной почте (на скорую руку набросал на случай использования не разработчиками, т.к. обработка планировалась использоваться разработчиками). Подходит для мониторинга и оперативного реагирования на сбои в регламентных задачах.

1 стартмани

27.08.2025    794    1    Elkasar    1    

2

Мониторинг Системный администратор Программист Бесплатно (free)

Администраторы следят за серверами и оборудованием, но кто следит за 1С? Показываем, как на базе только стандартного стека 1С упаковать RAS и построить простую систему мониторинга и оповещений без КИП, ТЖ и сложных инструментов. В статье – рабочие приемы, паттерны и лайфхаки, которые позволяют вовремя реагировать на проблемы и получать аналитику без лишних затрат.

25.08.2025    1095    evvakra    0    

3

Инструменты администратора БД Мониторинг Системный администратор Программист Россия Бесплатно (free)

Система мониторинга и автоматизации рутинных операций обслуживания информационных баз 1С:Предприятие.

16.07.2025    1760    0    akpaevj    14    

34

Журнал регистрации Мониторинг Пользователь 1С v8.3 Россия Абонемент ($m)

Узнайте, кто, что и когда менял в ваших справочниках и документах! Гибкий и быстрый отчет на основе журнала регистрации с удобной фильтрацией! Отчет покажет все действия пользователей на основании журнала регистрации по двум основным типам объектов в 1С.

1 стартмани

19.06.2025    955    15    Yellow_Cube    5    

3

Закрытие периода Мониторинг Программист Бухгалтер 1С v8.3 Бухгалтерский учет 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Абонемент ($m)

Отображение факта выполнения фоновых заданий Закрытия месяца конфигурации Бухгалтерия предприятия на отдельной области рабочего стола. Пример работы с фоновыми заданиями в БП.

1 стартмани

06.06.2025    640    0    annak2906    0    

1
Для отправки сообщения требуется регистрация/авторизация