Мониторинг показателей систем 1С 8.3 с помощью Zabbix

16.04.21

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

Опишу свой опыт мониторинга наших систем 1С с помощью Zabbix и ту пользу, которую можно извлечь из этого.

Скачать файлы

Наименование Файл Версия Размер
Мониторинг показателей систем 1С 8.3 с помощью Zabbix:
.epf 5,48Kb
96
.epf 5,48Kb 96 Скачать

Собирать данные мониторинга для Zabbix можно несколькими способами:

  1. Формирование файла нужного формата сразу по нескольких показателям (Items), например с помощью регламентного задания и отправка этого файла Zabbix серверу через Zabbix sender (На Инфостарте уже есть отдельная статья об этом). 
  2. Способ сбора данных, когда Zabbix запрашивает данные через REST интерфейс. Его преимущество в том, данные по мониторингу из 1С может получить любая другая система (например Grafana). 
  3. Формирование значения по одному показателю (Item) в момент выполнения какого-либо действия в 1С и отправка этого значения Zabbix серверу через Zabbix sender. Это разновидность способа номер 1.
     

Сбор данных через REST интерфейс.

Сначала, о том, что мы собираем через REST интерфейс и зачем:

- показатели количества сессий 1С: все сессии, только клиентские сессии, только jobs, только com connections.

- показатели количества использованных лицензий, в разрезе каждой лицензии. Зачем: у нас ограниченное количество лицензий и проходиться контролировать количество входящих com connections. Мониторинг показателей с Apllication сервера 1С лучше вешать на отдельную БД, что-то типа MonitoringDB, в ней надо создать пользователя Zabbix, у которого будет указано Windows аутентификация типа \\Net_NT\ServerOneS$.

- показатели очередей импорта/экспорта объектов. Зачем: наши системы 1С получают в день от 500 тысяч до 1 млн. событий извне и порой в очередях 1С может скапливаться десятки тысяч событий, соответственно срабатывание Trigger'a на определенном пороге для нас сигнал, что возникла проблема.

- показатели работы Apllication и sql серверов, которые собираются с помощью типовых шаблонов самого Zabbix.

 

Как настроить сбор данных через REST интерфейс:

1. На стороне 1С создаются https сервисы, каждый из которых будет возвращать значение нужного нам показателя. Подразумеваем, что у Вас уже стоит и настроен IIS или Apache.

2. На стороне Zabbix настраиваем нужное количество Items и необходимые Triggers.

Шаг 1. Создание  https сервисов в базе 1С. 

Здесь все стандартно и уже не раз описывалось на Инфостарте, покажу пример на сборе данных о лицензиях. В итоге должен получиться примерной такой вызов: http://serverOneS/MonitoringDB/hs/1CMonitoring/GetLicensessData/serverOneS/Server8100000001, который вернет значение: licence_Server8100000001:10

Примеры кода 1С приложены в обработке к статье, код протестирован на платформе 1С 8.3.10.2669.

Функция GetLicensesData(Parametrs)
	
	NameClusterПар = Parametrs.ПараметрыURL.Получить("NameCluster");
	TypeOfParameterПар = Parametrs.ПараметрыURL.Получить("TypeOfParameter");
	
	Соединение = Новый COMОбъект("V83.COMConnector");	
	Агент = Соединение.ConnectAgent("tcp://" + NameClusterПар);
	Кластер = Агент.GetClusters().GetValue(0);
	Агент.Authenticate(Кластер,"","" );
	
	МассивСессий = Агент.GetSessions(Кластер).Выгрузить();	
	Кластер	= Неопределено; Агент = Неопределено; Соединение = Неопределено;
	
	ClientORGL8Set20 = 0; //аппаратная лицензия
	Server8100000001 = 0; //программная лицензия
	
	Для Каждого Сессия Из МассивСессий Цикл		
		Если Сессия.License <> Неопределено И Сессия.License.ShortPresentation = "Client, ORGL8 Set 20" Тогда
			ClientORGL8Set20 = ClientORGL8Set20  + 1;	
		КонецЕсли;				
		Если Сессия.License <> Неопределено И Сессия.License.ShortPresentation = "Server, 8100000001 20 20" Тогда
			Server8100000001 = Server8100000001 + 1;	
		КонецЕсли;
	КонецЦикла;
	
	МассивСессий = Неопределено;
	
	Ответ = Новый HTTPСервисОтвет(200);   
	Ответ.Заголовки.Вставить("Content-type", "application/json;  charset=utf-8");
	
	Если TypeOfParameterПар = "licenceClientORGL8Set20" Тогда
		Ответ.УстановитьТелоИзСтроки("licence_ClientORGL8Set20:" + ClientORGL8Set20);	
	ИначеЕсли TypeOfParameterПар = "Server8100000001" Тогда
		Ответ.УстановитьТелоИзСтроки("licence_Server8100000001:" + Server8100000001);	
	КонецЕсли;
	
	Возврат Ответ;
