From 8b8da8d0f79e5959b53a7572f7a0b7a7b1b44ba0 Mon Sep 17 00:00:00 2001 From: Pieter Hollander Date: Mon, 18 Mar 2024 11:23:35 +0100 Subject: [PATCH] Add additional descriptions and installation instructions to README. --- README.md | 39 ++++++++++++++++++++++++++++++++++++++- 1 file changed, 38 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 0b855bd..e2ae92d 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,29 @@ OpenDTU logger connects to the OpenDTU livedata websocket and captures metrics. These metrics are inserted into a PostgreSQL database. Optionally, TimescaleDB can be used. -## PostgreSQL setup +## Install instructions + +### Docker + +```sh +docker pull git.hollander.online/energy/opendtu-logger:0.0 +``` + +Preferably, run the Docker image using the Docker compose examples provided in the `./docker` folder. + +### Binary + +Go to the [releases page](https://git.hollander.online/energy/opendtu-logger/releases) and download the most recent stable release. + +#### Running example + +```sh +REMOTE_URL="opendtu:80" DB_URL="host=localhost port=5432 user=postgres password=secret dbname=dtu sslmode=disable" TIMESCALEDB_ENABLED="true" TZ="Europe/Amsterdam" ./opendtu-logger +``` + +### PostgreSQL setup + +The OpenDTU logger logs to a PostgreSQL database and optionally supports TimescaleDB. Create a separate database and user using the following commands. ```sql CREATE DATABASE opendtu_logger; @@ -22,9 +44,24 @@ CREATE EXTENSION OF NOT EXISTS timescaledb; ## Environment variables +The following environment variables are required for OpenDTU Logger to be configured. + ```conf REMOTE_URL="opendtu:80" DB_URL="host=localhost port=5432 user=postgres password=secret dbname=dtu sslmode=disable" TIMESCALEDB_ENABLED="true" TZ="Europe/Amsterdam" ``` + +## Grafana + +The `grafana` folder contains example dashboards. + +- The `opendtu_` dashboards contain visualisations for each table the OpenDTU logger records to. +- `PV.json` is a dashboard which combines the visualisations of each table that I found to be most useful. +- `Zonnepanelen.json` is the same as `PV.json`, but in Dutch language. + +## Known issues + +- The logger will currently log every event posted by OpenDTU to the websocket. Checks still need to be added to determine the uniqueness of an event. For more information, see also [this OpenDTU Github issue](https://github.com/tbnobody/OpenDTU/issues/1800). +- Upon restart of the OpenDTU, OpenDTU Logger will need to be restarted manually as well. Automatic reconnection logic is a work in progress.