Monitoring My EPSON XP-8600 Series Printer using Prometheus and Grafana

Introduction

Playing around with my Pi-hole Raspberry Pi, I thought I could expand its mission and started looking into Grafana and Prometheus. One thing leading to another, I though why not monitor my printer. Running out of ink is very common. It’s always when you need that print, that you can’t do it.

In this post, I’ll show you how I did it, and consider this a proof-of-concept. We’ll assume here that you already have a running instance of Grafana and Prometheus. If not, you can find plenty of good articles online on how to do it.

High-level diagram of the setup

My setup at the time of writing:

  • Raspberry Pi 4 (4GB) running Bullseye version
  • Grafana v9.2.6
  • Prometheus v2.37.3 and snmp_exporter v0.21.0
  • EPSON XP-8600 Series printer

The EPSON Printer

First, let’s ensure we got the SNMP capability enabled. Connect to the web administration interface (it’s easier than the LCD screen on the printer itself) using its IP address, e.g. https://10.0.0.10Note that if you had not previously set an Administrator password you will be prompted to do so, for obvious security reasons.

Verify SNMP v1/v2c is enabled with the Read-Only public community (SNMPv3 is also available, for which you can configure stronger Authentication and Encryption settings, but for the purpose of this test, we’ll stick with v2c).

Prometheus SNMP Exporter

Now lets install snmp_exporter, which will help us retrieve the data from our printer. Binaries can be downloaded from the Github releases page and need no special installation.

 $ wget https://github.com/prometheus/snmp_exporter/releases/download/v0.21.0/snmp_exporter-0.21.0.linux-armv7.tar.gz
$ tar -xzvf snmp_exporter-0.21.0.linux-armv7.tar.gz
$ mv snmp_exporter-0.21.0.linux-armv7 snmp_exporter
$ rm snmp_exporter-0.21.0.linux-armv7.tar.gz

This exporter is the recommended way to expose SNMP data in a format which Prometheus can ingest. The default configuration file name is snmp.yml and should not be edited by hand. If you need to change it, see…

Create a Verified Keybase Link on your Mastodon profile

Connecting Your Raspberry Pi to the IBM Watson IoT Platform

Protecting the Family — Blocking one ad at a time with Pi-Hole®

Looking to Contribute to Open Source? My Top 5 Tips to Get Started

Xavier «X» Santolaria

Cloud Security | IBM Inventor | IBM AoT Member | Open Source Advocate | ex-OpenBSD | https://infosec.exchange/@0x58 | https://0x58.substack.com