КонецФункции

Шаг 2. Создание  Items в Zabbix. 

Заходим в Configuration - All hosts - Host - Item - Create Item.

Самое главное корректно заполнить поле Key с помощью шаблона Поиск строки на веб-странице: web.page.regexp[хост,<путь>,<порт>,<регулярное выражение>,<длина>,<вывод>] .

В моем примере в поле Key надо положить строку: web.page.regexp[serverOneS,"MonitoringDB/hs/1CMonitoring/GetLicensesData/serverOneS/licenceClientORGL8Set20",80,"licence_ClientORGL8Set20:([0-9]+)",,\1]

Разберем формат строки:

  • хост - serverOneS - сервер 1С, на котором поднят IIS;
  • путь - MonitoringDB/hs/1CMonitoring/GetLicensesData - путь к http сервису + serverOneS/licenceClientORGL8Set20 - параметры передаваемые в http сервис.
  • регулярное выражение - "licence_ClientORGL8Set20:([0-9]+)" - шаблон строки, который разбирается Zabbix. В скобках указан шаблон извлечения числа и если Zabbix сможет эту часть преобразовать в число, то это и будет value для Item.
  • вывод - по этому параметру, к сожалению, не нашел внятного описания, поэтому поставил аналогично примерам найденным на форумах.

Остальные параметры Item заполняем аналогично скриншоту ниже:

Проверяем в Latest Data, что Zabbix собирает данные.

В таком  случае, надо проверить через отладчик, что Zabbix цепляет http сервис и возвращает ему правильную строку. Если все-таки отладчик покажет, что строка возврата верная, то скорее всего запрос внутри 1С отрабатывает, более 20 секунд и этом случае Zabbix считает, что ответа нет и выдает ошибку "Value "" of type "string" is not suitable for value type "Numeric (unsigned)"".

Сбор данных по определенным показателям через Zabbix sender:

  1. На стороне Zabbix настроить Item с типом Zabbix trapper.
  2. На стороне 1С необходимо вставить вызов Windows команды, которая будет отравлять значение по нужному Item в Zabbix.

Для чего можно использовать именно такой способ сбора данных: с помощью регламентных заданий каждые 30 минут отрабатывает реконсиляция между 1С и сторонней системой по входящим объектам, которая показывает количество расхождений по объектам и как результат в Zabbix отравляется количество брейков.

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

Шаг 1. Настройка Item с типом Zabbix trapper

Заходим в Configuration - All hosts - Host - Item - Create Item.

Необходимо заполнить поля Name и Key названием показателя. В поле Type выбрать Zabbix trapper, поле Type of information = Numeric(unsigned).

Шаг 2. Вызов Windows команды внутри регламентного задания

Добавить в конце регламентного задания подобный код:

Попытка
	КоличествоРасхождений = СтрЗаменить(КоличествоРасхождений,Символы.НПП,"");
	CodeReturn = "";
	ВнешняяКоманда="c:/ZabbixAgent/zabbix_sender.exe -c c:/ZabbixAgent/zabbix_agentd.conf -s <ИМЯ хоста в ZABBIX> -k document_breaks -o "+Формат(КоличествоРасхождений,"ЧГ=")+"";
	ЗапуститьПриложение(ВнешняяКоманда,,True, CodeReturn);             
Исключение
	ЗаписьЖурналаРегистрации("ZabbixAgent",   УровеньЖурналаРегистрации.Предупреждение,,,"Не удалось выполнить внешнюю команду! "+ ВнешняяКоманда + " " + ОписаниеОшибки() + "CodeReturn: " + CodeReturn);
КонецПопытки;                               

 

После настройки Items и получения данных из 1С, настраиваем Graphs и Dashboards и наслаждаемся :-).

 

P.S. Zabbix отлично собирает данные, но возможности в настройках Dashboards у него не большие, гораздо лучше и красивее в этом плане Grafana, у которой в качестве источника можно указать Items из Zabbix'а:

P.S.P.S. Данный способ мониторинг довольно прост, но чтобы разобраться с ним я потратил немало времени на поиск информации, поэтому статья написана, не только с целью поделиться своим опытом, но и узнать опыт коллег. Всем удачи.

