1.
user917868
18.10.22 19:31
Сейчас в теме
Есть ли возможность отследить в технологическом журнале событие - обновление конфигурации с реструктуризацией базы данных, не динамическое.
В базе крутится HTTP сервис, взаимодействующий с IIS, но при обновлении конфигурации (не динамической, когда требуется монопольный доступ к базе), сервис свою работу не возобновляет, приходиться рестартовать агент 1С.
Это конечно ошибка платформы, но ее не исправляют, уже на протяжении нескольких лет.
Хотелось бы реализовать автоматическую перезагрузку агента сразу после обновлении конфигурации.
Идея такая, самописный windows сервис будет слушать технологический журнал, настроенный на соответствующее событие, причем обязательно привязано к определенной базе, и увидев его рестартовать агент 1С.
Пока не понятно какое событие слушать, я пробовал, одну из комбинаций см.ниже
<?xml version="1.0" encoding="UTF-8"?>
<config xmlns="http://v8.1c.ru/v8/tech-log">
<system level="info"/>
<log location="D:\Logs\Restructuring" history="1">
<property name="all"/>
<event>
<ne property="Name" value=""/>
</event> -->
<event>
<eq property="Name" value="DBMSSQL"/>
</event>
<event>
<eq property="Name" value="SDBL"/>
<eq property="DataBase" value="InfoBase10"/>
<!-- <like property="Sdbl" value="%CREATE NEW GLOBAL GENERATION%"/>
</event>
<event>
<eq property="ProcessName" value="db_test"/>
</event> -->
<event>
<eq property="EventType" value="Workflow"/>
</event>
<event>
<eq property="EventType" value="Analysis"/>
</event>
<event>
<eq property="EventType" value="Restructuring"/>
</event> -->
</log>
<dump create="false"/>
</config>
Комбинация Workflow, Analysis, Restructuring не помогает, поскольку нет привязки к базе, события SDBL к базе привязываются, но там сложно понять, когда изменяется структура базы, когда нет.
Думал в сторону поиска события, когда база в монопольный доступ захватывается, но ничего не нашел.
Какие варианты еще можно посмотреть?