мониторинг UPS

Started by thaideval, January 29, 2018, 09:48:56 AM

Previous topic - Next topic

thaideval

Доброго времени суток. Искал ответ на свой вопрос, но так и не нашел. Потому прошу прощения если он все-таки есть на форуме.
Проблема следующая:
Есть APC ups с USB интерфейсом, подключенный к Win XP. + netxmsagent 2.1.2.
субагент ups.nsm стоит
Добавил в Agent config
*UPS
Device = 0:ANY:USB
Добавляю параметр UPS.OnlineStatus(*) на этот хост.
выдает такую ошибку
Status of DCI 263 (NetXMS Agent: UPS.OnlineStatus(*)) changed to UNSUPPORTED
Подскажите, пожалуйста, что я делаю не так.

VladimirV

Можно начать с логов агента, увеличив подробности информации, в конфигурации добавить "DebugLevel = 7", например, или выше.

Мы также пробовали подключать через USB, но были проблемы со стабильностью получения информации.
Подключили по COM, пока проблем нет.

thaideval

Quote from: VladimirV on January 30, 2018, 11:56:11 AM
Можно начать с логов агента, увеличив подробности информации, в конфигурации добавить "DebugLevel = 7", например, или выше.

Мы также пробовали подключать через USB, но были проблемы со стабильностью получения информации.
Подключили по COM, пока проблем нет.

Как вы и советовали поставил DebugLevel = 7
Лог при запуске агента:
[30-Jan-2018 15:15:35.265] [INFO ] Subagent "UPS" (ups.nsm) loaded successfully (version 2.1.2)
[30-Jan-2018 15:15:35.281] [DEBUG] UPS: CreateFile failed (???????? ? ???????.) for device \\?\hid#vid_0458&pid_003a#6&264702e7&0&0000#{4d1e55b2-f16f-11cf-88cb-001111000030}
[30-Jan-2018 15:15:35.281] [DEBUG] UPS: read serial number "AS1319136036"
[30-Jan-2018 15:15:35.281] [DEBUG] UPS: found matching device
[30-Jan-2018 15:15:35.296] [INFO ] UPS: Established communication with device #0 "USB-ANY"
[30-Jan-2018 15:15:35.515] [DEBUG] UPS: initial poll finished for device #0 "USB-ANY"
[30-Jan-2018 15:15:36.265] [DEBUG] External parameters providers poller thread will not start
[30-Jan-2018 15:15:36.281] [DEBUG] Data collection scheduler thread started
[30-Jan-2018 15:15:36.281] [DEBUG] Data sender thread started
[30-Jan-2018 15:15:36.281] [DEBUG] Database writer thread started
[30-Jan-2018 15:15:36.281] [DEBUG] Data reconciliation thread started (block size 1024, timeout 15000 ms)
[30-Jan-2018 15:15:36.281] [DEBUG] Thread pool DATACOLL initialized (min=1, max=64)
[30-Jan-2018 15:15:36.281] [DEBUG] Trying to bind on 0.0.0.0:4700
[30-Jan-2018 15:15:36.281] [DEBUG] Trying to bind on [::]:4700
[30-Jan-2018 15:15:36.281] [ERROR] Unable to bind socket: ??????? ??????? ????????? ???????? ?? ???????, ?? ?????????? ???????.
[30-Jan-2018 15:15:36.281] [DEBUG] NamedPipeListener(nxagentd.push): waiting for connection
[30-Jan-2018 15:15:36.281] [DEBUG] Trying to bind on 127.0.0.1:28180
[30-Jan-2018 15:15:36.281] [INFO ] Listening on socket 0.0.0.0:4700
[30-Jan-2018 15:15:36.281] [DEBUG] Session agent connector listening on port 28180
[30-Jan-2018 15:15:36.281] [DEBUG] No tunnels configured, tunnel manager will not start
[30-Jan-2018 15:15:37.281] [INFO ] NetXMS Agent started

Когда я включаю параметр  UPS.ConnectionStatus(*) то записывает
[30-Jan-2018 15:18:21.906] [DEBUG] [CS-0(1)] Received message CMD_GET_PARAMETER (84)
[30-Jan-2018 15:18:21.906] [DEBUG] [CS-0(1)] Requesting parameter "UPS.ConnectionStatus(*)"
[30-Jan-2018 15:18:21.906] [DEBUG] [CS-0(1)] GetParameterValue(): result is 404 (UNKNOWN_PARAMETER)
[30-Jan-2018 15:18:21.906] [DEBUG] [CS-0(1)] Sending message CMD_REQUEST_COMPLETED (ID 84; size 32; uncompressed)

VladimirV

Если
*UPS
Device = 0:ANY:USB

то нужно указывать
UPS.ConnectionStatus(0)

судя по документации https://www.netxms.org/documentation/adminguide/ups-monitoring.html

thaideval

#4
Quote from: VladimirV on January 31, 2018, 03:57:25 AM
Если
*UPS
Device = 0:ANY:USB

то нужно указывать
UPS.ConnectionStatus(0)

судя по документации https://www.netxms.org/documentation/adminguide/ups-monitoring.html

К сожалению, я так делал.
Не может же быть такого, чтобы ups не поддерживала такого простейшего параметра, правильно?

UPD: попробовал другие параметры, например UPS.BatteryLevel(0) работает, а UPS.OnlineStatus(0) тоже не работает. во всяком случае, это если судить по логам.

thaideval

Так то тему можно закрывать. Параметра BattaryLevel мне будет достаточно, я думаю. если он не будет считываться - следовательно коннекта нет к UPS.
Понять почему UPS.ConnectionStatus(0) не реботает так и не получилось.
Благодарю за ответ.