Skip to content

SNMP

Во Flussonic Media Server есть базовая реализация SNMP. Она позволяет отслеживать разные параметры, например, сколько ресурсов потребляют видео-потоки Flussonic.

Она включается в конфигурационном файле Flussonic следующим способом:

snmp 4000;

edit_auth ADMIN PASSWORD;

Примените настройки:

service flussonic reload

Теперь на порту 4000 Flussonic будет отвечать по SNMP.

snmpwalk

Чтобы прочитать данные SNMP, выполните такие команды:

apt-get -y install snmp snmp-mibs-downloader

snmpwalk -c ADMIN -v 2c -M +/opt/flussonic/lib/snmp2/mibs/ -m +STREAMER-MIB 127.0.0.1:4000 .

Замените ADMIN на логин администратора Flussonic.

Здесь snmpwalk — утилита для диагностики установленной системы SNMP.

Опция -c ADMIN означает "community" в терминах SNMP. SNMP community равен логину администратора Flussonic.

Пример

Если все настроено правильно, то утилита snmpwalk даст ответ такого вида:

# snmpwalk -c flussonic -v 2c -M +/opt/flussonic/lib/snmp2/mibs/ -m +STREAMER-MIB 127.0.0.1:4000 .
SNMPv2-SMI::mib-2.1.3.0 = Timeticks: (668596) 1:51:25.96
SNMPv2-SMI::mib-2.1.4.0 = STRING: "support@flussonic.com"
SNMPv2-SMI::mib-2.1.5.0 = STRING: "Streamer"
SNMPv2-SMI::mib-2.1.6.0 = STRING: "Erlang"
SNMPv2-SMI::mib-2.1.7.0 = INTEGER: 72
SNMPv2-SMI::mib-2.1.8.0 = Timeticks: (0) 0:00:00.00
SNMPv2-SMI::mib-2.11.1.0 = Counter32: 9
SNMPv2-SMI::mib-2.11.3.0 = Counter32: 0
SNMPv2-SMI::mib-2.11.4.0 = Counter32: 0
SNMPv2-SMI::mib-2.11.5.0 = Counter32: 0
SNMPv2-SMI::mib-2.11.6.0 = Counter32: 0
SNMPv2-SMI::mib-2.11.30.0 = INTEGER: 1
SNMPv2-SMI::mib-2.11.31.0 = Counter32: 0
SNMPv2-SMI::mib-2.11.32.0 = Counter32: 0
STREAMER-MIB::streamsNum.0 = Gauge32: 3
STREAMER-MIB::sIndex.1 = INTEGER: 1
STREAMER-MIB::sIndex.2 = INTEGER: 2
STREAMER-MIB::sIndex.3 = INTEGER: 3
STREAMER-MIB::sName.1 = STRING: nino
STREAMER-MIB::sName.2 = STRING: 01
STREAMER-MIB::sName.3 = STRING: informer
STREAMER-MIB::sClientCount.1 = Gauge32: 0
STREAMER-MIB::sClientCount.2 = Gauge32: 0
STREAMER-MIB::sClientCount.3 = Gauge32: 1
STREAMER-MIB::sRetryCount.1 = Gauge32: 0
STREAMER-MIB::sRetryCount.2 = Gauge32: 0
STREAMER-MIB::sRetryCount.3 = Gauge32: 0
STREAMER-MIB::sLifeTime.1 = Counter64: 6707983
STREAMER-MIB::sLifeTime.2 = Counter64: 6713981
STREAMER-MIB::sLifeTime.3 = Counter64: 1617905203800
STREAMER-MIB::sBitrate.1 = Counter64: 3571
STREAMER-MIB::sBitrate.2 = Counter64: 2580
STREAMER-MIB::sBitrate.3 = Counter64: 713
STREAMER-MIB::sBytesIn.1 = Counter64: 3043133741
STREAMER-MIB::sBytesIn.2 = Counter64: 2227175658
STREAMER-MIB::sBytesIn.3 = Counter64: 144049422
STREAMER-MIB::sBytesOut.1 = Counter64: 0
STREAMER-MIB::sBytesOut.2 = Counter64: 23894379
STREAMER-MIB::sBytesOut.3 = Counter64: 29263651
STREAMER-MIB::sStatus.1 = INTEGER: active(1)
STREAMER-MIB::sStatus.2 = INTEGER: active(1)
STREAMER-MIB::sStatus.3 = INTEGER: active(1)
STREAMER-MIB::totalClients.0 = Gauge32: 1
STREAMER-MIB::schedulerLoad.0 = Gauge32: 0
SNMPv2-SMI::snmpModules.1.1.6.1.0 = INTEGER: 1091569939
SNMPv2-SMI::snmpModules.10.2.1.1.0 = STRING: "Streamer"
SNMPv2-SMI::snmpModules.10.2.1.2.0 = INTEGER: 1
SNMPv2-SMI::snmpModules.10.2.1.3.0 = INTEGER: 6686
SNMPv2-SMI::snmpModules.10.2.1.4.0 = INTEGER: 484
SNMPv2-SMI::snmpModules.11.2.1.1.0 = Counter32: 0
SNMPv2-SMI::snmpModules.11.2.1.2.0 = Counter32: 0
SNMPv2-SMI::snmpModules.11.2.1.3.0 = Counter32: 0
SNMPv2-SMI::snmpModules.11.2.1.3.0 = No more variables left in this MIB View (It is past the end of the MIB tree)