Zabbix мониторинг grafana rphost

См. также

Мониторинг баз и серверов 1С

Журнал регистрации Мониторинг Платформа 1С v8.3 Платные (руб)

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

9000 руб.

28.08.2019    30839    14    21    

65

Уведомления на почту по событиям журнала регистрации на email и в Telegram (для УНФ, УТ 11, БП 3.0, ЗУП 3.0, ERP)

Мессенджеры и боты Журнал регистрации Мониторинг 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    32258    3    2    

15

Конфигурация Session Monitor

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

Конфигурация Session Monitor предназначена для мониторинга сервера 1С с целью отслеживания чрезмерной нагрузки от конкретных сеансов и скорости реакции рабочих процессов.

1500 руб.

01.12.2020    14160    32    0    

47

Yellow Watcher - Жёлтый наблюдатель за информационными базами

Мониторинг Платформа 1С v8.3 Абонемент ($m)

Программный комплекс мониторинга качества работы информационных баз. Статистика возникновения управляемых блокировок (тип, последняя строка контекста, контекст). Анализ длительных запросов по данным из технологического журнала. Анализ потребления ресурсов СУБД запросами и статистика ожиданий по данным из Query Store. Монитор информационной базы - получение плана запроса для сеанса 1С.

1 стартмани

12.02.2024    2929    22    sdf1979    10    

51

Проверка доступа к интернет на сервере 1С

Мониторинг Платформа 1С v8.3 Конфигурации 1cv8 1С:Бухгалтерия 3.0 Абонемент ($m)

Инструмент для проверки интернет - соединения на сервере 1С

3 стартмани

23.11.2023    1788    5    1395969    4    

2

Магия преобразований Vector, часть 3: журнал регистрации + прямой экспорт ошибок в Sentry

Журнал регистрации Мониторинг Абонемент ($m)

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

1 стартмани

19.11.2023    636    2    AlexSTAL    0    

6

Магия преобразований Vector, часть 2: технологический журнал

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

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

1 стартмани

15.11.2023    727    4    AlexSTAL    0    

8

Магия преобразований: ЖР, ТЖ, RAS/RAC, логи - универсальное решение Vector

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

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

1 стартмани

13.11.2023    2885    4    AlexSTAL    0    

42
Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. mityushov.vv 249 06.10.18 15:42 Сейчас в теме
Добрый день, отличная статья.
Но я бы попросил вас бы добавить описание что именно вы мониторите и т.д. Либо прикрепил ссылки на статьи где описано в чем именно полезность данного механизма. Я знаю что можно мониторить взаимодействие 1С с веб и http сервисами, а что еще можно получить при помощи данного мониторинга, конкретно на примерах из жизни что это дает в части отслеживания проблем и скорости их устранения?
4. Region102 07.10.18 08:06 Сейчас в теме
(1) Если вы не знаете зачем мониторить сервер 1С, то это вам не нужно. А когда у вас 500+ пользователей в онлайне, и падает сервак за 10 мультов, то звонок от буха идет не вам, а сразу директору.
karneichik; Irwin; +2 14 Ответить
5. mityushov.vv 249 07.10.18 11:03 Сейчас в теме
(4) Меня всегда смешили люди, которые считают себя умнее других. Вообще вопрос был не к вам, и вопрос был не в том нужно или нет. Я знаю для чего нужен Заббикс и т.д. я хотел подробнее познакомиться с опытом коллег. Это всегда бывает полезно сколько бы человек не работал в ИТ.
В следующий раз вообще не пишите комментарии, чем писать такое.
serezh1a; fendibober; Itilive.ru; user1279931; Artym; zuxelzz; LineykaSBK; stopa85; CodeNull; wowik; d4rkmesa; AlexK_2012; deevil; +13 Ответить
9. user612295_death4321 07.10.18 15:27 Сейчас в теме
(5)
да смешили люди, которые считают себя умнее других. Вообще вопрос был не к вам, и вопрос был не в том нужно или нет. Я знаю для чего нужен Заббикс и т.д. я хотел подробнее познакомиться с опытом коллег. Это всегда бывает полезно сколько бы человек не работал в ИТ.
В следующий раз вообще не пишите комментарии, чем писать такое.


Честно говоря, меня тоже вводит в некоторое замешательство Ваш вопрос, но давайте я поделюсь опытом своего предприятия.

