Запуск 1С 8.* от имени службы с мониторингом состояния и перезапуском

13.10.14

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

Использование srvany.exe и скрипта на wsh для запуска 1с 8 в качестве службы и ее мониторинга.

Файлы

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

Наименование Скачано Купить файл
1C_Service_v2.rar
.rar 32,72Kb
28 2 500 руб. Купить

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

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

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

Вы можете заказать платную доработку или адаптацию этой разработки под вашу конфигурацию на «Бирже заказов».

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.

Введение

Несмотря на то, что в 1с 8 есть прекрасный механизм регламентных заданий, полностью автоматически он работает только в клиент-серверном варианте, а в файловом варианте 8.2 нужно запускать отдельный сеанс для работы регламентых заданий. Также иногда возникает необходимость запустить какую-то  обработку в режиме 1с Предприятия в автоматическом режиме (Пример такой обработки система Моби-С которая свой сервер реализует в  виде com-обьекта запущенного из обработки). Лучшим вариантом запуска в случаях как мне кажется, является запуск 1С от имени службы.  Думаю, плюсы такого решения всем понятны. Стандартный механизм запуска 1С как службы через использование утилиты srvany.exe обладает следующими недостатками:
-если 1с не запустилась при старте службы то уже и не запустится,
- нельзя периодически запускать 1с,
-если 1с зависла srvany.exe ничего не предпримет для перезапуска 1С Предприятия
 
Решение
Для  решения всех перечисленных проблем был написан скрип на vbscript который берет на себя всю работу по запуску и контролю за работой запущенного экземпляра 1С. Сам метод запуска службы не изменился это все тот-же srvany.exe только теперь он запускает не 1С, а скрипт который уже занимается запуском 1с исходя из своих настроек указанных в специальном файле.
Что может данный скрипт:
1. Запускать и перезапускать 1с с указанным в настройках скрипта интервалом.
2. Мониторить запущенный скриптом экземпляр 1С. Опрашивая через WMI раз в минуту значение счетчиков производительности Windows для процесса с PID запущенного экземпляра 1C и в случае если в течении пяти минут замеры производительности не изменились принимается решение что экземпляр 1C зависал запущенный процесс 1С убивается. В случае если положиться на счетчики производительности нельзя, можно настроить мониторинг даты/времени изменения спец.файла pulse.txt и также если он не изменялся (дополнительно к счетчикам производительности) то процесс 1С будет убит.  Конечно  дату/время изменения спец.файла pulse.txt запущенная копия 1С должна обновлять сам периодически иначе толку от такой проверки не будет.
3. Мониторить в определенном в настройках скрипта месте наличие файла fclose и если он найден то завершать работу запущенного экземпляра 1С.
4.  Мониторить в определенном в настройках скрипта месте наличие файла fkill и если он найден то завершать работу запущенного экземпляра 1С и больше не запускать 1С пока файл fkill не будет удален. Отличие от файла fclose в том, что файл fclose удаляется после завершения процесса 1С  т.е. с помощью него можно принудительно перезапустить процесс 1С
5. Мониторить в определенном в настройках скрипта месте наличие файла fstop и если он найден  больше не запускать 1С пока файл fstop не будет удален.
6. В случае если 1с будет зависать при трех последовательных запусках, скрипт может отправить сообщение на почту системного администратора или программиста.


 Установка службы

 1. Папку из архива поместить в корень диска. (Работу с папками в пути к которым есть пробелы не проверял, поэтому по возможности не используйте папки с пробелами)
2.  Под администратором запустить командный сценарий InstallSrv.cmd, который установит службу в системе
3.  Зайти в Administrative Tools->Component Services раздел DCOM Config найти объект  Microsoft WBEM Unsecured Apartment отрыть ее свойства и на вкладке Security дать право для типа входа СЛУЖБА на Local Launch и Local Activation. Это очень важно т.к. без этой настройки скрипт не сможет мониторить корректное завершение процесса 1С.
4. Отредактировать настройки скрипта в файле SrvConfig.ini.
5. Если  необходимо изменить интервал перезапуска 1С. Для этого отредактируйте строку Const RestartPauseSec = 60 в файле скрипта 1C_srv.vbs
6. Заполнить в файле Operators.ini данные для отправки уведомлений о зависании 1С по электронной почте.
Все служба готова к работе.
Можно добавлять неограниченное количество служб в систему главное, чтобы они были в разных папках и в случае если у Вас Windows 32-х битная, то разные службы должны запускаться от разных пользователей Windows.
Все необходимые для работы файлы в архиве. Спасибо за внимание.

 

Небольшое обновление. В первой версии скрипта была допущена ошибка, приводящая к тому, что 1С больше не запускалась в случае неудачной попытки запуска процесса 1С.

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

скрипт служба мониторинг запуск

См. также

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

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

31720 руб.

27.03.2025    92451    69    44    

77

Журнал регистрации Мониторинг Системный администратор Разработчик 1С 8.3 Абонемент ($m)

