slothfk / 1c_zabbix_template_ce

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

Проблема с отображением общего количества сеансов #105

Closed MegaShIzoID closed 1 year ago

MegaShIzoID commented 1 year ago

Два центральных сервера в кластере. Режим отказоустойчивости - 0. В случае с базами все замечательно - правильно отображается количество сеансов для каждой базы. А вот общее количество показывает в два раза больше, для любых видов заданий, как для фоновых, так и для общего количества. Оно конечно решается добавлением множителя 0.5 в предобработку элемента данных, но по мне так не особо красивый выход. image

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

slothfk commented 1 year ago

А по кластерам как? Скриншот из центрального сервера?

MegaShIzoID commented 1 year ago

А по кластерам как? Скриншот из центрального сервера?

я повесил шаблон на один сервер кластера только, скриншот с него, да

slothfk commented 1 year ago

А по кластерам как? Скриншот из центрального сервера?

я имел ввиду, если включить обнаружение кластеров, то по ним показатели не удвоенные будут?

MegaShIzoID commented 1 year ago

я имел ввиду, если включить обнаружение кластеров, то по ним показатели не удвоенные будут?

включил, показывает действительные значения, без удвоения image общее количество сеансов (не кластера) в данном случае с множителем 0,5 в предобработке

slothfk commented 1 year ago

общее количество сеансов (не кластера) в данном случае с множителем 0,5 в предобработке

Хм, странно ... Но спасибо, проверю! Говорите и на центральном и на лицензировании так?

MegaShIzoID commented 1 year ago

Хм, странно ... Но спасибо, проверю! Говорите и на центральном и на лицензировании так?

image Вот так показывает если с дефолтными настройками все оставить, без всяких кастомных предобработок и прочего

UPD еще понаблюдал странное поведение у лицензирования - количество сеансов стало 0, потом приняло нормальное значение без удвоения, а потом опять удвоеное, это буквально при каждом опросе менялось

slothfk commented 1 year ago

Правильно ли я понимаю, что на центральном сервере одна база и один кластер?

MegaShIzoID commented 1 year ago

Правильно ли я понимаю, что на центральном сервере одна база и один кластер?

один кластер, два центральных сервера, рабочих нет, баз - 14, активно используются 4

slothfk commented 1 year ago

Тогда все последние данные по всем элементам данных, в которых в названии есть "Общее количество сеансов" покажите пожалуйста

MegaShIzoID commented 1 year ago

Тогда все последние данные по всем элементам данных, в которых в названии есть "Общее количество сеансов" покажите пожалуйста

image

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

УПД: общее количество сейчас без постобработки

MegaShIzoID commented 1 year ago

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

slothfk commented 1 year ago

А можно тогда "выхлоп" скрипта (запускать от пользователя с административными правами)

$ 1c_central_server.sh sessions 1545 1.5 <ras_user> <ras_pass>

<ras_user> и <ras_pass> имя и пароль администратора кластера, соответственно

MegaShIzoID commented 1 year ago

image замазал только фамилию пользователя, общее количество сеансов в заббиксе на данный момент показывает 136

slothfk commented 1 year ago

image замазал только фамилию пользователя, общее количество сеансов в заббиксе на данный момент показывает 136

А повторное выполнение скрипта выдает тот же результат?

MegaShIzoID commented 1 year ago

А повторное выполнение скрипта выдает тот же результат?

image вот с паузой в пару секунд

slothfk commented 1 year ago

при этом в заббиксе 246 общее число сеансов показывает?

MegaShIzoID commented 1 year ago

при этом в заббиксе 246 общее число сеансов показывает?

именно так

MegaShIzoID commented 1 year ago

иногда получает действительное количество, но не всегда image

slothfk commented 1 year ago

очень интересно ...

slothfk commented 1 year ago

а включите, пожалуйста, у наблюдаемого узла в элементе данных [1C/Центральный сервер] Текущие сеансы историю хранения, скажем 1 час изображение И пришлите последние данные по данному элементу, когда отображается удвоенное значение общего количества сеансов

MegaShIzoID commented 1 year ago

а включите, пожалуйста, у наблюдаемого узла в элементе данных [1C/Центральный сервер] Текущие сеансы историю хранения, скажем 1 час изображение И пришлите последние данные по данному элементу, когда отображается удвоенное значение общего количества сеансов

ну вот то что он насобирал за 13 минут, если недостаточно будет то могу больше насобирать https://gist.github.com/MegaShIzoID/b5377eb95af53a929472da281f89b36d

slothfk commented 1 year ago

ну вот то что он насобирал за 13 минут, если недостаточно будет то могу больше насобирать https://gist.github.com/MegaShIzoID/b5377eb95af53a929472da281f89b36d

Спасибо, этого достаточно! Подскажите, а сколько процессов rmgnr на этом сервере? И какие у них параметры запуска?

MegaShIzoID commented 1 year ago

Спасибо, этого достаточно! Подскажите, а сколько процессов rmgnr на этом сервере? И какие у них параметры запуска?

процессы все по одному, rmngr, rphost, ras и ragent служба сервера запускается вот так "C:\Program Files\1cv8\current\bin\ragent.exe" -srvc -agent -regport 1541 -port 1540 -range 1560:1591 -d "C:\Program Files\1cv8\srvinfo" или я неправильно понял про параметры?

