slothfk / 1c_zabbix_template_ce

Шаблон Zabbix для мониторинга кластера серверов 1С Предприятия 8.3
MIT License
151 stars 53 forks source link

Ошибки при подсчете лицензий #133

Open zeegin opened 6 months ago

zeegin commented 6 months ago

image Есть три сеанса Два взяли лицензию из HASP ключа, один из программной лицензии.

файл 20240118205128.lic

KrIySaQI1...

Регистрационный номер: 81*****988G0
Тип лицензии: Клиентская лицензия
Номер продукта: 0000000000010
Наименование продукта: 1С Предприятие 8. Лицензия на 10 рабочих мест (программная защита)
Дата производства: 14.11.2018 00:00:00
Срок действия: не ограничен
Количество пользователей: 10
Количество пинкодов в группе: 1
Привязка: SUN, Intel64 Family 6 Model 60 Stepping 3, 32729Mb RAM, Microsoft Windows Server 2012 R2 Essentials
$ /c/Program\ Files/1cv8/current/bin/rac.exe localhost:3545 session list --licenses --cluster=ef6b324c-e510-457c-9e8f-d642e2bc5ba8
session            : 1bf18050-d815-4846-a71a-c9fcb6cbb912
user-name          : Ирина
host               :
app-id             : 1CV8C
full-name          :
series             : "ORGL8"
issued-by-server   : yes
license-type       : HASP
net                : no
max-users-all      : 5
max-users-cur      : 5
rmngr-address      : "SUN"
rmngr-port         : 3541
rmngr-pid          : 16076
short-presentation : "Сервер, ORGL8 Лок 5"
full-presentation  : "Сервер, 16076, SUN, 3541, ORGL8 Локальный 5"

session            : e2138033-8406-4b68-982e-f93317f2ec1b
user-name          : Администратор
host               :
app-id             : WebClient
full-name          :
series             : "ORGL8"
issued-by-server   : yes
license-type       : HASP
net                : no
max-users-all      : 5
max-users-cur      : 5
rmngr-address      : "SUN"
rmngr-port         : 3541
rmngr-pid          : 16076
short-presentation : "Сервер, ORGL8 Лок 5"
full-presentation  : "Сервер, 16076, SUN, 3541, ORGL8 Локальный 5"

session            : fa0638df-3bb0-4eb7-b5fd-460ac103cb57
user-name          : Администратор
host               : SUN
app-id             : 1CV8C
full-name          : "file://C:/ProgramData/1C/licenses/20240118205128.lic"
series             : "81*****988"
issued-by-server   : no
license-type       : soft
net                : no
max-users-all      : 10
max-users-cur      : 10
rmngr-address      :
rmngr-port         : 0
rmngr-pid          : 14388
short-presentation : "Клиент, 81*****988 10 10"
full-presentation  : "Клиент, 14388, 81*****988 10 10, file://C:/ProgramData/1C/licenses/20240118205128.lic"
$ ./1c_license_server.sh used
IB#6ea76026-99f4-4acf-9190-254424678c1f:2:2:3:1:1
CL#ef6b324c-e510-457c-9e8f-d642e2bc5ba8:2:2:3:1:1
LIC#20240118205128.lic:0
summary:2:2:3:1:1
# 1c.ls.license.used
# 1c.ls.license.uniq
# 1c.ls.license.total
# 1c.ls.license.client
# 1c.ls.license.webclient

Ожидалось

...
LIC#20240118205128.lic:1
HASP#ORGL8 Лок 5:2
summary:3:3:3:2:1

Проблемы:

  1. Была использована файловая лицензия, однако не была начислена в счетчике. Возможно из-за того что номер в файле отличается от номера в сеансе суффиксом G0
  2. Использованные лицензии подсчитаны не верно. Какая была не учтена не разобрался.
  3. Уникальные подсчитаны неверное.
  4. Клиентские лицензии подсчитаны неверно.

! Не учитываются HASP лицензии.

Причем поведение неправильное как в случае когда мы хотим их учитывать так и в случае когда мы не хотим их подсчитывать.

Если хотим: Хочется подсчитывать их в отдельной группе. Хочется задать константу какой ключ вставлен на какое количество лицензий чтобы суммарное количество лицензий учитывало это количество.

Если не хотим: Счетчики должны быть уменьшены так чтобы игнорировать сеансы с HASP типом лицензии.

zeegin commented 6 months ago

Получается что 1c.ls.license.client это issued-by-server : no при этом она отбрасывается так, что не начисляется на файл.

Т.е. если лицензия была съедена сеансом открытым на том же сервере где запущен сервер 1с мы в лицензии на файл это увидим.

Пока не понял хорошо это или нет. Может действительно нужно следить больше за теми которые выдал сервер.

slothfk commented 6 months ago

Вроде здесь все расписано https://github.com/slothfk/1c_zabbix_template_ce/blob/master/docs/license_server.md

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