У нас тоже построены дашбоарды графаны на основании данных заббикса. Мы создали дашбоард в разрезе каждой базы куда выведены ключевые показатели производительности наших серверов (1С + MS SQL).
Общие MS SQL + 1C.
За ключевые счетчики мы посчитали: Нагрузка ЦП, Очередь ЦП, % использования РАМ, Очередь диска, время обращение к диску, нагруженность сети, наличие свободного места на диске, доступность сервера, время отклика. Если речь о СУБД, то в счетчики в разрезе всех дисков (С, tempDB, Диск с базой).

Только для 1С:
Наличие установленной блокировки входа в базу, наличие установленной блокировки для регламентных заданий в базу, текущий потребляемый объем памяти в разрезе рп хостов. Так же прикручена логика если вдруг какой то из счетчиков выйдет из зеленой зоны сразу же запуститься скрипт на powershell который выведет топ 5 пользователей в консоли отсортированных по колонке захвачено СУБД.

Только для СУБД:
Процент попадания в буферный кэш, время жизни страницы в буфере, количество латчей, статистика ожиданий. + данные регламентных заданий на СУБД, были ли они выполнено успешно.

Данные из СХД:
Счетчик загруженности операциями IO с СХД.
p.s: не обращайте внимание на отсутствие значений, сейчас в работе у нас модернизация нашего текущего железа, в связи с чем мы тестируем разные СХД от вендеров, а в графане подвязан счетчик от другого Луна.

Ниже прикладываю скрины как выглядит мой дашбоард, ну и подобный дашбоард у меня в разрезе каждой базы.

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

Ну и так же такой момент, что в графану мы выводим только ключевые счетчики, есть куча других счетчиков которые собирает заббикс к которым точно так же прикручены алармы. Недавно прикрутили новый alarm который отслеживает размер ldf файла, который по неизвестным мне причинам не очищался после инкриментального бэкапа, а в конечном итоге вырос до огромных размеров.
Прикрепленные файлы:
buldinanton90; maksa2005; denwer7; Liris; awk; Paradise.87; deevil; Upiterus; JohnyDeath; user793685; Азверин; Anchoret; RomanMartynenko; MOPC; wowik; Irwin; mityushov.vv; botokash; fancy; CSiER; zeegin; RM_1; akimych; eeeio; acanta; +25 Ответить
15. akimych 227 07.10.18 22:02 Сейчас в теме
(9)
Недавно прикрутили новый alarm который отслеживает размер ldf файла, который по неизвестным мне причинам не очищался после инкриментального бэкапа, а в конечном итоге вырос до огромных размеров.


Спасибо в целом за детальный ответ.
У нас тоже есть проблема с ростом ldf, причина роста понятна, это не отрабатывал бэкап. Можно пример как сделан такой аларм.
Есть мысли мониторить рост баз в скуле и заодно ldf.
19. mityushov.vv 249 08.10.18 13:58 Сейчас в теме
(9) Ну вот, хороший ответ. А то начинают некоторые умничать)))) Спасибо за ответ. Конечно это все можно прочитать в литературе и т.д. хотелось от конкретных людей услышать применение Заббикс в части 1С. А удивляетесь вы зря, на многих предприятиях даже и этого не настроено и люди сидят вычисляют в консоли серверов 1С кто же что там "съел" и так далее и то после того как начинают звонить пользователи и ругаться что все тормозит люто. Далеко не каждый настраивает эти вещи. Может быть админы там что то и анализировали, но до 1С это у нас не доходило либо я про это не слышал))))
Artym; wowik; +2 Ответить
21. user612295_death4321 08.10.18 17:22 Сейчас в теме
(19) скажу так, года 2-3 назад мы были теми людьми которые что-то там в консоли пытались поймать))))
denwer7; TerveRus; mityushov.vv; +3 Ответить
22. mityushov.vv 249 08.10.18 17:32 Сейчас в теме
23. TerveRus 10.10.18 07:49 Сейчас в теме
(21) вот я сейчас на этой стадии нахожусь и не знаю что, как и где смотреть почему периодически тормозит и подвисает 1С )
Мониторинг это хорошо, но ничего не выйдет без понимания что это за показатели и какие цифры для них это нормально, а какие уже беда.
Или вот допустим запустил кто-то средь бела дня перепроведение тысяч документов за несколько лет, и на какие показатели смотреть и как вычислять этого пользователя?) Консоль в таких случаях кажется совсем бесполезной. Может подскажете литературу где такие вопросы и ключевые показатели работы 1С сервера рассматриваются?
24. user612295_death4321 10.10.18 22:28 Сейчас в теме
(23)
кументов за несколько лет, и на какие показатели смотреть и как вычислять этого пользователя?) Консоль в таких случаях кажется совсем бесполезной. Может подскажете лите


