1
0
Fork 0

feat: add Chia support for Flexpool (#8)

- Update Telegraf to 1.19.2
- Use Flexpool API v2
- Update Flexpool miner, pool and worker dashboards accordingly
- Add COIN environment variable for Telegraf ("eth" or "xch" supported)
- Add coin variable in Grafana dashboards

BREAKING CHANGE: measurement names change between API v1 and v2 so the
Grafana dashboards must be updated accordingly to use new names.
Values in the past will not be shown by the updated dashboards.

Signed-off-by: Julien Riou <julien@riou.xyz>
This commit is contained in:
Julien Riou 2021-08-18 10:52:45 +02:00
parent 1bdcac5a88
commit 51374e9a92
No known key found for this signature in database
GPG key ID: FF42D23B580C89F7
10 changed files with 3393 additions and 1072 deletions

View file

@ -55,22 +55,22 @@ Telegraf inputs configurations are stored in [telegraf](telegraf) directory. You
command:
```
docker run --rm -e "MINER_ADDRESS=${MINER_ADDRESS}" \
docker run --rm -e "MINER_ADDRESS=${MINER_ADDRESS}" -e "COIN=${COIN}" \
-v "${PWD}/docker/telegraf.conf:/etc/telegraf/telegraf.conf:ro" -v "${PWD}/telegraf:/etc/telegraf/telegraf.d:ro" \
telegraf:1.18.2 telegraf -test -config /etc/telegraf/telegraf.conf -config-directory /etc/telegraf/telegraf.d
telegraf:1.19.2 telegraf -test -config /etc/telegraf/telegraf.conf -config-directory /etc/telegraf/telegraf.d
```
Example:
```
2021-02-02T14:39:57Z I! Starting Telegraf 1.15.4
> currencies,from=ETH,host=docker,to=EUR value=1171.49 1612276798000000000
> currencies,from=ETH,host=docker,to=USD value=1411.03 1612276798000000000
> flexpool_balance,host=docker,miner=0x3e2251567f87E4B6a3927158AF9c678ECa87a337 result=69375170480923064 1612276798000000000
> flexpool_workers,host=docker,miner=0x3e2251567f87E4B6a3927158AF9c678ECa87a337,name=rig1 effective_hashrate=86666666,invalid_shares=0,reported_hashrate=96304517,stale_shares=3,valid_shares=2008 1612276798000000000
> flexpool_daily_revenue_estimation,host=docker,miner=0x3e2251567f87E4B6a3927158AF9c678ECa87a337 result=6710141993155250 1612276798000000000
> flexpool_paid,host=docker,miner=0x3e2251567f87E4B6a3927158AF9c678ECa87a337 result=0 1612276798000000000
> flexpool_stats,host=docker,miner=0x3e2251567f87E4B6a3927158AF9c678ECa87a337 current_effective_hashrate=86666666,current_reported_hashrate=96304517,daily_effective_hashrate=92962962.625,daily_invalid_shares=0,daily_reported_hashrate=96286435.27777778,daily_stale_shares=3,daily_valid_shares=2008 1612276798000000000
2021-08-18T09:05:45Z I! Starting Telegraf 1.19.2
> flexpool_pool_workers_count,coin=eth,host=docker result=43022 1629277546000000000
> flexpool_pool_blocks,coin=eth,host=docker,miner=0x80072FDaB52a9BED1f77A4f47CE8590eCF2d69Dd difficulty=8038304869759675,luck=0.2723280636238729,mevReward=74193593913914900,number=13046195,reward=2244945505143161600,roundTime=266,staticBlockReward=2000000000000000000,txFeeReward=170751911229246620 1629248941000000000
> flexpool_pool_blocks,coin=eth,host=docker,miner=0xc0224A1F6B7296598a09746b4106612562248F02 difficulty=8018674568139472,luck=0.9997781967425715,mevReward=0,number=13046171,reward=2093729787481399800,roundTime=969,staticBlockReward=2000000000000000000,txFeeReward=93729787481399740 1629248676000000000
> flexpool_pool_blocks,coin=eth,host=docker,miner=0xbe6Fa3d44e4fD10fE05d8e90fD820d1f16EEd9e2 difficulty=8069770590952829,luck=0.7709800334318287,mevReward=56831219018865630,number=13046106,reward=2162018055750582000,roundTime=753,staticBlockReward=2000000000000000000,txFeeReward=105186836731716500 1629247706000000000
> flexpool_pool_blocks,coin=eth,host=docker,miner=0xbF846283Ab2BE655844807FB9DbA086AF202a4d2 difficulty=8046149393032298,luck=1.4665340430067546,mevReward=29415246569886180,number=13046045,reward=2072298444980926500,roundTime=1425,staticBlockReward=2000000000000000000,txFeeReward=42883198411040420 1629246953000000000
> flexpool_pool_blocks,coin=eth,host=docker,miner=0xdF44B7Dce392a0267f315c2c7711200c9620981C difficulty=8050114629713925,luck=1.66199322809835,mevReward=0,number=13045942,reward=2141479945370403800,roundTime=1612,staticBlockReward=2000000000000000000,txFeeReward=141479945370403760 1629245528000000000
> flexpool_pool_blocks,coin=eth,host=docker,miner=0xE1E5372F00Fe6b05FD89c8110D4a29b29B916a7d difficulty=8109240971665971,luck=0.9366252682018412,mevReward=15080560933545792,number=13045830,reward=2088916235271470600,roundTime=918,staticBlockReward=2000000000000000000,txFeeReward=73835674337924700 1629243916000000000
```
Once you are confident with your configuration, reload the container:

View file

@ -32,7 +32,7 @@ services:
entrypoint: telegraf -config /etc/telegraf/telegraf.conf -config-directory /etc/telegraf/telegraf.d
env_file:
- ./docker/environment
image: telegraf:1.18.2
image: telegraf:1.19.2
volumes:
- ./docker/telegraf.conf:/etc/telegraf/telegraf.conf
- ./telegraf:/etc/telegraf/telegraf.d

View file

@ -1,4 +1,5 @@
MINER_ADDRESS=
COIN=
HIVEOS_TOKEN=
ETHERSCAN_TOKEN=
ETHGASSTATION_TOKEN=

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -53,7 +53,7 @@
"gnetId": null,
"graphTooltip": 0,
"id": null,
"iteration": 1617949836004,
"iteration": 1629269888685,
"links": [],
"panels": [
{
@ -82,7 +82,32 @@
"custom": {},
"links": []
},
"overrides": []
"overrides": [
{
"matcher": {
"id": "byRegexp",
"options": "/XCH/"
},
"properties": [
{
"id": "unit",
"value": "bytes"
}
]
},
{
"matcher": {
"id": "byRegexp",
"options": "/ETH/"
},
"properties": [
{
"id": "unit",
"value": "Hs"
}
]
}
]
},
"fill": 1,
"fillGradient": 0,
@ -120,7 +145,7 @@
"steppedLine": false,
"targets": [
{
"alias": "effective",
"alias": "current effective (XCH)",
"groupBy": [
{
"params": [
@ -128,69 +153,6 @@
],
"type": "time"
},
{
"params": [
"miner"
],
"type": "tag"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"measurement": "flexpool_miner_workers",
"orderByTime": "ASC",
"policy": "home",
"query": "SELECT mean(\"effective_hashrate\") FROM \"flexpool_miner_workers\" WHERE (\"miner\" =~ /^$miner$/ AND \"name\" =~ /^$worker$/) AND $timeFilter GROUP BY time($__interval), \"miner\" fill(null)",
"rawQuery": true,
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"effective_hashrate"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": [
{
"key": "miner",
"operator": "=~",
"value": "/^$miner$/"
},
{
"condition": "AND",
"key": "name",
"operator": "=~",
"value": "/^$worker$/"
}
]
},
{
"alias": "reported",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"miner"
],
"type": "tag"
},
{
"params": [
"null"
@ -201,15 +163,13 @@
"measurement": "flexpool_miner_workers",
"orderByTime": "ASC",
"policy": "default",
"query": "SELECT mean(\"reported_hashrate\") FROM \"flexpool_miner_workers\" WHERE (\"miner\" =~ /^$miner$/ AND \"name\" =~ /^$worker$/) AND $timeFilter GROUP BY time($__interval), \"miner\" fill(null)",
"rawQuery": true,
"refId": "B",
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"reported_hashrate"
"currentEffectiveHashrate"
],
"type": "field"
},
@ -221,6 +181,12 @@
],
"tags": [
{
"key": "coin",
"operator": "=~",
"value": "/^$coin$/"
},
{
"condition": "AND",
"key": "miner",
"operator": "=~",
"value": "/^$miner$/"
@ -230,6 +196,195 @@
"key": "name",
"operator": "=~",
"value": "/^$worker$/"
},
{
"condition": "AND",
"key": "coin",
"operator": "=",
"value": "xch"
}
]
},
{
"alias": "average effective (XCH)",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"measurement": "flexpool_miner_workers",
"orderByTime": "ASC",
"policy": "default",
"refId": "B",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"averageEffectiveHashrate"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": [
{
"key": "coin",
"operator": "=~",
"value": "/^$coin$/"
},
{
"condition": "AND",
"key": "miner",
"operator": "=~",
"value": "/^$miner$/"
},
{
"condition": "AND",
"key": "name",
"operator": "=~",
"value": "/^$worker$/"
},
{
"condition": "AND",
"key": "coin",
"operator": "=",
"value": "xch"
}
]
},
{
"alias": "current effective (ETH)",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"measurement": "flexpool_miner_workers",
"orderByTime": "ASC",
"policy": "default",
"refId": "C",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"currentEffectiveHashrate"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": [
{
"key": "coin",
"operator": "=~",
"value": "/^$coin$/"
},
{
"condition": "AND",
"key": "miner",
"operator": "=~",
"value": "/^$miner$/"
},
{
"condition": "AND",
"key": "name",
"operator": "=~",
"value": "/^$worker$/"
},
{
"condition": "AND",
"key": "coin",
"operator": "=",
"value": "eth"
}
]
},
{
"alias": "average effective (ETH)",
"groupBy": [
{
"params": [
"$__interval"
],
"type": "time"
},
{
"params": [
"null"
],
"type": "fill"
}
],
"measurement": "flexpool_miner_workers",
"orderByTime": "ASC",
"policy": "default",
"refId": "D",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"averageEffectiveHashrate"
],
"type": "field"
},
{
"params": [],
"type": "mean"
}
]
],
"tags": [
{
"key": "coin",
"operator": "=~",
"value": "/^$coin$/"
},
{
"condition": "AND",
"key": "miner",
"operator": "=~",
"value": "/^$miner$/"
},
{
"condition": "AND",
"key": "name",
"operator": "=~",
"value": "/^$worker$/"
},
{
"condition": "AND",
"key": "coin",
"operator": "=",
"value": "eth"
}
]
}
@ -254,6 +409,7 @@
},
"yaxes": [
{
"$$hashKey": "object:7053",
"format": "Hs",
"label": null,
"logBase": 1,
@ -262,6 +418,7 @@
"show": true
},
{
"$$hashKey": "object:7054",
"format": "Hs",
"label": null,
"logBase": 1,
@ -294,9 +451,34 @@
}
]
},
"unit": "Hs"
"unit": "short"
},
"overrides": []
"overrides": [
{
"matcher": {
"id": "byRegexp",
"options": "/XCH/"
},
"properties": [
{
"id": "unit",
"value": "bytes"
}
]
},
{
"matcher": {
"id": "byRegexp",
"options": "/ETH/"
},
"properties": [
{
"id": "unit",
"value": "Hs"
}
]
}
]
},
"gridPos": {
"h": 8,
@ -322,7 +504,7 @@
"pluginVersion": "7.3.7",
"targets": [
{
"alias": "hashrate",
"alias": "hashrate (XCH)",
"groupBy": [],
"measurement": "flexpool_miner_workers",
"orderByTime": "ASC",
@ -333,7 +515,7 @@
[
{
"params": [
"effective_hashrate"
"currentEffectiveHashrate"
],
"type": "field"
},
@ -354,6 +536,66 @@
"key": "name",
"operator": "=~",
"value": "/^$worker$/"
},
{
"condition": "AND",
"key": "coin",
"operator": "=~",
"value": "/^$coin$/"
},
{
"condition": "AND",
"key": "coin",
"operator": "=",
"value": "xch"
}
]
},
{
"alias": "hashrate (ETH)",
"groupBy": [],
"measurement": "flexpool_miner_workers",
"orderByTime": "ASC",
"policy": "default",
"refId": "B",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"currentEffectiveHashrate"
],
"type": "field"
},
{
"params": [],
"type": "last"
}
]
],
"tags": [
{
"key": "miner",
"operator": "=~",
"value": "/^$miner$/"
},
{
"condition": "AND",
"key": "name",
"operator": "=~",
"value": "/^$worker$/"
},
{
"condition": "AND",
"key": "coin",
"operator": "=~",
"value": "/^$coin$/"
},
{
"condition": "AND",
"key": "coin",
"operator": "=",
"value": "eth"
}
]
}
@ -382,9 +624,34 @@
}
]
},
"unit": "Hs"
"unit": "short"
},
"overrides": []
"overrides": [
{
"matcher": {
"id": "byRegexp",
"options": "/XCH/"
},
"properties": [
{
"id": "unit",
"value": "bytes"
}
]
},
{
"matcher": {
"id": "byRegexp",
"options": "/ETH/"
},
"properties": [
{
"id": "unit",
"value": "Hs"
}
]
}
]
},
"gridPos": {
"h": 8,
@ -410,18 +677,20 @@
"pluginVersion": "7.3.7",
"targets": [
{
"alias": "hashrate",
"alias": "hashrate (XCH)",
"groupBy": [],
"measurement": "flexpool_miner_workers",
"orderByTime": "ASC",
"policy": "default",
"query": "SELECT last(\"reported_hashrate\") FROM \"flexpool_miner_workers\" WHERE (\"miner\" =~ /^$miner$/ AND \"name\" =~ /^$worker$/) AND $timeFilter",
"rawQuery": false,
"refId": "A",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"reported_hashrate"
"reportedHashrate"
],
"type": "field"
},
@ -442,6 +711,68 @@
"key": "name",
"operator": "=~",
"value": "/^$worker$/"
},
{
"condition": "AND",
"key": "coin",
"operator": "=~",
"value": "/^$coin$/"
},
{
"condition": "AND",
"key": "coin",
"operator": "=",
"value": "xch"
}
]
},
{
"alias": "hashrate (ETH)",
"groupBy": [],
"measurement": "flexpool_miner_workers",
"orderByTime": "ASC",
"policy": "default",
"query": "SELECT last(\"reported_hashrate\") FROM \"flexpool_miner_workers\" WHERE (\"miner\" =~ /^$miner$/ AND \"name\" =~ /^$worker$/) AND $timeFilter",
"rawQuery": false,
"refId": "B",
"resultFormat": "time_series",
"select": [
[
{
"params": [
"reportedHashrate"
],
"type": "field"
},
{
"params": [],
"type": "last"
}
]
],
"tags": [
{
"key": "miner",
"operator": "=~",
"value": "/^$miner$/"
},
{
"condition": "AND",
"key": "name",
"operator": "=~",
"value": "/^$worker$/"
},
{
"condition": "AND",
"key": "coin",
"operator": "=~",
"value": "/^$coin$/"
},
{
"condition": "AND",
"key": "coin",
"operator": "=",
"value": "eth"
}
]
}
@ -511,15 +842,18 @@
"renderer": "flot",
"seriesOverrides": [
{
"alias": "valid",
"$$hashKey": "object:8033",
"alias": "/valid/",
"color": "#56A64B"
},
{
"alias": "stale",
"$$hashKey": "object:8034",
"alias": "/stale/",
"color": "#F2CC0C"
},
{
"alias": "invalid",
"$$hashKey": "object:8035",
"alias": "/invalid/",
"color": "#E02F44"
}
],
@ -552,7 +886,7 @@
[
{
"params": [
"valid_shares"
"validShares"
],
"type": "field"
},
@ -573,6 +907,12 @@
"key": "name",
"operator": "=~",
"value": "/^$worker$/"
},
{
"condition": "AND",
"key": "coin",
"operator": "=~",
"value": "/^$coin$/"
}
]
},
@ -601,7 +941,7 @@
[
{
"params": [
"stale_shares"
"staleShares"
],
"type": "field"
},
@ -622,6 +962,12 @@
"key": "name",
"operator": "=~",
"value": "/^$worker$/"
},
{
"condition": "AND",
"key": "coin",
"operator": "=~",
"value": "/^$coin$/"
}
]
},
@ -671,6 +1017,12 @@
"key": "name",
"operator": "=~",
"value": "/^$worker$/"
},
{
"condition": "AND",
"key": "coin",
"operator": "=~",
"value": "/^$coin$/"
}
]
}
@ -679,7 +1031,7 @@
"timeFrom": null,
"timeRegions": [],
"timeShift": null,
"title": "Daily shares",
"title": "Shares",
"tooltip": {
"shared": true,
"sort": 0,
@ -695,6 +1047,7 @@
},
"yaxes": [
{
"$$hashKey": "object:8054",
"format": "short",
"label": null,
"logBase": 1,
@ -703,6 +1056,7 @@
"show": true
},
{
"$$hashKey": "object:8055",
"format": "short",
"label": null,
"logBase": 1,
@ -773,7 +1127,7 @@
[
{
"params": [
"valid_shares"
"validShares"
],
"type": "field"
},
@ -794,6 +1148,12 @@
"key": "name",
"operator": "=~",
"value": "/^$worker$/"
},
{
"condition": "AND",
"key": "coin",
"operator": "=~",
"value": "/^$coin$/"
}
]
}
@ -863,7 +1223,7 @@
[
{
"params": [
"stale_shares"
"staleShares"
],
"type": "field"
},
@ -884,6 +1244,12 @@
"key": "name",
"operator": "=~",
"value": "/^$worker$/"
},
{
"condition": "AND",
"key": "coin",
"operator": "=~",
"value": "/^$coin$/"
}
]
}
@ -954,7 +1320,7 @@
[
{
"params": [
"invalid_shares"
"invalidShares"
],
"type": "field"
},
@ -975,6 +1341,12 @@
"key": "name",
"operator": "=~",
"value": "/^$worker$/"
},
{
"condition": "AND",
"key": "coin",
"operator": "=~",
"value": "/^$coin$/"
}
]
}
@ -997,7 +1369,28 @@
"allValue": null,
"current": {},
"datasource": "${DS_INFLUXDB}",
"definition": "",
"error": null,
"hide": 0,
"includeAll": false,
"label": null,
"multi": false,
"name": "coin",
"options": [],
"query": "SHOW TAG VALUES FROM flexpool_miner_workers WITH KEY = \"coin\"",
"refresh": 1,
"regex": "",
"skipUrlSync": false,
"sort": 5,
"tagValuesQuery": "",
"tags": [],
"tagsQuery": "",
"type": "query",
"useTags": false
},
{
"allValue": null,
"current": {},
"datasource": "${DS_INFLUXDB}",
"error": null,
"hide": 0,
"includeAll": false,
@ -1005,7 +1398,7 @@
"multi": false,
"name": "miner",
"options": [],
"query": "SHOW TAG VALUES FROM flexpool_miner_workers WITH KEY = \"miner\"",
"query": "SHOW TAG VALUES FROM flexpool_miner_workers WITH KEY = \"miner\" WHERE coin =~ /^$coin$/",
"refresh": 1,
"regex": "",
"skipUrlSync": false,
@ -1042,7 +1435,7 @@
]
},
"time": {
"from": "now-6h",
"from": "now-2d",
"to": "now"
},
"timepicker": {
@ -1061,5 +1454,5 @@
"timezone": "utc",
"title": "Flexpool workers",
"uid": "slcUBSzgz",
"version": 4
"version": 3
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 256 KiB

After

Width:  |  Height:  |  Size: 295 KiB

View file

@ -18,6 +18,26 @@
from = "ETH"
to = "USD"
[[inputs.http]]
name_override = "currencies"
urls = ["https://api.coingecko.com/api/v3/simple/price?ids=chia&vs_currencies=eur"]
data_format = "json"
tagexclude = ["url"]
json_query = "chia"
[inputs.http.tags]
from = "XCH"
to = "EUR"
[[inputs.http]]
name_override = "currencies"
urls = ["https://api.coingecko.com/api/v3/simple/price?ids=chia&vs_currencies=usd"]
data_format = "json"
tagexclude = ["url"]
json_query = "chia"
[inputs.http.tags]
from = "XCH"
to = "USD"
[[processors.rename]]
namepass = ["currencies"]
[[processors.rename.replace]]

View file

@ -1,51 +1,49 @@
[[inputs.http]]
name_override = "flexpool_miner_balance"
urls = ["https://flexpool.io/api/v1/miner/${MINER_ADDRESS}/balance"]
urls = ["https://api.flexpool.io/v2/miner/balance?coin=${COIN}&address=${MINER_ADDRESS}"]
data_format = "json"
tagexclude = ["url"]
[inputs.http.tags]
miner = "${MINER_ADDRESS}"
[[inputs.http]]
name_override = "flexpool_miner_stats"
urls = ["https://flexpool.io/api/v1/miner/${MINER_ADDRESS}/stats"]
data_format = "json"
fieldpass = ["*hashrate", "*shares"]
tagexclude = ["url"]
json_query = "result"
[inputs.http.tags]
miner = "${MINER_ADDRESS}"
coin = "${COIN}"
[[inputs.http]]
name_override = "flexpool_miner_stats"
urls = ["https://api.flexpool.io/v2/miner/stats?coin=${COIN}&address=${MINER_ADDRESS}"]
data_format = "json"
fieldpass = ["*Hashrate", "*Shares"]
tagexclude = ["url"]
json_query = "result"
[inputs.http.tags]
miner = "${MINER_ADDRESS}"
coin = "${COIN}"
[[inputs.http]]
name_override = "flexpool_miner_workers"
urls = ["https://flexpool.io/api/v1/miner/${MINER_ADDRESS}/workers"]
urls = ["https://api.flexpool.io/v2/miner/workers?coin=${COIN}&address=${MINER_ADDRESS}"]
data_format = "json"
tagexclude = ["url"]
fieldpass = ["*hashrate", "*shares"]
fieldpass = ["*Hashrate", "*Shares"]
tag_keys = ["name"]
json_query = "result"
[inputs.http.tags]
miner = "${MINER_ADDRESS}"
coin = "${COIN}"
[[inputs.http]]
name_override = "flexpool_miner_paid"
urls = ["https://flexpool.io/api/v1/miner/${MINER_ADDRESS}/totalPaid"]
data_format = "json"
tagexclude = ["url"]
[inputs.http.tags]
miner = "${MINER_ADDRESS}"
[[inputs.http]]
name_override = "flexpool_miner_daily_revenue_estimation"
urls = ["https://flexpool.io/api/v1/miner/${MINER_ADDRESS}/estimatedDailyRevenue"]
urls = ["https://api.flexpool.io/v2/miner/paymentsStats?coin=${COIN}&address=${MINER_ADDRESS}"]
data_format = "json"
tagexclude = ["url"]
json_query = "result"
[inputs.http.tags]
miner = "${MINER_ADDRESS}"
coin = "${COIN}"
[[inputs.http]]
name_override = "flexpool_miner_payments"
urls = ["https://flexpool.io/api/v1/miner/${MINER_ADDRESS}/payments/?page=0"]
urls = ["https://api.flexpool.io/v2/miner/payments?coin=${COIN}&address=${MINER_ADDRESS}&page=0"]
data_format = "json"
tagexclude = ["url"]
json_query = "result.data"
@ -53,3 +51,4 @@
json_time_key = "timestamp"
[inputs.http.tags]
miner = "${MINER_ADDRESS}"
coin = "${COIN}"

View file

@ -1,18 +1,22 @@
[[inputs.http]]
name_override = "flexpool_pool_block_count"
urls = ["https://flexpool.io/api/v1/pool/blockCount"]
name_override = "flexpool_pool_blocks_chart"
urls = ["https://api.flexpool.io/v2/pool/blocksChart?coin=${COIN}"]
data_format = "json"
tagexclude = ["url"]
json_query = "result"
json_time_format = "unix"
json_time_key = "timestamp"
[inputs.http.tags]
coin = "${COIN}"
[[inputs.http]]
name_override = "flexpool_pool_blocks"
urls = [
"https://flexpool.io/api/v1/pool/blocks/?page=0",
"https://flexpool.io/api/v1/pool/blocks/?page=1",
"https://flexpool.io/api/v1/pool/blocks/?page=2",
"https://flexpool.io/api/v1/pool/blocks/?page=3",
"https://flexpool.io/api/v1/pool/blocks/?page=4"
"https://api.flexpool.io/v2/pool/blocks?coin=${COIN}&page=0",
"https://api.flexpool.io/v2/pool/blocks?coin=${COIN}&page=1",
"https://api.flexpool.io/v2/pool/blocks?coin=${COIN}&page=2",
"https://api.flexpool.io/v2/pool/blocks?coin=${COIN}&page=3",
"https://api.flexpool.io/v2/pool/blocks?coin=${COIN}&page=4"
]
data_format = "json"
tagexclude = ["url"]
@ -20,35 +24,38 @@
json_time_format = "unix"
json_time_key = "timestamp"
tag_keys = ["miner"]
[inputs.http.tags]
coin = "${COIN}"
[[inputs.http]]
name_override = "flexpool_pool_hashrate"
urls = ["https://flexpool.io/api/v1/pool/hashrate"]
urls = ["https://api.flexpool.io/v2/pool/hashrate?coin=${COIN}"]
data_format = "json"
tagexclude = ["url"]
json_query = "result"
[inputs.http.tags]
coin = "${COIN}"
[[inputs.http]]
name_override = "flexpool_pool_miners_online"
urls = ["https://flexpool.io/api/v1/pool/minersOnline"]
name_override = "flexpool_pool_miners_count"
urls = ["https://api.flexpool.io/v2/pool/minerCount?coin=${COIN}"]
data_format = "json"
tagexclude = ["url"]
[inputs.http.tags]
coin = "${COIN}"
[[inputs.http]]
name_override = "flexpool_pool_workers_online"
urls = ["https://flexpool.io/api/v1/pool/workersOnline"]
name_override = "flexpool_pool_workers_count"
urls = ["https://api.flexpool.io/v2/pool/workerCount?coin=${COIN}"]
data_format = "json"
tagexclude = ["url"]
[[inputs.http]]
name_override = "flexpool_pool_average_luck_round_time"
urls = ["https://flexpool.io/api/v1/pool/avgLuckRoundtime"]
data_format = "json"
tagexclude = ["url"]
json_query = "result"
[inputs.http.tags]
coin = "${COIN}"
[[inputs.http]]
name_override = "flexpool_pool_current_luck"
urls = ["https://flexpool.io/api/v1/pool/currentLuck"]
urls = ["https://api.flexpool.io/v2/pool/currentLuck?coin=${COIN}"]
data_format = "json"
tagexclude = ["url"]
[inputs.http.tags]
coin = "${COIN}"