FAIL (the browser should render some flash content, not this).

 

“...Если вы будете работать для настоящего, то Ваша работа выйдет ничтожной; надо работать имея в виду только будущее...”


Чехов Антон Павлович

 


Исходная ситуация.  Начало рабочего дня (6, 7, 8 , 9 часов). Основная масса сотрудников появляется на рабочих местах, загружаются компы, загружаются базы, менеджеры жаждут выписать новые счета, склад сформировать отгрузки, клиенты получить документы и отнести презренное золото в кассу и тд. Стандартное начало рабочего дня. И вдруг "FAIL"... Выясняется, что часть сотрудников (а может, и все) в БД зайти не могут

Кто то начинает сразу в тех. поддержку звонить, кто то идет пить кофе и перекурить , предполагая что оно все само разрулится, кто то еще 2 часа общается с клиентом по телефону и только потом вспоминает что была какая то проблема. Как итог – зачастую факт что есть проблема с доступом в БД в ИТ узнают последними.  Начинается поиск причин и попыток устранения сбоев. Хорошо если удается быстро решить – 5 мин (свич подвис), но бывает время проходит поболее ….   Час, три, сутки (упс)… Сотрудники нервничают (работа хоть и не волк , но за невыполнение планов можно и огрести), клиенты нервничают (понятно почему), телефон в ИТ раскален (ну скажите хоть примерно когда ?), руководство косится и порывается получше наточить шашку (а может уже и дробовик заряжает)… 

Уважаемые коллеги, предположу, что подобные ситуации, в той или иной интерпретации были у многих . Были и у нас. Причины здесь самые разнообразные, подвисшее оборудование (тот же свич), провайдер интернет отключил в удаленном офисе (не проплатили), циска погорела (а SmartNet … увы), в конце концов ключи погорели.

Анализ подобных ситуаций показал, что если бы об имеющейся проблеме (коннект к БД) было бы известно заранее (сбой произошел например ночью, в 2-00, а в 6-00 кто то бы получил alarm о сбое) , то часть проблем можно было бы решить  не доводя до состояния ”GLOBAL FAIL”, а по части как минимум попытаться смягчить последствия…..

Возникла идея – может в указанный день (дата, время, срок, 3 зеленых свистка) попытаться автоматически проэмулировать вход сотрудника в БД ?

Изначально инструмент виделся достаточно простым . По шедулеру грузим БД 1С, по списку через ОЛЮ или СОМ пытаемся соединиться с другими БД. Есть соединение- ну и славненько, нет соединения – смс сообщение админам (тех поддержке) через интернет,  типа “тут проблемка с БД ХХХ, имей ввиду….”. Но если инет упал, или база не загрузилась (проблема с ключами, например) – опять же fail.

Поэтому возникла идея такой вот программки AdminDB_Alarm (далее Alarm). Написанная на чем угодно (кроме 1С) и не использующая для алертов инет.

Что получилось можно увидеть в архиве и на скринах.

Часть 1. Alarm грузим и по шедулеру , периодически (настраивается) проверяем коннект к списку БД (настраивается). В случае неудачной попытки идет рассылка смс сообщений группе администраторов (настраивается). Рассылка смс сообщений идет через GSM модем. Сам сервис поднят на точках, наиболее критичных для бизнеса.

  Итог(часть 1).

    -    Alarm работает, от нескольких засад описанных выше уже спасал. SMS-ки валятся толпами (в принципе как настроить и распределить задачи).

    - Присутствует оповещение не только о неудачном коннекте к БД, но и о удачном . Как факт что , например, в удаленном офисе мониторинг доступности БД работает исправно и особо продвинутый сотрудник не приделал ноги модему.

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

- Соединение с БД идет через COM. При создании COMОбъект("V82.ComConnector") создается Com объект 1С версии которая была установлена на компьютер последней. И соответственно может возникает ошибка при подключении к одному из серверов 1С из за разных версий.  Кто может подсказать – как создавать ком объект нужной версии – буду благодарен. У себя проблему решил унификацией релизов.

 

Часть 2. Реализовав такой  функционал встал вопрос : а может в таком случае  GSM модем использовать не только для алертов по коннекту к БД, но и вообще для рассылки SMS сообщений ? Слегка допилил ….

Итог(часть 2).

- В сети расшарена папка для формирования файлов исходящих SMS сообщений. Пример такого файла можно посмотреть в прилагаемом архиве (*.sms, по сути, текстовый файл с 3-мя строками). Alarm периодически (настраивается)  мониторит данную папку , и в случае нахождения файла требуемого формата формирует исходящее SMS сообщения.

- Обращаю внимание, что при такой реализации в принципе все равно, откуда будет сформировано исходящее SMS сообщение. 1С 6/7/8 хоть 9 , хоть эксель с фотошопом, хоть сварочный аппарат. Главное что бы была воз-ть по некому событию по указанному пути сформировать файл требуемого формата.

- Мы применяем данный функционал для:

1.  оповещения части клиентов  (VIP)о готовности заказов (состояния заказов),  сообщения формируются из разных БД 1С.

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

3. Часть производственного оборудования (ПО) так же формирует SMS сообщения сервис -инженерам о сбоях.(тут правда цепочка несколько длиннее, тк лог файл оборудования нужно предварительно проанализировать и при необходимости сгенерить sms файл)

 

Итог (общий)

- Фактически получился центр SMS рассылок. Первичная задача по проверке коннекта к БД отошла на второй план (по востребованности).

- Стоимость сервиса получается 2-3 тыс. руб. в месяц (внашем случае. Складывается из стоимости исходящих смс сообщений , соот-но оператор, тарифный план и пр.

- Коллеги, широкого тестирования программе не делалось. Тестировалось и отлаживалось на том, что есть, а именно Win7 32 (SP+ все обновления, лицензия), GSM модем от мегафон (Huawei  173), железо свежее, 1C 8.2.14.533 (537) . Присутствует воз-ть подгрузить другой драйвер модема (не использовать авто определение) – корректность не проверялось.

- В краш тесте 50 sms сообщений ушло за 2 мин. 20 сек.  В среднем 1 sms – 3 сек.

- Да простят меня коллеги, в выложенной версии кол-во исходящих sms сообщений ограниченно :  не более20 шт. в час. Для большинства текущих задач этого достаточно. Ибо Stop Spam.

- В принципе была идея прикрутить еще и прем sms сообщений и по синтаксису выполнять команды, но пока руки не дошли (да и востребовано ли ?).

- В архиве лежит простенький faq со скринами.

- Программа абсолютно бесплатна. Распространяется по принципу “AS IS” (как есть).

- Вопросы, предложения по работе программы высылать на support@dm-soft.ru.