А в таких случаях я использую свой второй козырь :) Графана очень хорошо помогает визуализировать данные заббикса, а вот активность пользователей 1С я предпочитаю смотреть в PowerBI, т.к. очень гибкие отборы могу задать на вход и видеть всю динамику в разрезе всего (времени, базы, имени пользователя, запросов, стеков вызовов, блокировках (субд, 1с), да и вообще на что фантазии хватит). Данные в PowerBI заливаются с трассировок MS SQL + Технологический журнал 1С. В планах подкрутить еще несколько фишек, но дай бог времени, сил и терпения.

А по Вашему случаю надо понять что является узким горлышком в системе, как правило это либо проблемы параллельности (ожидания на блокировках), либо в нехватке аппаратных ресурсов (высокая нагрузка на процессор, большое потребление оперативной памяти, нестабильная сеть), с админом общались на тему торможения? Какие цифры это нормально, я думаю тут очень интимный момент и подбирается под систему индивидуально )

Из литературы могу посоветовать только то, что читал сам лично:
1. Настольная книга 1С:Эксперта по технологическим вопросам. 2 издание (http://v8.1c.ru/metod/books/book.jsp?id=499).
2. Методическое пособие по эксплуатации крупных информационных систем на платформе «1С:Предприятие 8».
3. PDFка, от по производительности на много страниц, но она мне показалась не такой увлекательной как первые 2 книги, но возможно это связано с тем, что я читал её еще тогда когда вообще мало что понимал.

Если что пиши можем поковырять, может смогу чем-то помочь.
Прикрепленные файлы:
afk; denwer7; akimych; TerveRus; JohnyDeath; +5 Ответить
27. akimych 227 11.10.18 14:14 Сейчас в теме
(24)
Данные в PowerBI заливаются с трассировок MS SQL + Технологический журнал 1С. В планах подкрутить еще несколько фишек, но дай бог времени, сил и терпения.


Мне не приходило в голову использовать PowerBI для мониторинга. Это реально интересно, вот если бы вы сделали статью об этом, то было бы здорово.

У нас сейчас грозит рост объемов в 2 раза и такой мониторинг мог бы помочь.
41. dammit666 15 16.08.19 17:25 Сейчас в теме
У меня ругается на "Соединение = Новый COMОбъект("V83.COMConnector");"
В браузере сообщение:
{HTTPСервис.Monitoring1C.Модуль(27)}: Ошибка при вызове конструктора (COMОбъект)

С чем может быть связано?
42. akimych 227 19.08.19 12:02 Сейчас в теме
(41)
{HTTPСервис.Monitoring1C.Модуль(27)}: Ошибка при вызове конструктора (COMОбъект)

как вариант не зарегистрирован ком объект - regsvr32.exe comcntr.dll
43. dammit666 15 19.08.19 12:21 Сейчас в теме
(42)
Акимыч, DLL-ку зарегистрировал, к сожалению, после этого ошибка осталась,
Также попробовал выполнить пример другого HTTP-сервис - с запросом

Функция ВернутьСписокПользователей()
	Запрос = Новый Запрос;
	Запрос.Текст =
	"ВЫБРАТЬ
	|	Пользователи.Ссылка
	|ИЗ
	|	Справочник.Пользователи КАК Пользователи
	|ГДЕ
	|	Пользователи.Недействителен = ЛОЖЬ";
	Выборка = Запрос.Выполнить().Выбрать();
        ...
Показать


В браузере теперь ругается на
{HTTPСервис.ЕщеПример.Модуль(19)}: Ошибка при вызове метода контекста (Выполнить)

Такое чувство, что у HTTP-сервиса очень ограниченный контекст, - создать COM-объект нельзя, запрос выполнить нельзя...
Что я делаю не так?
44. akimych 227 19.08.19 12:37 Сейчас в теме
(43)
{HTTPСервис.ЕщеПример.Модуль(19)}: Ошибка при вызове метода контекста (Выполнить)

насчет COM-объект не пробовал через HTTP-сервис.
Но запросы HTTP-сервис отлично выполняет. что за конфигурация и платформа?
45. dammit666 15 19.08.19 14:02 Сейчас в теме
(44)
С запросом разобрался, все норм отрабатывает, а вот COM-объект не получается.
Конфигурация чистая с несколькими пользователями, справочниками, ролью полные права и собственно с HTTP-сервисами
Версия платформы - 8.3.15.1489
46. akimych 227 19.08.19 16:25 Сейчас в теме
(45)
8.3.15.1489

а зачем в HTTP-сервис делать еще COM к другой базе? Боюсь такой функциональности нет.
47. dammit666 15 20.08.19 10:29 Сейчас в теме
(46)
м в HTTP-сервис делать еще COM к другой базе? Бою

Делаю по вашему примеру)) - Шаг 1
48. akimych 227 20.08.19 17:23 Сейчас в теме
(47) Точно, сорри, просто забыл, что внутри примера.

