silence-monitor

Silence Monitor

The Silence Monitor connects to a stream for a configured duration and verifies, that the stream is not silent. It can be useful for monitoring audio streams via Icinga or Nagios. The script conforms to the interface standard for monitoring plugins.

Currently only MP3 streams are supported. Additional encodings can be easily added, if they are supported by the GStreamer framework.

Dependencies

On a Debian system you may simply run the following:

apt install --no-install-recommends python3-gst-1.0 gstreamer1.0-plugins-good

Usage

  1. clone this repository somewhere on your monitoring host
  2. add the following lines to your icinga/nagios configuration:
    const PluginDirSilenceMonitor = "PATH_TO_THE_CLONED_REPOSITORY"
    include PluginDirSilenceMonitor + "/icinga.conf"
  3. add one or more stream descriptions to their corresponding hosts:
    object Host "foo" {
    import "generic-host"
    address = "..."
    vars.silence_monitor["my_stream"] = {"url" = "http://stream.example.org:8000/my_stream.mp3"}
    }

License

Silence Monitor is licensed under the GNU GPL v3 or later.