Flussonic Media Server documentation

Contents

SNMP

Flussonic Media Server has a basic implementation of the SNMP protocol. It allows monitoring of various parameters such as resource consumption by Flussonic's video streams.

To use it, add the following lines in the Flussonic configuration file:

snmp 4000;

edit_auth ADMIN PASSWORD;

Apply the settings:

/etc/init.d/flussonic reload

This will enable a listener for SNMP on port 4000.

snmpwalk

To fetch stats via SNMP, run the following commands:

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

cd /opt/flussonic

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

Replace ADMIN with the login of the Flussonic administrator.

Here snmpwalk is a utility for diagnosing an installed SNMP system.

The option -c ADMIN means "community" in terms of SNMP. SNMP community is equal to the Flussonic administrator's login.

Example

If everything is configuraed correctly, the response of the snmpwalk utility will look like the following:

# snmpwalk -c flussonic -v 2c -M +lib/snmp2/mibs/ -m +FLUSSONIC-MIB 127.0.0.1:4000 .
Created directory: /var/lib/snmp/mib_indexes
SNMPv2-MIB::sysDescr.0 = STRING: Flussonic 19.05
SNMPv2-MIB::sysObjectID.0 = OID: FLUSSONIC-MIB::flussonicModule
DISMAN-EVENT-MIB::sysUpTimeInstance = Timeticks: (81590) 0:13:35.90
SNMPv2-MIB::sysContact.0 = STRING: info@erlyvideo.org
SNMPv2-MIB::sysName.0 = STRING: Flussonic
SNMPv2-MIB::sysLocation.0 = STRING: Erlang
SNMPv2-MIB::sysServices.0 = INTEGER: 72
SNMPv2-MIB::sysORLastChange.0 = Timeticks: (0) 0:00:00.00
SNMPv2-MIB::snmpInPkts.0 = Counter32: 1186
SNMPv2-MIB::snmpInBadVersions.0 = Counter32: 0
SNMPv2-MIB::snmpInBadCommunityNames.0 = Counter32: 6
SNMPv2-MIB::snmpInBadCommunityUses.0 = Counter32: 0
SNMPv2-MIB::snmpInASNParseErrs.0 = Counter32: 0
SNMPv2-MIB::snmpEnableAuthenTraps.0 = INTEGER: enabled(1)
SNMPv2-MIB::snmpSilentDrops.0 = Counter32: 0
SNMPv2-MIB::snmpProxyDrops.0 = Counter32: 0
FLUSSONIC-MIB::streamsNum.0 = Gauge32: 2
FLUSSONIC-MIB::sIndex.1 = INTEGER: 1
FLUSSONIC-MIB::sIndex.2 = INTEGER: 2
FLUSSONIC-MIB::sName.1 = STRING: mc1
FLUSSONIC-MIB::sName.2 = STRING: tra
FLUSSONIC-MIB::sClientCount.1 = Gauge32: 1
FLUSSONIC-MIB::sClientCount.2 = Gauge32: 0
FLUSSONIC-MIB::sRetryCount.1 = Gauge32: 0
FLUSSONIC-MIB::sRetryCount.2 = Gauge32: 0
FLUSSONIC-MIB::sLifeTime.1 = Counter64: 809863
FLUSSONIC-MIB::sLifeTime.2 = Counter64: 804257
FLUSSONIC-MIB::sBitrate.1 = Counter64: 8657
FLUSSONIC-MIB::sBitrate.2 = Counter64: 4178
FLUSSONIC-MIB::sBytesIn.1 = Counter64: 900131893
FLUSSONIC-MIB::sBytesIn.2 = Counter64: 453771011
FLUSSONIC-MIB::sBytesOut.1 = Counter64: 0
FLUSSONIC-MIB::sBytesOut.2 = Counter64: 0
FLUSSONIC-MIB::sStatus.1 = INTEGER: active(1)
FLUSSONIC-MIB::sStatus.2 = INTEGER: active(1)
FLUSSONIC-MIB::totalClients.0 = Gauge32: 1
FLUSSONIC-MIB::schedulerLoad.0 = Gauge32: 0
SNMPv2-MIB::snmpSetSerialNo.0 = INTEGER: 362871239
SNMP-FRAMEWORK-MIB::snmpEngineID.0 = STRING: "flussonicID"
SNMP-FRAMEWORK-MIB::snmpEngineBoots.0 = INTEGER: 1
SNMP-FRAMEWORK-MIB::snmpEngineTime.0 = INTEGER: 816 seconds
SNMP-FRAMEWORK-MIB::snmpEngineMaxMessageSize.0 = INTEGER: 484
SNMP-MPD-MIB::snmpUnknownSecurityModels.0 = Counter32: 0
SNMP-MPD-MIB::snmpInvalidMsgs.0 = Counter32: 0
SNMP-MPD-MIB::snmpUnknownPDUHandlers.0 = Counter32: 0
SNMP-MPD-MIB::snmpUnknownPDUHandlers.0 = No more variables left in this MIB View (It is past the end of the MIB tree)

This SNMP table contains variables related to Flussonic (FLUSSONIC-MIB) and showing stream data, for example, stream name (FLUSSONIC-MIB::sName), the number of stream clients (FLUSSONIC-MIB::sClientCount), time while a stream is active (FLUSSONIC-MIB::sLifeTime) and so on.

Streams are numbered .1, .2, and so on.

Here is the explanation of some variables that might not be obvious:

  • FLUSSONIC-MIB::sStatus

    Returns integers that correspond to the following values:

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

    Consumption (in percent) of the Erlang scheduler resource (average per last minute). Corresponds to the average value from Pulse > Scheduler utilization for last minute.

snmptranslate

To retrieve information about objects and identifiers (OIDs), use the snmptranslate utility with the -Tz flag:

snmptranslate -m lib/snmp2/mibs/FLUSSONIC-MIB.mib -Tz

The utility produces a response similar to this one:

"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"
"flussonicModule"            "1.3.6.1.4.1.36342"
"flussonic"            "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"
"flussonicConformance"            "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"

Objects description is available in the file

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

in the DESCRIPTION fields.