а можно еще написать, что система пишет в Информация для технической поддержки.
52. ZhakeKZ 10.03.22 13:37 Сейчас в теме
(44)
Доброе время суток !

Как решили данный вопрос ?

Код проверил через внешний отчет на сервере, работает.
Из кластера получил данные.

А вот из http сервиса данная ошибка возникает:
Ошибка при вызове конструктора (COMОбъект)
25. user612295_death4321 10.10.18 22:33 Сейчас в теме
(23) Я тут писал огромное сообщение в которое вложил душу, но инфостарт выдал ошибку и резко все закрылось )

Ну тогда краткая выдержка.

1. Что говорит админ по поводу торможений?
2. Из литературы могу посоветовать то, что читал сам лично:
- Настольная книга 1С:Эксперта по технологическим вопросам. 2 издание
- Методическое пособие по эксплуатации крупных информационных систем на платформе «1С:Предприятие 8»
- PDFка по производительности с курсы-по-1с на кучу страниц.
3. Если Вы уверены, что точно кто-то занимается перепроведением кучи документов, можно как вариант рассмотреть запрос к регистру версий объектов, сгруппировав по пользователю, а если хотим просто выловить кто из пользователей вносит самый большой вклад, то надо изучать возможности технологического журнала и SQL трассировок.
acanta; TerveRus; +2 Ответить
26. TerveRus 11.10.18 09:59 Сейчас в теме
(25) вот поэтому я иногда копирую текст набранного сообщения в буфер, а потом нажимаю кнопку отправить)
Сервер мощный довольно, загрузка CPU около 20%, админ говорит в SQL ничего странного не видит.
Насчет перепроведений это не точно, просто иногда жуткие тормоза какое-то время. Хотел ЦУП поставить посмотреть, но конечно все равно надо с тех. журнала начинать настройку и данные какие-то начать собирать. Я так понимаю визуализировать их потом можно где угодно, просто кроме ЦУПа раньше инструментов не было.

(24)(25) спасибо за информацию по книгам, обязательно почитаю!
33. savostin.alex 82 15.11.18 02:36 Сейчас в теме
(26)
Такое бывает при выключении процесса и передаче соединений вновь созданному.
28. akimych 227 11.10.18 14:24 Сейчас в теме
(23)
Я бы сказал, что консоль 1С поможет в большинстве таких случаях.
Если кто-то запустил перепроведение 1000 документов в середине дня, то в консоли надо смотреть на показатели "Memory Current" и "DBMS data", если они превышают пороговое значение (для нас ~5 ГБ для Memory Current), то явно пользователь что тяжелое запустил.


Есть планы вывести в Zabbix 3 пользователей с самыми большими значениями этих показателей и мониторить это.


Из недавнего юзер запустил Универсальный отчет по Бух. регистру без отбора (потом сказал, что забыл поставить отбор:-)). в итоге rphost набрал 55 ГБ, хорошо, что алерт сработал и мы успели убить эту сессию, иначе бы 1С свалился.
Прикрепленные файлы:
29. user612295_death4321 11.10.18 14:59 Сейчас в теме
(28) А как настройки кластера подобное пропустили?
30. akimych 227 11.10.18 15:28 Сейчас в теме
(29) мы не ставим ограничение по кол-ву памяти.
на мой взгляд, странно принудительно рестартовать prhost и отваливать все процессы, если какая-то сессия сожрала слишком много. Есть шанс успеть ее принудительно отключить и все остальные будут жить.
31. user612295_death4321 11.10.18 15:47 Сейчас в теме
(30) Насколько помню настройки кластера позволяют ограничить объем потребляемой памяти за один вызов, в этом случае не должно быть рестарта РП хоста, а будет попытка дропнуть проблемную сессию.
32. akimych 227 11.10.18 17:55 Сейчас в теме
(31) да точно, но что -то не хочется на проде экспериментировать.:-)
34. Sergey.Noskov 1375 17.11.18 19:20 Сейчас в теме
(30) падение всего кластера vs рестарт одного rphost. Причем во втором случае реально пострадают только те, кто в момент рестарта процесса выполнял код, остальные спокойно мигрируют на другой процесс.
ЗЫ но это КОРП лицуха
49. sbrain 15.01.21 16:15 Сейчас в теме
(9)
текущий потребляемый объем памяти в разрезе рп хостов.


