Project

General

Profile

Monitoring signal strength and SNR with Nagios/Icinga

Added by M M almost 4 years ago

Hi,
I want to monitor signal strength and SNR with Nagios/Icinga using the TVHeadend HTTP API.
The purpose is to watch for some problems on the antenna and/or the input card.

I realised that the SNR and signal strength is reported only when the input card is streaming something so when a client is connected on it.

For this reason I am thinking about writing a Nagios plugin which connect to a stream on a given card and during the stream it connects to the API to check the signal strength.

But the question is how I can connect to a specific input card if I have 8 inputs and all of them are linked to the same network because they have a single antenna?
I ask this because if I connect to a stream on a channel or on a Mux I can't choose a specific input card but the first available is used in the network.

Thank you very much!
Bye


Replies (2)

RE: Monitoring signal strength and SNR with Nagios/Icinga - Added by saen acro almost 4 years ago

dvb-fe-tool -m -g

can do same with parser with your values needed.

Also there is other custom tools as this one:

./feinfo-test /dev/dvb/adapter1/frontend3
Frontend: /dev/dvb/adapter1/frontend3
DVB API: 5.11
Frontend: ST STV0367 DDB DVB-C/T
Delivery system: dvb-c dvb-t
Frequency range: 48000 .. 864000
Symbolrate range: 870 .. 11700
Frontend capabilities: 0xc002feaf
[src/fe/status.rs:386] &self.props = [
    DtvProperty {
        cmd: "DTV_DELIVERY_SYSTEM",
        data: 3,
        result: 0,
    },
    DtvProperty {
        cmd: "DTV_MODULATION",
        data: 3,
        result: 0,
    },
    DtvProperty {
        cmd: "DTV_STAT_SIGNAL_STRENGTH",
        stats: [
            DtvStats {
                scale: "FE_SCALE_NOT_AVAILABLE",
                value: "not available",
            },
        ],
        result: 0,
    },
    DtvProperty {
        cmd: "DTV_STAT_CNR",
        stats: [
            DtvStats {
                scale: "FE_SCALE_DECIBEL",
                value: 27.987,
            },
        ],
        result: 0,
    },
    DtvProperty {
        cmd: "DTV_STAT_PRE_ERROR_BIT_COUNT",
        stats: [],
        result: 0,
    },
    DtvProperty {
        cmd: "DTV_STAT_ERROR_BLOCK_COUNT",
        stats: [
            DtvStats {
                scale: "FE_SCALE_COUNTER",
                value: 0,
            },
        ],
        result: 0,
    },
]
Status: LOCK dvb-t | Signal 0.00dBm (0%) | Quality 27.99dB (100%) | BER:- | UNC:0

RE: Monitoring signal strength and SNR with Nagios/Icinga - Added by M M almost 4 years ago

Thanks!

I installed dvb-fe-tool but I see that `-m` option is not valid:

[root@streamer2 ~]# dvb-fe-tool -m -g
dvb-fe-tool: invalid option -- 'm'
Try `dvb-fe-tool --help' or `dvb-fe-tool --usage' for more information.

And if I run dvb-fe-tool without any option it tells that the adapter is busy (TVHeadend is using it):

[root@streamer2 ~]# dvb-fe-tool
ERROR    Device or resource busy while opening /dev/dvb/adapter0/frontend0

All adapters are used by TVHeadend everytime.
Isn't any way to do what I need directly from TVHeadend?

Where I can find the feinfo-test command?

Thank you very much!

    (1-2/2)