В данной SNMP таблице есть объекты, которые относятся к Flussonic (STREAMER-MIB) и содержат данные о потоках, такие как имя потока (STREAMER-MIB::sName), количество запросивших клиентов (STREAMER-MIB::sClientCount), время активности потока (STREAMER-MIB::sLifeTime) и т.д.

Потоки пронумерованы .1, .2, и т.д.

Поясним объекты, которые могут вызвать вопросы:

  • STREAMER-MIB::sStatus

    Возвращает целые числа, соответствующие следующим значениям:

    • active = 1
    • notInService = 2
    • notReady = 3
  • STREAMER-MIB::schedulerLoad

    Потребление в % ресурса Erlang scheduler (среднее за последнюю минуту). Соответствует среднему значению из Pulse > Scheduler utilization for last minute.

snmptranslate

Чтобы получить информацию об объектах и идентификаторах (OID), воспользуйтесь утилитой snmptranslate с флагом -Tz:

snmptranslate -m /opt/flussonic/lib/snmp2/mibs/STREAMER-MIB.mib -Tz

Утилита дает ответ такого вида:

"org"                   "1.3"
"dod"                   "1.3.6"
"internet"              "1.3.6.1"
"directory"             "1.3.6.1.1"
"mgmt"                  "1.3.6.1.2"
"mib-2"                 "1.3.6.1.2.1"
"transmission"          "1.3.6.1.2.1.10"
"experimental"          "1.3.6.1.3"
"private"               "1.3.6.1.4"
"enterprises"           "1.3.6.1.4.1"
"streamerModule"        "1.3.6.1.4.1.36342"
"streamer"              "1.3.6.1.4.1.36342.1"
"streams"               "1.3.6.1.4.1.36342.1.1"
"streamsNum"            "1.3.6.1.4.1.36342.1.1.1"
"streamsTable"          "1.3.6.1.4.1.36342.1.1.2"
"streamsEntry"          "1.3.6.1.4.1.36342.1.1.2.1"
"sIndex"                "1.3.6.1.4.1.36342.1.1.2.1.1"
"sName"                 "1.3.6.1.4.1.36342.1.1.2.1.2"
"sClientCount"          "1.3.6.1.4.1.36342.1.1.2.1.3"
"sRetryCount"           "1.3.6.1.4.1.36342.1.1.2.1.4"
"sLifeTime"             "1.3.6.1.4.1.36342.1.1.2.1.5"
"sBitrate"              "1.3.6.1.4.1.36342.1.1.2.1.6"
"sBytesIn"              "1.3.6.1.4.1.36342.1.1.2.1.7"
"sBytesOut"             "1.3.6.1.4.1.36342.1.1.2.1.8"
"sStatus"               "1.3.6.1.4.1.36342.1.1.2.1.9"
"accounting"            "1.3.6.1.4.1.36342.1.2"
"totalClients"          "1.3.6.1.4.1.36342.1.2.1"
"serverStatus"          "1.3.6.1.4.1.36342.1.3"
"schedulerLoad"         "1.3.6.1.4.1.36342.1.3.1"
"streamerConformance"   "1.3.6.1.4.1.36342.2"
"streamGroup"           "1.3.6.1.4.1.36342.2.1"
"statGroup"             "1.3.6.1.4.1.36342.2.2"
"statusGroup"           "1.3.6.1.4.1.36342.2.3"
"security"              "1.3.6.1.5"
"snmpV2"                "1.3.6.1.6"
"snmpDomains"           "1.3.6.1.6.1"
"snmpProxys"            "1.3.6.1.6.2"
"snmpModules"           "1.3.6.1.6.3"
"zeroDotZero"           "0.0"

Описание объектов можно посмотреть в файле

/opt/flussonic/lib/snmp2/mibs/STREAMER-MIB.mib

в поле DESCRIPTION.