Доброго Вам дня!
Можете подсказать как вы реализовали эту часть задачи?
Я автоматически обнаруживаю процессы на сервере, но при этом у меня всегда один rphost создается в zabbix ... хотя их штук 10 :)
2. akimych 227 06.10.18 18:22 Сейчас в теме
Добрый день, спасибо.

Мы в основном контролирую с помощью Заббикса нагрузку на серверах 1С и интеграционные очереди.

С помощью Заббикса мы нашли, какие наши регл. задания съедали по 10-15 ГБ памяти и были причиной падения rphost'а.
Сейчас у нас на показателе память rphost'а стоит триггер, которые присылает нотификацию, в случае превышения определенного порога.

На скриншоте с rphost'ом видна загрузка его в течении дня и это нормальный график для нас, если начинается отклонение, то где-то проблема.

Контролируя интеграционные очереди, мы видим, где у нас узкие места в интеграции и начинаем копать там. Также благодаря Забикксу мы точно можем спрогнозировать какое количество событий может 1С обработать за определенный период.

Я подумаю, какие еще примеры из практики по 1С можно добавить к статье.
d4rkmesa; AlexGroovy; eeeio; mityushov.vv; +4 Ответить
3. s22 19 06.10.18 21:14 Сейчас в теме
(2)
Я подумаю, какие еще примеры из практики по 1С можно добавить к статье.

Озвучьте весь список пожалуйста. ойек....

список и как достучаться до всего что есть.

Заранее спасибо.
6. mityushov.vv 249 07.10.18 11:08 Сейчас в теме
(2) Большое спасибо за ответ. Лучше бы конечно добавить весь перечень узких мест, механизмов и сервисов которые можно контролировать при помощи Zabbix.
Тогда статья бы получилось полной на все 100% и была бы полезна как разработчикам, админам и руководителям ИТ подразделений.
7. DrAku1a 1678 07.10.18 12:55 Сейчас в теме
Не описано - на каких версиях платформы 1С это будет работать (у меня в таком виде - не пропускает модератор).
HTTP-сервисы доступны с версии 8.3.5.1068. На более ранних версиях - нужно делать костыли или выкручиваться через web-сервисы.
14. akimych 227 07.10.18 21:57 Сейчас в теме
(7) ну почему же не описано ,есть такое:
в статье над кодом есть строка: Примеры кода 1С приложены в обработке к статье, код протестирован на платформе 1С 8.3.10.2669.
8. as 07.10.18 14:16 Сейчас в теме
Мы достаточно успешно используем шаблон к Zabbix:
https://github.com/bessonovevgen/srv-1c-zabbix-template
Его важным плюсом является работа через ras, благодаря чему он работает под linux\win.
JohnyDeath; deevil; zeegin; +3 Ответить
40. elite128 22.07.19 16:37 Сейчас в теме
(8)
у вас на 3 заббиксе? на 4 ругается на темплейт
10. tindir 07.10.18 18:49 Сейчас в теме
В продолжение глупых вопросов. Сколько кушает агент забикса? Вопрос к тому что есть глупый сервак на котором крутится все (скуль, агнты1с,лицензии) и пока иет согласование новых игрушек хочется подоткнуть мониторинг, причем желательно с максимальной задержкой в 3-5 секунд.
13. akimych 227 07.10.18 21:54 Сейчас в теме
(10) забирает он совсем не много: 8-10 MB ОП и 0.1 % от общей загрузки процессоров. Он не должен существенно грузит сервер. Но у нас сбор данных настроен от 30 до 60 секунд.
mityushov.vv; tindir; +2 Ответить
17. tindir 08.10.18 05:07 Сейчас в теме
(13) Ага, спасибо. На текущий момент серваки все виндовые и коллега одмин-1ц пользуется перфоманс манагером, который настроен только у него и когда нужно что-то где-то глянуть, то это прям головная боль =)))
11. zeegin 114 07.10.18 21:02 Сейчас в теме
Создать http сервис, который съест лицензию, чтобы по COM (на сервере, что не рекомендуется ни 1с ни майкросфтом) залезть на кластер? И это чтобы посчитать количество лицензий!
Используйте ras! Выше уже дали ссылку на готовый шаблон от тов. Бессонова.
12. akimych 227 07.10.18 21:49 Сейчас в теме
(11) Забавно, а ведь я даже не подумал об этом в таком ключе.
этот шаблон я видел. и про использование ras я думал, но не стал: http сервис проще и отрабатывает буквально за секунду и в общей массе не влияет на количество занятых лицензий; в 13 платформе появилась новая возможность Контроль потребления ресурсов и можно будет как-то автоматизировано собирать статистику с кластера - надо будет посмотреть на это.
16. zeegin 114 08.10.18 01:22 Сейчас в теме
(12) Ага
Для утилиты rac при выводе информации о сеансе реализованы свойства cpu-time-current, cpu-time-5min-last, cpu-time-total

