|
@ -1,20 +1,18 @@ |
|
|
# what is it? |
|
|
# what is it? |
|
|
|
|
|
|
|
|
![alt text](screenshot.png "Logo Title Text 1") |
|
|
|
|
|
|
|
|
|
|
|
* a set of tools to export your personal WSJT-X |
|
|
* a set of tools to export your personal WSJT-X |
|
|
* live reception data into prometheus or mysql |
|
|
* live reception data into prometheus or mysql |
|
|
* historical reception data (since 2019) into mysql |
|
|
* historical reception data (since 2019) into mysql |
|
|
* a tool to poll pskreporter and export your personal |
|
|
* a tool to poll pskreporter and export your personal |
|
|
* live transmission data to prometheus or mysql |
|
|
* live transmission data into prometheus or mysql |
|
|
|
|
|
|
|
|
every time your wsjtx is/was running you are/were generating nice data points, which can be queried using grafana. |
|
|
every time your wsjtx is/was running you are/were generating nice data points, which can be queried using grafana. |
|
|
this can be very interesting to evaluate your **personal** hf conditions from the current and the past. |
|
|
this can be very interesting to evaluate your **personal** hf conditions from the current and the past. |
|
|
|
|
|
|
|
|
some use cases: |
|
|
some use cases: |
|
|
* choose dxcc, band, mode and timeframe in all combinations so see when your were successfully able to receive and transmit, to plan future activities |
|
|
* choose dxcc, band, mode and timeframe in all combinations so see when your were successfully able to receive and transmit, to plan future activities |
|
|
* compare input of different station like for antenna comparions |
|
|
* compare data of different station for antenna comparions etc. |
|
|
* have nice wallboard for contesting or dxpedition |
|
|
* have a nice and useful wallboard for contesting or dxpedition |
|
|
* display rx/tx data on a map with custom timespan and filters |
|
|
* display rx/tx data on a map with custom timespan and filters |
|
|
* compare hf propagration forecasts to your personal situation |
|
|
* compare hf propagration forecasts to your personal situation |
|
|
* use grafana alerts or prometheus alertmanager to send yourself alerts when your stations receives something interesting |
|
|
* use grafana alerts or prometheus alertmanager to send yourself alerts when your stations receives something interesting |
|
@ -28,7 +26,7 @@ have fun! |
|
|
|
|
|
|
|
|
## prerequisites |
|
|
## prerequisites |
|
|
|
|
|
|
|
|
* ALL.TXT with interesting data and/or running hamradio station to provide live data |
|
|
* one or more ALL.TXT with interesting data and/or running hamradio station to provide live data |
|
|
* grafana |
|
|
* grafana |
|
|
* prometheus or mysql |
|
|
* prometheus or mysql |
|
|
|
|
|
|
|
@ -40,8 +38,6 @@ have fun! |
|
|
* **wsjtx-exporter** |
|
|
* **wsjtx-exporter** |
|
|
* follows live traffice in ALL.txt |
|
|
* follows live traffice in ALL.txt |
|
|
* supports prometheus and mysql |
|
|
* supports prometheus and mysql |
|
|
* **alltxt2csv** |
|
|
|
|
|
* reads whole ALL.txt since 2019 and creates csv-file which can be imported into mysql |
|
|
|
|
|
* **misc** |
|
|
* **misc** |
|
|
* sample dashboards |
|
|
* sample dashboards |
|
|
* sql table definitions |
|
|
* sql table definitions |
|
@ -58,6 +54,7 @@ pro |
|
|
* you get nicer graphs with counters and bars if you ask me |
|
|
* you get nicer graphs with counters and bars if you ask me |
|
|
* you can use alertmanager if you want advanced alerting |
|
|
* you can use alertmanager if you want advanced alerting |
|
|
* optimized for timeseries data |
|
|
* optimized for timeseries data |
|
|
|
|
|
|
|
|
con |
|
|
con |
|
|
* not designed for keeping long timeseries (weeks or some months are fine) |
|
|
* not designed for keeping long timeseries (weeks or some months are fine) |
|
|
* not possible to import historical data |
|
|
* not possible to import historical data |
|
@ -69,10 +66,11 @@ pro: |
|
|
* you can import your ALL.txt since 2019 |
|
|
* you can import your ALL.txt since 2019 |
|
|
* you can store a lot of data over a long timeframe |
|
|
* you can store a lot of data over a long timeframe |
|
|
* you can propably build more complex queries in sql |
|
|
* you can propably build more complex queries in sql |
|
|
|
|
|
|
|
|
con: |
|
|
con: |
|
|
* in comparison to prometheus not optimized for timeseries, but still good enough |
|
|
* in comparison to prometheus not optimized for timeseries, but still good enough |
|
|
* gauge based graphs are not as nice as counter/bars if you ask me |
|
|
* gauge based graphs are not as nice as counter/bars if you ask me |
|
|
* you can use *only* graphanas internal alerting |
|
|
* you can use *only* grafanas internal alerting (or do something else) |
|
|
|
|
|
|
|
|
both allow distributed setups with multiple wsjtx instances submitting their data to a central prometheus or mysql service. |
|
|
both allow distributed setups with multiple wsjtx instances submitting their data to a central prometheus or mysql service. |
|
|
you can as well run both in parallel and use prometheus for a live overview and mysql for historical evaluations. |
|
|
you can as well run both in parallel and use prometheus for a live overview and mysql for historical evaluations. |
|
@ -95,7 +93,7 @@ thats quite normal as there are propably a lot of strange/broken messages in you |
|
|
|
|
|
|
|
|
### does it work with wsjt-x 2.3.0.RC2? |
|
|
### does it work with wsjt-x 2.3.0.RC2? |
|
|
|
|
|
|
|
|
no, there is a bug which prevents the ALL.TXT to contain them timestamp, but it should be fixed in the next release. |
|
|
no, there is a bug which prevents the ALL.TXT to contain the timestamp, but it should be fixed in the next release. |
|
|
|
|
|
|
|
|
### what is the state of this? |
|
|
### what is the state of this? |
|
|
|
|
|
|
|
@ -106,7 +104,7 @@ feedback and pull requests are highly appreciated! |
|
|
here be dragons: |
|
|
here be dragons: |
|
|
* callsign lookup performance done with regex in one goroutine is unneccessary slow for alltxt2csv |
|
|
* callsign lookup performance done with regex in one goroutine is unneccessary slow for alltxt2csv |
|
|
* grids for ALL.TXT entries are always looked up by dxcc instead if being tracked in the file |
|
|
* grids for ALL.TXT entries are always looked up by dxcc instead if being tracked in the file |
|
|
* there is a lot of space for improvements for the dashboards |
|
|
* there is a lot of room for improvements in the dashboards |
|
|
|
|
|
|
|
|
### grafana says too many rows for mysql datasource |
|
|
### grafana says too many rows for mysql datasource |
|
|
|
|
|
|
|
@ -159,5 +157,7 @@ alerting |
|
|
|
|
|
|
|
|
* WSJT-X, Grafana, Prometheus, MySQL Teams |
|
|
* WSJT-X, Grafana, Prometheus, MySQL Teams |
|
|
* Philip Gladstone for pskreporter.info |
|
|
* Philip Gladstone for pskreporter.info |
|
|
* Todd Neal for his nice work on https://github.com/tzneal/ham-go |
|
|
* Todd Neal for https://github.com/tzneal/ham-go |
|
|
* Stefan Prodan for his nice work on https://github.com/stefanprodan/dockprom |
|
|
* Stefan Prodan for https://github.com/stefanprodan/dockprom |
|
|
|
|
|
* Markus Lindenberg DO8ML for helping with a lot of stuff |
|
|
|
|
|
* Sebastian Schaumann DL7LE for testing and a lot of good ideas and questions |
|
|