Onkyo Receiver Service Monitoring and remediation with Python/Grafana/InfluxDB and Vera


If you have an Onkyo receiver, you probably notice odd issues with the network stack at times, causing various services (Spotify, DLNA, Etc) to stop responding to requests. The only resolution for fixing this state on the receiver is a physical power cycle (A soft reboot will not work). This is a well documented issue. It’s been blamed on faulty hardware, but it’s really a bug in the network stack somewhere causing this state.
Continue reading “Onkyo Receiver Service Monitoring and remediation with Python/Grafana/InfluxDB and Vera”

Monitoring your APC UPS with the TICK Stack and Grafana

Recently I acquired a second hand APC Smart-UPS 3000. With the cheap addition of a network module SNMP V2/V3 support is easily added to this unit.

The next step is setting up monitoring. To do this I’m going to use parts of the TICK stack, primarily Telegraf (for polling and data collection) and Influxdb (for backend database) – Here’s a short introduction on those modules. Continue reading to see the tasks required to set this up.


Continue reading “Monitoring your APC UPS with the TICK Stack and Grafana”

Using Curator to prune Elasticsearch Indices

If you are using Elasticsearch as a database to store data from various sources, you are going to need to a way to prune the indices before they end up filling your drive. Using Curator is one way to go about this task.

The following instructions are based on a Ubuntu LTS 16.04 install with Elasticsearch 5.6 locally installed on the same machine.

  • First, Add the source to your apt repository list –

  • Update your package listing and install the curator package

The Curator application uses the popular YAML format as a basis for it’s configuration files. We will need to create two files at a minimum to get going.

  • First, create a blank file for the base configuration –

Paste in the following basic configuration (Assuming your Elasticsearch sever is on the same machine as curator)

Then, create another “action file” that holds the action we want to run. Here, I’m using a slightly modified action from an example that will delete any indice older than 30 days that starts with “netflow-“. Modify this file to suit your needs. We will call it “delete_indices.yml”

Contents of file

We can then run the configuration file with the –dry-run parameter to simulate the actions taken. Remove –dry-run when you are ready to run it for real!

To run this on a schedule, simply add it to crontab. This will run it daily at midnight. Open your crontab with

Add these lines –