Источник: http://downloads.v8.1c.ru/content//Platform/8_3_13_1549/1cv8upd_8_3_13_1549.htm#b5a30ffb-0b1f-11e8-a3f7-0050569f678a
18. Synoecium 777 08.10.18 07:49 Сейчас в теме
Хорошая статья, в избранное.
А что делает обработка, приложенная к статье?
20. akimych 227 08.10.18 16:56 Сейчас в теме
(18) Спасибо.
Обработка ничего не делает, в ней примеры кода получения кол-во лицензий (это есть в статье) и кол-ва сессий (это дополнительно).
35. Дмитрий74Чел 234 01.04.19 17:12 Сейчас в теме
Добрый день, коллеги.

Вопрос автору:
Если все-таки отладчик покажет, что строка возврата верная, то скорее всего запрос внутри 1С отрабатывает, более 20 секунд и этом случае Zabbix считает, что ответа нет и выдает ошибку, описанную выше.
- не нашел выше упоминание ошибки.

Вопросы всем: по статье (вариант "сбор данных через REST интерфейс") сделал 3 items, но все время они "отваливаются" - в списке "Элементы данных" напротив каждого стоит восклицательный знак с пояснением "ZBX_TCP_READ() timed out". Интервал обновления items стоит 60s, и при проверке через браузер вроде-бы не замечаю долгого ответа (более чем 12-18сек). Как сделать так чтоб эта ошибка не прерывала сбор данных?

Еще в примере автора есть формирование ответа в виде json-файла с несколькими показателями сразу. Как можно настроить zabbix так, чтобы он из одного такого ответа http-сервиса записывал несколько items?
36. akimych 227 02.04.19 11:30 Сейчас в теме
(35) Добрый день

Ошибка такого свойства "Value "" of type "string" is not suitable for value type "Numeric (unsigned)". Поправил в статье :-).


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

Еще в примере автора есть формирование ответа в виде json-файла с несколькими показателями сразу. Как можно настроить zabbix так, чтобы он из одного такого ответа http-сервиса записывал несколько items?
- а это описание здесь https://infostart.ru/public/546523/
37. Дмитрий74Чел 234 02.04.19 11:56 Сейчас в теме
(36) Скриншоты прикрепил.
А про сбор сразу всех - ковыряю зависимые items
Прикрепленные файлы:
38. akimych 227 03.04.19 11:34 Сейчас в теме
(37) текст ключа корректен. Значит дело не в настройках item.
тут надо похоже глубже копать, в конфиге Zabbix Agentd. Тут мне сложно помочь, у нас этим отдельная служба занимается.
39. Дмитрий74Чел 234 03.04.19 14:04 Сейчас в теме
(38) в конфиге сервера zabbix стоит timeout 4 сек. А 1С ответ дает часто 10 сек. Нач.админов менять timeout не хочет, так что переходим на план Б (546523).
50. ZhakeKZ 02.02.22 13:46 Сейчас в теме
Доброе время суток,

Для управляемых форм есть версия обработки ?
У меня платформа - 8.3.18.1334
51. akimych 227 02.02.22 18:22 Сейчас в теме
(50)
Добрый вечер, обработка содержит только примеры кода. Сама по себе она не рабочая.
53. ZhakeKZ 10.03.22 13:39 Сейчас в теме
Доброе время суток !

Код проверил через внешний отчет на сервере, работает.
Из кластера получил данные.

А вот из http сервиса данная ошибка возникает:
Ошибка при вызове конструктора (COMОбъект)

Как решили ошибку ?
54. ZhakeKZ 11.03.22 08:38 Сейчас в теме
Сам решил, выдал права COM объекту для пользователя: USR1CV8.
55. maksa2005 528 12.05.23 15:06 Сейчас в теме
Оставьте свое сообщение