netxms snmp table
-
-
@victor said in netxms snmp table:
А по описанию на английском языке правильно разбирать поле - это уже ИИ нужен...
snmpget и snmpwalk ведь делают это без всякого ИИ на основании инструкций в MIB файле...
В данном случае snmpwalk при включенном mib файле выдает всего 2 варианта, причем они указаны в выводе:.1.3.6.1.2.1.25.6.3.1.2.135 [Hex-STRING]: CE E1 ED EE E2 EB E5 ED E8 E5 20 E1 E5 E7 EE EF E0 F1 ED EE F1 F2 E8 20 E4 EB FF 20 57 69 6E 64 6F 77 73 20 58 50 20 28 4B 42 39 38 32 36 36 35 29 .1.3.6.1.2.1.25.6.3.1.2.136 [STRING]: Oracle VM VirtualBox Guest Additions 4.3.6Для подавляющего большинства веток SNMP - типы указанны коректно...
[INTEGER] [COUNTER32] [COUNTER64]Да и типов этих 10-15 да и закончились...
-
А как показывает даты из .1.3.6.1.2.1.25.6.3.1 snmpwalk?
-
HOST-RESOURCES-MIB::hrSWInstalledDate.9 = STRING: 2014-1-20,19:1:46.0 HOST-RESOURCES-MIB::hrSWInstalledDate.10 = STRING: 2014-1-20,19:1:46.0 HOST-RESOURCES-MIB::hrSWInstalledDate.11 = STRING: 2014-1-20,19:1:46.0 HOST-RESOURCES-MIB::hrSWInstalledDate.12 = STRING: 2014-1-20,19:1:46.0 HOST-RESOURCES-MIB::hrSWInstalledDate.13 = STRING: 2014-1-20,19:1:46.0 HOST-RESOURCES-MIB::hrSWInstalledDate.14 = STRING: 2014-1-20,19:1:46.0 HOST-RESOURCES-MIB::hrSWInstalledDate.15 = STRING: 2014-1-20,19:1:46.0 HOST-RESOURCES-MIB::hrSWInstalledDate.16 = STRING: 2014-1-20,19:1:44.0 HOST-RESOURCES-MIB::hrSWInstalledDate.17 = STRING: 2014-1-20,19:1:46.0 HOST-RESOURCES-MIB::hrSWInstalledDate.18 = STRING: 2014-1-20,19:1:46.0 HOST-RESOURCES-MIB::hrSWInstalledDate.19 = STRING: 2014-1-20,19:1:46.0 -
А вот замечательный пример "недорасшифрованной строки"
HOST-RESOURCES-MIB::hrDeviceDescr.3 = STRING: Red Hat VirtIO Ethernet Adapter - <CC><E8><ED><E8><EF><EE><F0><F2> <EF><EB> <E0><ED><E8><F0><EE><E2><F9><E8><EA><E0> <EF><E0><EA><E5><F2><EE><E2> HOST-RESOURCES-MIB::hrDeviceDescr.4 = STRING: Red Hat VirtIO Ethernet Adapter #2 - <CC><E8><ED><E8><EF><EE><F0><F2> <EF><EB> <E0><ED><E8><F0><EE><E2><F9><E8><EA><E0> <EF><E0><EA><E5><F2> -
Да, действительно, в MIB'е есть описание конвертации:
DateAndTime ::= TEXTUAL-CONVENTION
DISPLAY-HINT "2d-1d-1d,1d:1d:1d.1d,1a1d:1d"кто бы мог подумать
Сейчас наш MIB компилятор поле DISPLAY-HINT игнорирует, я добавлю feature request на это. -
-
-
@andrey-k said in netxms snmp table:
Решил задачу через динамические DCI. Там пишет raw (hex) в БД.
Спасибо.
Решение оказалось неудачным.
Сервер начал потреблять очень много ОЗУ.
Буду пробовать реализовать поддержку CP1251.Подскажите пожалуйста, deb пакеты в последней версии (1.2.12), для Debian Wheezy, скомпилированы с --enable-UNICODE ?
-
-
@andrey-k said in netxms snmp table:
@andrey-k said in netxms snmp table:
Решил задачу через динамические DCI. Там пишет raw (hex) в БД.
Спасибо.
Решение оказалось неудачным.
Сервер начал потреблять очень много ОЗУ.
Буду пробовать реализовать поддержку CP1251.Подскажите пожалуйста, deb пакеты в последней версии (1.2.12), для Debian Wheezy, скомпилированы с --enable-UNICODE ?
Да, с UNICODE.
-
@andrey-k said in netxms snmp table:
Приведите пожалуйста пример создания Transformatin script для SNMP-table.
Вот пример скрипта для таблицы - списка процессов на Cisco рутере. Колонку TIME из микросекунд переводим в проценты. В аттаче шаблон с етой таблицей, чтобы можно было посмотреть всю конфигурацию целиком.
ciTime = $1->getColumnIndex("TIME"); for(row = 0; row < $1->rowCount; row++) { value = $1->get(row, ciTime); $1->set(row, ciTime, value * 100 / 1000000); }
-
@victor said in netxms snmp table:
Да, с UNICODE.
Переставил чистую виртуалку (Debian 7.4)
Пересобрал с исходников netxms 1.2.12.
конфиг:./configure --with-server --with-agent --with-all-static --with-mysql --with-snmp --enable-static --enable-unicode --disable-xmppВ логе при старте:
[06-Mar-2014 00:01:12.720] Log file opened [06-Mar-2014 00:01:12.720] [DEBUG] Code page set to CP1251Кирилица все равно не собирается нормально.

