Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/filipspl/mqtt-monitor

pretty print mqtt messages in console
https://github.com/filipspl/mqtt-monitor

console-application iot iot-application iot-monitoring mqtt mqtt-client

Last synced: about 1 month ago
JSON representation

pretty print mqtt messages in console

Awesome Lists containing this project

README

        

console mqtt_monitor
======================

- [About](#about)
- [Features](#features)
- [Installation](#installation)
- [Conda python environment](#conda-python-environment)
- [Set up with pip](#set-up-with-pip)
- [Usage](#usage)
- [Test server](#test-server)
- [Set up your own config](#set-up-your-own-config)
- [Screencast](#screencast)

# About

This is a simple console mqtt topic monitor written in python 3. It allows you to subscribe and listen to a number of mqtt topics and display it in a form of table. Optionally it adds some eye-candies and colors to the presented data.

![](obrazki/README-1de557a3.png)

It was tested (with GitHub Actions CI/CD) and works under:
- OS: Ubuntu, MacOS, and Windows
- Python versions: 3.5, 3.8, and 3.9

CI Status: [![Python application](https://github.com/filipsPL/mqtt-monitor/actions/workflows/python-app.yml/badge.svg)](https://github.com/filipsPL/mqtt-monitor/actions/workflows/python-app.yml)

## Features

- runs in console
- 100% python
- multiple topic subscription
- custom colors and unicode icons for a given keywords:

![](obrazki/README-cd1710ec.png)

- sort by the topic
- window/tab title in gnome/KDE:

![](obrazki/README-b4260277.png)

# Installation

`git clone [email protected]:filipsPL/mqtt-monitor.git`

### Conda python environment

```
conda env create -f conda.yml
conda activate mqttmonitor
```

### Set up with pip

`pip install -r requirements.txt`

# Usage

## Test server

Connect to the test server and wait for messages:

`./mqtt_monitor.py --conf mqtt_monitor.conf.sample`

## Set up your own config

- create a conf file from template `cp mqtt_monitor.conf.sample mqtt_monitor.conf`
- edit `mqtt_monitor.conf`
- run `./mqtt_monitor.py --conf mqtt_monitor.conf`
- enjoy

# Screencast

See the monitor in action:

[![asciicast](https://asciinema.org/a/emHhmWkkbyLIGC8CpPD7xwZBu.svg)](https://asciinema.org/a/emHhmWkkbyLIGC8CpPD7xwZBu)