slothfk commented 1 year ago

или я неправильно понял про параметры?

все правильно, только я хотел для процесса rmngr, но наверное не суть, если процесс один :/ пока идей нет ... странно как-то ...

slothfk commented 1 year ago

а что вернет команда, запущенная под административными правами из git bash

$  wmic path win32_process where "caption like 'rphost%'" get CommandLine | grep rphost | 
    sed -r 's/.*-regport ([^ ]+).*/\0|\1/; s/.*-reghost ([^ ]+).*\|/\1:/' | sort -u |
    awk -F: '{ if ( clstr_list[$1]== "" ) { clstr_list[$1]=$2 } \
        else { clstr_list[$1]=clstr_list[$1]"|"$2 } } \
        END { for ( i in clstr_list ) { print i":"clstr_list[i]} }''
MegaShIzoID commented 1 year ago

а что вернет команда, запущенная под административными правами из git bash

$  wmic path win32_process where "caption like 'rphost%'" get CommandLine | grep rphost | 
    sed -r 's/.*-regport ([^ ]+).*/\0|\1/; s/.*-reghost ([^ ]+).*\|/\1:/' | sort -u |
    awk -F: '{ if ( clstr_list[$1]== "" ) { clstr_list[$1]=$2 } \
        else { clstr_list[$1]=clstr_list[$1]"|"$2 } } \
        END { for ( i in clstr_list ) { print i":"clstr_list[i]} }''

просит ввести еще что-нибудь image

УПД если выполнить до sort -u то пишет 1CSERVER:1541

slothfk commented 1 year ago

просит ввести еще что-нибудь

затесался лишний символ ' в последней строке

УПД если выполнить до sort -u то пишет 1CSERVER:1541

Еще больше интересно ... Агент zabbix от системной учетки запускается? Посмотреть бы содержимое файла 1c_clusters_cache для пользователя под которым запускается агент zabbix (должен быть где-то в каталоге временных файлов пользователя)

MegaShIzoID commented 1 year ago

Еще больше интересно ... Агент zabbix от системной учетки запускается? Посмотреть бы содержимое файла 1c_clusters_cache для пользователя под которым запускается агент zabbix (должен быть где-то в каталоге временных файлов пользователя)

нашелся в двух местах image в темпе пользователя "Администратор" одна запись про кластер, а в виндовом темпе две одинаковых, заббикс-агент запускается от системного пользователя, а вот агент сервера от отдельно созданного Содержимое виндового, потому что админский это как я понял от ручных запусков появился image

ну и теперь при запуске скрипта пишет вот так image

Ну и если до седа image

slothfk commented 1 year ago

Содержимое виндового, потому что админский это как я понял от ручных запусков появился image

Удалите этот файл и посмотрите когда появится, опять будет две строки?

MegaShIzoID commented 1 year ago

Содержимое виндового, потому что админский это как я понял от ручных запусков появился image

Удалите этот файл и посмотрите когда появится, опять будет две строки?

да, после появления файла опять две строки

MegaShIzoID commented 1 year ago

ну и если это важно то заббикс 6.4.1 на Ubuntu 22.04, заббикс агент 2 и Windows server 2008 r2

slothfk commented 1 year ago

пока я затрудняюсь сказать откуда берется вторая строка и почему ее нет при ручном запуске!?

MegaShIzoID commented 1 year ago

пока я затрудняюсь сказать откуда берется вторая строка и почему ее нет при ручном запуске!?

Конкретно в моем случае помогло заменить в данном месте >> на >, но как я понял это не сработает в случае нескольких кластеров на сервер image файл 1c_common_module.sh

slothfk commented 1 year ago

Конкретно в моем случае помогло заменить в данном месте >> на >, но как я понял это не сработает в случае нескольких кластеров на сервер

Все верно, в случае нескольких кластеров все поломается :(

Все равно не понятно откуда возникает дубль, при чем только в случае запуска агентом zabbix!?

slothfk commented 1 year ago

изображение а вставьте такую строчу в 1c_common_module.sh и потом пришлите содержимое 1c_rmngr_list

MegaShIzoID commented 1 year ago

изображение а вставьте такую строчу в 1c_common_module.sh и потом пришлите содержимое 1c_rmngr_list

image

в общем дело было не в бобине, как я понимаю, в конфиге заббикса в параметре ServerActive был указан и айпишник и доменное имя одного и того же сервера мониторинга, оставил только айпишник и все стало отображаться по-человечески. не совсем понятно конечно такое поведение, но вот так получилось. Извиняюсь за потраченое время.

slothfk commented 1 year ago

в общем дело было не в бобине, как я понимаю, в конфиге заббикса в параметре ServerActive был указан и айпишник и доменное имя одного и того же сервера мониторинга, оставил только айпишник и все стало отображаться по-человечески. не совсем понятно конечно такое поведение, но вот так получилось

Все равно странно, по идее файл должен очищаться каждым экземпляром скрипта ... хотя, учитывая задержку при получении ответа от RAS, возможно такое поведение ...

Наверное стоит подумать как предотвратить подобные "коллизии" :/ поскольку файл "трогается" еще и скриптом 1c_license_server.sh, то не исключена такая ситуация и при других условиях!

Так что, пожалуй, все же это баг!