1С web консоль управления сеансами

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

Прежде чем перейти к статье, хочу вам представить, экономическую онлайн игру Brave Knights, в которой вы можете играть и зарабатывать. Регистируйтесь, играйте и зарабатывайте!

Всем доброго вторника. Началась неделя распродаж в сфере ритейл и наверное не только. А 'то значит что что уже никакие серьезные изменения в проде не делаются или еще не делались и будут выполнятся после распродаж, и на фоне этого появилось время поделится с вами неким инструментом.

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

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

В основе его лежит RAC, те кто работает вплотную с 1С знает что это такое. Далее мы его используем в паре скриптов PHP, ну а дальше всего лишь CSS, NGINX, PHP-FPM.

Весь инструмент упакован в контейнеры NGINX и PHP который build через docker-compose и через него и стартует. и все инструмент готов. Исходники можно глянуть в моем хабе оттуда же все скачать подправить под себя и пользоваться.

Кратко о том что нужно править.

Это конечно же доменное имя по которому вы будете заходить на веб, но можно и вовсе не править а заходить по адресу на котором у вас висят контейнеры.

Так ж необходимо поправить index.php, а именно ID кластера 1С и ID базы в кластере.

    <form method="POST">
            <input name="DB" id="DB" value="ид базы" type="hidden" readonly >
            <input name="SRV" id="SRV" value="адрес или имя сервера" type="hidden" readonly >
            <input name="CL" id="CL" value="ид кластера" type="hidden" readonly >
            <input type="submit" name="DBSELECT" value="имя которое вы бы хотели видеть" style="width:120px;height:25px"/>
        </form>
    <form method="POST">
            <input name="SU" id="SU" value="" style="width:220px;height:25px" placeholder="тут вводить только session" >
            <input name="SRV" id="SRV" value="иадрес или имя сервера" type="hidden" readonly >
            <input name="CL" id="CL" value="ид кластера" type="hidden" readonly >
            <input type="submit" name="USRSELECT" value="DEL session" style="width:150px;height:25px"/>
        </form>    

После этого делать билд всего и запуск. И уже для одной из баз у вас будет доступ.

В контейнере использую версию 1с/RAC 8.3.12.1567 и этого достаточно. RAS тот что стоит рядом с сервером 1С может быть отличен от версии в контейнере и это не страшно так все работает. главное что б RAS совпадал с версией на сервере с 1С.

Чуть ниже скрипт создания службы для RAS, которую вам нужно установить на вашем 1Сном сере. нужно что б он был в диапазоне портов сервера службы 1с и был той же версии. В примере так же 8.3.12.1567 на стандартном порту.

@echo off
set SrvUserName=.\USR1C_RAS
set SrvUserPwd="1111"
set CtrlPort=1540
set AgentName=localhost
set RASPort=1545
set SrvcName="1C:Enterprise 8.3 Remote Server"
set BinPath="\"C:\Program Files\1cv8\8.3.12.1567\bin\ras.exe\" cluster --service --port=%RASPort% %AgentName%:%CtrlPort%"
set Desctiption="1C:Enterprise 8.3 Remote Server"
sc stop %SrvcName%
sc delete %SrvcName%
sc create %SrvcName% binPath= %BinPath% start= auto obj= %SrvUserName% password= %SrvUserPwd% displayname= %Desctiption%

Вот и все. Нужно вносить хотфиксы в прод, получилось не так много времени как ожидалось)

Пользуйтесь, комментируйте, может кто то поправит мой любительский html/php/css)

Источник: https://habr.com/ru/post/590911/


Интересные статьи

Интересные статьи

В продолжение статьи о классическом PRINCE2 по запросу из комментариев попробовала сравнить ключевые методики управления проектами. Надеюсь, что получилось что-то полезно...
Всем привет! Меня зовут Влад Кошкин, я Java-разработчик в одной из команд направления Warehouse Management System (WMS) в Lamoda. Помимо интернет-магазина, у нас есть собственный склад, г...
Оригинал Defining Metrics for Change Management By Stuart Rance | Originally published on April 28, 2014 in ITIL | Updated on September 12, 2017Начало цикла из 3-х с...
Существует традиция, долго и дорого разрабатывать интернет-магазин. :-) Лакировать все детали, придумывать, внедрять и полировать «фишечки» и делать это все до открытия магазина.
В общем случае с помощью shell комманды можно получить любую метрику, без написания кода и интеграций. А значит в консоли должен быть простой и удобный инструмент для визуализации. Наблюдение ...