В один прекрасный момент у пользователей возникла проблема с запуском 1С, постоянно кому-то не хватало лицензий.
Решил быстро написать конфигурацию для получения сведений о лицензиях в сервера 1С Предприятия, чтобы посмотреть что там творится. После изобретения велосипеда, оказалось, что я не первый и уже есть похожие разработки, вот и вот. Ну да ладно, надеюсь и моя поделка кому-нибудь приходится.
Решаемые задачи:
- Получение и накопление данных о лиценциях с с сервера 1С Предприятия
- Построение отчетов по текущим данным.
- Построение графиков по динамике использования ключей.
Особенности:
К сожалению, сервер 1С ничего не знает о ключе, кроме его серии и максимальном количестве лицензий. Хотя может и знает, но делиться этой информацией не хочет. Но суть в том, что если у вас два ключа H4 NET50 ORGL8, то невозможно отличить один от другого. Поэтому информация по ключам одинаковой серии будет суммироваться.
Использование:
Получать информацию можно вручную, а можно настроить периодический опрос сервера через заданные промежутки времени. Фоновые задания не делал, особой необходимости в них не было.
Что дальше?
При желании можно получать информацию о начала работы каждого пользователя, продолжительности работы и активности (самые частые перезапуски и количество запущенных приложений)
К файловому варианту можно как-нибудь прикрутить такое решение?
(1) TrinitronOTV, Нет, такое только в клиент-серверном варианте работы
Интересно. Но невозможность выяснить, с какого именно ключа получена лицензия, очень снижает практическую ценность данной разработки. в принципе, частично можно эту проблему решить, если каким-то образом получать информацию от Nethasp монитора, но полного решения проблемы видимо не существует…
(3) genayo, да, этот момент очень огорчает. В любом случае эта разработка помогла увидеть какие пользователи на каких ключах чаще всего «сидят» и распределить их с помощью настройки nhsrv.ini и nethasp.ini
Нажимаю Получить данные, успешно получаю. Ставлю интервал 10, нажимаю Начать сброс статистики… В итоге падает с ошибкой
21.04.2015 11:21:17
Ошибка работы сеанса
Ошибка при выполнении запроса GET к ресурсу /e1cib/cmi/commands:
по причине:
Сеанс отсутствует или удален
ID=1ac5f622-0f0c-427e-90c1-998cb43c2566, File=srcRMngrCalls.cpp(309)
(5) efin, с таким не сталкивался, проверю. Иногда бывает, что программа просто вылетает при обращении к элементам массива, полученным через GetInfoBaseSessions. Причем не генерируется никаких исключение, просто закрывается 1С-ка и все.
пишет «Не удалось получить данные об используемых лицензиях (см. журнал регистрации)!»
вариант клиент серверный указал сервер и авторизацию к нему…
что сделать чтобы заработало????
(7) Lesha1C, а что написано в журнале регистрации?
Работает ли данная разработка с программными ключами, активированными на сервере?
Вот еще проМониторинг ключей защиты HASP
Прекрасная наработка!
http://infostart.ru/public/19502/
Взял за основу.
Докрутил опрос всех серверов и экспорт отчета в html по расписанию.
Позаимствовав механику этого отчета, можно будет уточнить статистику по аппаратным ключам.
В общем, идей — ворох.
Если будет интересен результат — поделюсь.
ой, выше сослались уже на обработку
(8) у меня такая же ситуация — в журнале регистрации написано: «{ОбщийМодуль.РаботаССервером.Модуль(14)}: Ошибка при вызове конструктора (СОМОбъект): -214722116410×80040154): Class nol registered «
выдает ошибку
{ОбщийМодуль.РаботаССервером.Модуль(14)}: Ошибка при вызове конструктора (COMОбъект): -2147221005(0x800401F3): Недопустимая строка с указанием класса
платформа 8.3.6.2204
(14) T0lick, какая версия коннектора стоит в настройках программы?
8.3. стоит. Другие тоже пробовал, результат один
(16) T0lick, попробуйте вручную зарегистрировать библиотеку comcntr.dll из папки bin текущей версии 1С-Предприятия с помощью команды regsvr
Отлично! Заработало после регистрации comcntr.dll
Отлично!
Сразу взлетела. Поставил файлово, указал сервер и сразу начал сбор статитстики.
Остальные публикации по этой теме тоже использовал Некоторые показывают только моментальные снимки, некоторые устарели, одну не смог сразу запустить, но уже и не нужно.