Я что-то упускаю, но не могу понять что именно


-
Сервер не надо со статикой собирать, ничего хорошего из этого не выйдет. Правильней будет так:
./configure --with-server --with-mysql --enable-unicode --disable-xmpp
и как выглядит summary после отработки configure?
-
@victor said in netxms snmp table:
Сервер не надо со статикой собирать, ничего хорошего из этого не выйдет. Правильней будет так:
./configure --with-server --with-mysql --enable-unicode --disable-xmpp
и как выглядит summary после отработки configure?
После моего:
--------------------------------------------------------------------- Configure results --------------------------------------------------------------------- Prefix : /usr/local Platform : Linux Shared library suffix : .so Build Server : YES Server libs : -lssl XMPP support : NO Encryption enabled : YES Build DB-Drivers : mysql Build Clients : NO Build Agent : YES Subagents list : linux Build Static Agent : NO UNICODE build : YES Use internal libexpat : YES Use internal libtre : YES Use internal zlib : NO Force 32bit build : NO C compiler : gcc C++ compiler : g++ CPPFLAGS : -D_THREAD_SAFE -DTRE_WCHAR=1 -I/usr/local/mysql/include -I/usr/include/mysql -I/usr/mysql/include -I/usr/local/include/mysql -I/usr/local/mysql/include/mysql -I/usr/mysql/include/mysql -DUNICODE -D_GNU_SOURCE -O2 -Wformat -I/usr/local/include -DPREFIX=L\"${prefix}\" -DDATADIR=L\"${pkgdatadir}\" -DBINDIR=L\"${bindir}\" -DLIBDIR=L\"${libdir}\" -DPKGLIBDIR=L\"${pkglibdir}\" CXXFLAGS : -g -O2 -fno-rtti -fno-exceptions CFLAGS : -g -O2 LDFLAGS : -L/usr/local/mysql/lib -L/usr/lib64/mysql -L/usr/lib/mysql -L/usr/mysql/lib -L/usr/local/lib/mysql -L/usr/local/mysql/lib/mysql -L/usr/mysql/lib/mysql -L/usr/local/lib LIBS : -lz -ldl -lpthread -lcrypto MySQL libs : -lmysqlclientПосле предложенного Вами варианта
--------------------------------------------------------------------- Configure results --------------------------------------------------------------------- Prefix : /usr/local Platform : Linux Shared library suffix : .so Build Server : YES Server libs : -lssl XMPP support : NO Encryption enabled : YES Build DB-Drivers : mysql Build Clients : NO Build Agent : YES Subagents list : linux Build Static Agent : NO UNICODE build : YES Use internal libexpat : YES Use internal libtre : YES Use internal zlib : NO Force 32bit build : NO C compiler : gcc C++ compiler : g++ CPPFLAGS : -D_THREAD_SAFE -DTRE_WCHAR=1 -I/usr/local/mysql/include -I/usr/include/mysql -I/usr/mysql/include -I/usr/local/include/mysql -I/usr/local/mysql/include/mysql -I/usr/mysql/include/mysql -DUNICODE -D_GNU_SOURCE -O2 -Wformat -I/usr/local/include -DPREFIX=L\"${prefix}\" -DDATADIR=L\"${pkgdatadir}\" -DBINDIR=L\"${bindir}\" -DLIBDIR=L\"${libdir}\" -DPKGLIBDIR=L\"${pkglibdir}\" CXXFLAGS : -g -O2 -fno-rtti -fno-exceptions CFLAGS : -g -O2 LDFLAGS : -L/usr/local/mysql/lib -L/usr/lib64/mysql -L/usr/lib/mysql -L/usr/mysql/lib -L/usr/local/lib/mysql -L/usr/local/mysql/lib/mysql -L/usr/mysql/lib/mysql -L/usr/local/lib LIBS : -lz -ldl -lpthread -lcrypto MySQL libs : -lmysqlclient -
Нашел баг похоже - при конвертации строк, полученных через SNMP, выставленный code page игнорируется. Судя по комментариям в коде - это зачем-то было надо. Подумаю как это можно решить. Нет возможности дать мне доступ по SNMP на какое-нибудь устройство, которое русские тексты по SNMP отдает? Это сильно помогло бы в отладке.
-
@victor said in netxms snmp table:
Нашел баг похоже - при конвертации строк, полученных через SNMP, выставленный code page игнорируется. Судя по комментариям в коде - это зачем-то было надо. Подумаю как это можно решить. Нет возможности дать мне доступ по SNMP на какое-нибудь устройство, которое русские тексты по SNMP отдает? Это сильно помогло бы в отладке.
Попробую пробросить порт с виртуалки...
217.66.101.229:161 -
У меня работает - можно закрывать хост. В 1.2.13 будет нормально брать русские буквы с SNMP.
-
-
Собрал с исходников
./configure --enable-unicode --with-agent --with-mysql --with-server --with-snmp --enable-debug make make install ...Все запустилось.
Но кириллица так и не появилась...
Может требуются какие особенные настройки на сервере с netxmsИспользуется debian 7.4 + mysql.
Локаль сервераLANG=en_US.UTF-8может там какую-другую поставить?
В netxmsd.confCodePage = CP1251
Hello! It looks like you're interested in this conversation, but you don't have an account yet.
Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.
With your input, this post could be even better 💗
Register Login