Мониторинг журнала регистрации - расширение, которое визуализирует ошибки из журнала регистрации в разрезе приложений. Расширение позволит выявить всплеск ошибок, подсветит динамические обновления и покажет картину рабочего процесса.

1 стартмани

07.11.2026    493    3    mrcamomile    8    

4

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

Шесть блоков технического отчёта по кластеру 1С: площадка, процессы, нагрузка, диск, копии, журналы за названный период — и открытые вопросы. Цифры из двух реальных прогонов на Windows Server 2019 (srvinfo 119 ГБ, 444 бэкапа и ни одного по нужной базе, висящий сеанс с лицензией). Что собирать, чего не делать, и где агент ошибся.

02.11.2026    379    netbka    1    

1

Журнал регистрации Инструменты администратора БД Технологический журнал Мониторинг Системный администратор Разработчик 1С 8.3 1С 8.5 1С:Управление торговлей 11 Абонемент ($m)

Расширение для любой конфигурации на БСП: замеры, ошибки, задания, обмены, блокировки, диски, сеансы и техжурнал в одном окне, с уведомлениями в Telegram и на почту.

3 стартмани

19.10.2026    528    6    windsurf    0    

3

Мониторинг Системный администратор Абонемент ($m)

Небольшая программа для рабочих мест и серверов: следит за выбранными службами Windows (сервер 1С, СУБД, УТМ, лицензии) и сама запускает их, если служба остановилась или зависла. Полная редакция вдобавок не даёт пользователям запускать программы не из списка разрешённых или из списка запрещённых.

1 стартмани

08.10.2026    464    4    IronCAT09    0    

1

Мониторинг Обновление 1С Системный администратор Разработчик 1С 8.3 Бесплатно (free)

Отложенное обновление идёт третий день, штатная форма пишет "Выполнено: N из M", и непонятно, ждать или разбираться. Проверьте у себя: в БСП 3.1 почасовая история обработанных объектов, время завершения каждого обработчика, попытки и текст ошибки уже лежат в регистрах, не хватает только деления. Разобрал, где это хранится, как считать прогноз двумя скоростями (по объектам и по обработчикам) и как найти обработчик, который держит очередь, в том числе когда БСП записала ему "зацикливание", а держала его блокировка. Проверено на копии УТ 11.5 с 215 настоящими обработчиками типовой: очередь шла 4 часа, прогноз за 2 часа до конца ошибся на 5 минут. В конце обработка, которая отвечает одной строкой.

30.09.2026    903    nedomolkov.ivan    0    

1

Мониторинг Обновление 1С Системный администратор Разработчик 1С 8.3 Абонемент ($m)

Внешняя обработка одной строкой говорит, идёт отложенное обновление или стоит, когда закончится и какой обработчик держит очередь. Скорость по почасовой истории БСП и по завершённым обработчикам, остаток по плану обмена обновления, виновник по регистру обработчиков и журналу регистрации. Выгрузка состояния в Markdown для нейросети. Только чтение. Нужен регистр "Обработчики обновления" из свежих версий БСП 3.1 (проверено на УТ 11.5.22).

10 стартмани

30.09.2026    564    0    nedomolkov.ivan    0    

0

Мониторинг Системный администратор Разработчик 1С 8.3 Бесплатно (free)

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

30.09.2026    1084    nedomolkov.ivan    0    

1
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. vec435 17 15.10.14 12:19 Сейчас в теме
как вариант - запуск 1С из ярлыка с параметром /Execute в который передаешь полный путь к обработке
2. dumsik 36 16.10.14 03:34 Сейчас в теме
(1) vec435, это конечно хорошо но проблему с перезапуском 1с в случае зависания это никак не решит. Да и запустить ярлык часто просто некому (допустим комп ночью перезагрузился и т.д.). Помещение ярлыка в автозагрузку не предлагать :)
3. hackoff 11 08.06.18 06:15 Сейчас в теме
Спасибо огромное скрипт пригодился. Правда пришлось убрать кусок. С ним не работало.
'If bAppDBType=0 Or Not Len(bAppDBType)>0 Then
' bAppDBType=0 'возможно небыло значения в файле настроек тогда считаем базу файловой
' If Not objFSO.FileExists(sAppDBAdress) Then
' SaveEventToLog "Каталог БД " & sAppDBAdress & " не найден !"
' WScript.Quit 1
' End if
'Else
' bAppDBType=1 'на всякий случай любые даннные отличные от нуля это будет серверная база
'End if
4. malinko.vasiliy 7 03.08.22 13:01 Сейчас в теме
добры день. Скрипт под пользователем запускается, как служба нет. Сделал такие настройки. то не так, подскажите?
Прикрепленные файлы:
5. malinko.vasiliy 7 03.08.22 13:04 Сейчас в теме
Не хотите добавить в параметрах скрипта команду запуска внешней обработки? Тот же моби-с было бы удобно запускать сразу.
Для отправки сообщения требуется регистрация/авторизация