Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/connor4312/kiln-monitor
A nice UI for monitoring Bartell kilns
https://github.com/connor4312/kiln-monitor
Last synced: 1 day ago
JSON representation
A nice UI for monitoring Bartell kilns
- Host: GitHub
- URL: https://github.com/connor4312/kiln-monitor
- Owner: connor4312
- Created: 2019-07-03T00:39:58.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2019-11-05T02:13:18.000Z (about 5 years ago)
- Last Synced: 2024-10-25T22:18:42.360Z (18 days ago)
- Language: C#
- Size: 30.3 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Peet.KilnMonitor
This project is a simple set of Azure functions which read pottery kiln information from the Bartlett API, and insert it into an InfluxDB instance which can be monitored and observed with tools such as [Grafana](https://grafana.com/). It has four functions:
1. `StartKilnMonitoring.Get` is a small UI for entering Bartlett credentials. This calls...
2. `StartKilnMonitoring.Post` accepts credentials sent from the UI, and exchanges them for an access token. It then triggers the monitoring loop, which is a [Durable Function](https://docs.microsoft.com/en-us/azure/azure-functions/durable/durable-functions-overview).
3. `KilnMonitoringLoop.OrchestrateLoop` is the durable function orchestrator. The pattern here is identical to [the use-case in their docs](https://docs.microsoft.com/en-us/azure/azure-functions/durable/durable-functions-overview#monitoring)--it calls a query function every minute, until we see that the kiln has completed its cycle or was otherwise shut down.
4. `KilnMonitoringLoop.RunQuery` is called by the orchestration loop. It queries the Bartless API, then parses and inserts results into the Influx collector.
To run the app, you should set the `KILN_INFLUX_ENDPOINT`, `KILN_INFLUX_USERNAME`, `KILN_INFLUX_PASSWORD` in your app settings (environment variables) in order to ingest data.