К сожалению я поменял место работы и сейчас уже нет под рукой сервера 1С с хасп ключом и проверить/тестировать не на чем.
Ad Widget
Collapse
Мониторинг netHASP
Collapse
X
-
Понял. С командой разобрался.
При использовании команды теперь выводится кол-во пользователей ссылка.
Далее я сделал такой батник
А в конфиг агента добавилCode:@echo off C:\zabbix\hasp\HaspMonitor.exe "SCAN SERVERS" "GET LOGINS,HS,ID=1492586,MA=1" | grep -coP "TIMEOUT=\d\d,|TIMEOUT=\d\d\d,"
В zabbix добавил элемент данных ссылкаCode:UserParameter=HaspUsed,C:\Zabbix\hasp\hasp_used.bat
Но данные не поступают. Я хотел добиться построения графика по полученным данным для отслеживания количества пользователей.Comment
-
В связи с проходящим месячником PowerShell`a я решил потеребить старушку и изобразил треш и угар в формате .ps1
От grep-а и прочих sed-ов избавился. Нужен только HaspMonitor.exe, hsmon.dll, nethasp.ini. Способа подгрузить нужную функцию из .dll напрямую в Posh пока не вижу, так что работа скрипта нетороплива.
LLD серверов/слотов присутствует, проблема со сменой ServerID обойдена, шаблон нарисован. Подключается стандартно - через UserParameter.
Пользователей (GET LOGINS) считать пока смысла не вижу, их кол-во вполне себе коррелирует с количеством выданных лицензий в SLOTINFO. Если не так - подправить не долго.
Работает PowerShell, конечно, с мегапожиранием процессора и памяти, как и всё от Microsoft
, но если не увлекаться сбором данных, то все OK.
Забираем тутLast edited by sadman; 13-02-2016, 09:11.Comment
-
Как писали в связанных с мониторингом HASP постах - в процессе наблюдается мощная утечка памяти. Проблема связана с эксплуатацией древних драйверов HASP от Aladdin-а. После их замены на распоследние драйвера от SafeNet Inc. (например 7.41.0.0 от 17.09.2015) утечка должна прекратиться. Но ключи будут называться "SafeNet Inc. {HASP | USB | Sentinel HL} Key".
Для определения статуса (самое интересное, что нашел) самих ключей (актуально при прокидывании их через сеть с помощью USB/IP, например) написал usbhasp.ps1. В реальности этот скрипт закидывает в Zabbix по LLD всё, что найдет в Win32_USBControllerDevice, так что необходимо отсеивать ненужные устройства фильтром.
Забирать там же: https://github.com/zbx-sadman/haspComment
-
Добил NetHASP мониторинг.
Теперь нет необходимости таскать за собой HaspMonitor.exe, скрипт самостоятельно компилирует для hsmon.dll .NET враппер в том случае, если не нашел его. За счет дерганья нативного кода скорость получения данных при сложных запросах увеличилась.
Одна заморочка - нужно пускать из под 32-битного экземпляра PowerShell-a (на 64-битной системе работает - проверено).
Дискаверит всё, до чего может дотянуться: сервера, модули, слоты, логины. Полезных данных во всём этом оказалось немного, но то, что нашел - добавил в темплейт.
Все тут с кратким руководством: https://github.com/zbx-sadman/haspComment
-
К сожалению даже не представляю, как это может выглядеть. Но я бы на вашем месте подискаверил все объекты (особенное внимание уделил Modules и Slots) и попытался вывести какую-нибудь логическую зависимость между лицензиями и конфигурациями.Comment
-
Для новичка Zabbix сложно понять что такое автодискавери и как это сделать, для начала собирайте информацию как можете (bat, vbs, PowerShell и тд) и кидайте sender'ом на zabbix сервер: https://www.zabbix.com/documentation...oncepts/senderComment
-
К сожалению, slots и slotinfo выдают одинаковую информацию: по всем слотам, несмотря на указанный параметр "slot=14":
"get slotinfo,id=2087921,ma=1,slot=14".
Modules и moduleinfo выдают только общее количество занятых лицензий.Comment
-
Comment
-
Решение в лоб: воткните ключи для разных конфигураций в разные хосты
Это если не найдете другого способа ))Comment
-
У меня, в nethasp.ps1, отбор по слотам делается. Вроде бы. Но ключик у нас самый простой, поэтому полноценных испытаний я не проводил.
А так, вообще, логика прослеживается и вопрос только в отборе или вообще никак отдельные лицензии на конфигурации себя не проявляют? Может там, всё же общий пул лицензий, а делится уже всё на уровне ПО, а не HASP?Comment
-
При запросе "get slotinfo,id=2087921,ma=1,slot=14" получаем:У меня, в nethasp.ps1, отбор по слотам делается. Вроде бы. Но ключик у нас самый простой, поэтому полноценных испытаний я не проводил.
А так, вообще, логика прослеживается и вопрос только в отборе или вообще никак отдельные лицензии на конфигурации себя не проявляют?
Может там, всё же общий пул лицензий, а делится уже всё на уровне ПО, а не hasp?
Hs,id=2087921,ma="1",slot=1,curr=2,max=11,actleft=-1
hs,id=2087921,ma="1",slot=6,curr=1,max=1,actleft=-1
hs,id=2087921,ma="1",slot=7,curr=1,max=1,actleft=-1
hs,id=2087921,ma="1",slot=13,curr=3,max=20,actleft =-1
hs,id=2087921,ma="1",slot=14,curr=58,max=61,actlef t=-1
hs,id=2087921,ma="1",slot=15,curr=44,max=71,actlef t=-1
При запросе "get slots,id=2087921,ma=1" получаем то же самое.
При этом запрос "get logins,hs,id=2087921,ma=1,slot=14" показывает данные по использованным лицензиям только по slot=14.Comment
-
Ну да, что-то я помню такое, что сама mightyfunc() ложила на входные параметры.При запросе "get slotinfo,id=2087921,ma=1,slot=14" получаем:
Hs,id=2087921,ma="1",slot=1,curr=2,max=11,actleft=-1
hs,id=2087921,ma="1",slot=6,curr=1,max=1,actleft=-1
hs,id=2087921,ma="1",slot=7,curr=1,max=1,actleft=-1
hs,id=2087921,ma="1",slot=13,curr=3,max=20,actleft =-1
hs,id=2087921,ma="1",slot=14,curr=58,max=61,actlef t=-1
hs,id=2087921,ma="1",slot=15,curr=44,max=71,actlef t=-1
При запросе "get slots,id=2087921,ma=1" получаем то же самое.
При этом запрос "get logins,hs,id=2087921,ma=1,slot=14" показывает данные по использованным лицензиям только по slot=14.
Т.е., в сущности, нужно по слоту отбирать. Т.е. вот так можно взять текущие лицензии слота 15:
nethasp.ps1 -Action "Get" -Object "Slot" -Key "CURR" -ServerId "stuffserver.contoso.com" -SlotId "15" -ErrorCode "-127"
Качайте, ставьте: https://github.com/zbx-sadman/haspComment
-
Спасибо, получилось получить информацию по отдельному слоту.Ну да, что-то я помню такое, что сама mightyfunc() ложила на входные параметры.
Т.е., в сущности, нужно по слоту отбирать. Т.е. вот так можно взять текущие лицензии слота 15:
nethasp.ps1 -action "get" -object "slot" -key "curr" -serverid "stuffserver.contoso.com" -slotid "15" -errorcode "-127"
Качайте, ставьте: https://github.com/zbx-sadman/haspComment
Comment