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: 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" \ -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: Example:
``` ```
2021-02-02T14:39:57Z I! Starting Telegraf 1.15.4 2021-08-18T09:05:45Z I! Starting Telegraf 1.19.2
> currencies,from=ETH,host=docker,to=EUR value=1171.49 1612276798000000000 > flexpool_pool_workers_count,coin=eth,host=docker result=43022 1629277546000000000
> currencies,from=ETH,host=docker,to=USD value=1411.03 1612276798000000000 > 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_balance,host=docker,miner=0x3e2251567f87E4B6a3927158AF9c678ECa87a337 result=69375170480923064 1612276798000000000 > 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_workers,host=docker,miner=0x3e2251567f87E4B6a3927158AF9c678ECa87a337,name=rig1 effective_hashrate=86666666,invalid_shares=0,reported_hashrate=96304517,stale_shares=3,valid_shares=2008 1612276798000000000 > 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_daily_revenue_estimation,host=docker,miner=0x3e2251567f87E4B6a3927158AF9c678ECa87a337 result=6710141993155250 1612276798000000000 > 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_paid,host=docker,miner=0x3e2251567f87E4B6a3927158AF9c678ECa87a337 result=0 1612276798000000000 > 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_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 > 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: 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 entrypoint: telegraf -config /etc/telegraf/telegraf.conf -config-directory /etc/telegraf/telegraf.d
env_file: env_file:
- ./docker/environment - ./docker/environment
image: telegraf:1.18.2 image: telegraf:1.19.2
volumes: volumes:
- ./docker/telegraf.conf:/etc/telegraf/telegraf.conf - ./docker/telegraf.conf:/etc/telegraf/telegraf.conf
- ./telegraf:/etc/telegraf/telegraf.d - ./telegraf:/etc/telegraf/telegraf.d

View file

@ -1,4 +1,5 @@
MINER_ADDRESS= MINER_ADDRESS=
COIN=
HIVEOS_TOKEN= HIVEOS_TOKEN=
ETHERSCAN_TOKEN= ETHERSCAN_TOKEN=
ETHGASSTATION_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, "gnetId": null,
"graphTooltip": 0, "graphTooltip": 0,
"id": null, "id": null,
"iteration": 1617949836004, "iteration": 1629269888685,
"links": [], "links": [],
"panels": [ "panels": [
{ {
@ -82,7 +82,32 @@
"custom": {}, "custom": {},
"links": [] "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, "fill": 1,
"fillGradient": 0, "fillGradient": 0,
@ -120,7 +145,7 @@
"steppedLine": false, "steppedLine": false,
"targets": [ "targets": [
{ {
"alias": "effective", "alias": "current effective (XCH)",
"groupBy": [ "groupBy": [
{ {
"params": [ "params": [
@ -128,69 +153,6 @@
], ],
"type": "time" "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": [ "params": [
"null" "null"
@ -201,15 +163,13 @@
"measurement": "flexpool_miner_workers", "measurement": "flexpool_miner_workers",
"orderByTime": "ASC", "orderByTime": "ASC",
"policy": "default", "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)", "refId": "A",
"rawQuery": true,
"refId": "B",
"resultFormat": "time_series", "resultFormat": "time_series",
"select": [ "select": [
[ [
{ {
"params": [ "params": [
"reported_hashrate" "currentEffectiveHashrate"
], ],
"type": "field" "type": "field"
}, },
@ -221,6 +181,12 @@
], ],
"tags": [ "tags": [
{ {
"key": "coin",
"operator": "=~",
"value": "/^$coin$/"
},
{
"condition": "AND",
"key": "miner", "key": "miner",
"operator": "=~", "operator": "=~",
"value": "/^$miner$/" "value": "/^$miner$/"
@ -230,6 +196,195 @@
"key": "name", "key": "name",
"operator": "=~", "operator": "=~",
"value": "/^$worker$/" "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": [ "yaxes": [
{ {
"$$hashKey": "object:7053",
"format": "Hs", "format": "Hs",
"label": null, "label": null,
"logBase": 1, "logBase": 1,
@ -262,6 +418,7 @@
"show": true "show": true
}, },
{ {
"$$hashKey": "object:7054",
"format": "Hs", "format": "Hs",
"label": null, "label": null,
"logBase": 1, "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": { "gridPos": {
"h": 8, "h": 8,
@ -322,7 +504,7 @@
"pluginVersion": "7.3.7", "pluginVersion": "7.3.7",
"targets": [ "targets": [
{ {
"alias": "hashrate", "alias": "hashrate (XCH)",
"groupBy": [], "groupBy": [],
"measurement": "flexpool_miner_workers", "measurement": "flexpool_miner_workers",
"orderByTime": "ASC", "orderByTime": "ASC",
@ -333,7 +515,7 @@
[ [
{ {
"params": [ "params": [
"effective_hashrate" "currentEffectiveHashrate"
], ],
"type": "field" "type": "field"
}, },
@ -354,6 +536,66 @@
"key": "name", "key": "name",
"operator": "=~", "operator": "=~",
"value": "/^$worker$/" "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": { "gridPos": {
"h": 8, "h": 8,
@ -410,18 +677,20 @@
"pluginVersion": "7.3.7", "pluginVersion": "7.3.7",
"targets": [ "targets": [
{ {
"alias": "hashrate", "alias": "hashrate (XCH)",
"groupBy": [], "groupBy": [],
"measurement": "flexpool_miner_workers", "measurement": "flexpool_miner_workers",
"orderByTime": "ASC", "orderByTime": "ASC",
"policy": "default", "policy": "default",
"query": "SELECT last(\"reported_hashrate\") FROM \"flexpool_miner_workers\" WHERE (\"miner\" =~ /^$miner$/ AND \"name\" =~ /^$worker$/) AND $timeFilter",
"rawQuery": false,
"refId": "A", "refId": "A",
"resultFormat": "time_series", "resultFormat": "time_series",
"select": [ "select": [
[ [
{ {
"params": [ "params": [
"reported_hashrate" "reportedHashrate"
], ],
"type": "field" "type": "field"
}, },
@ -442,6 +711,68 @@
"key": "name", "key": "name",
"operator": "=~", "operator": "=~",
"value": "/^$worker$/" "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", "renderer": "flot",
"seriesOverrides": [ "seriesOverrides": [
{ {
"alias": "valid", "$$hashKey": "object:8033",
"alias": "/valid/",
"color": "#56A64B" "color": "#56A64B"
}, },
{ {
"alias": "stale", "$$hashKey": "object:8034",
"alias": "/stale/",
"color": "#F2CC0C" "color": "#F2CC0C"
}, },
{ {
"alias": "invalid", "$$hashKey": "object:8035",
"alias": "/invalid/",
"color": "#E02F44" "color": "#E02F44"
} }
], ],
@ -552,7 +886,7 @@
[ [
{ {
"params": [ "params": [
"valid_shares" "validShares"
], ],
"type": "field" "type": "field"
}, },
@ -573,6 +907,12 @@
"key": "name", "key": "name",
"operator": "=~", "operator": "=~",
"value": "/^$worker$/" "value": "/^$worker$/"
},
{
"condition": "AND",
"key": "coin",
"operator": "=~",
"value": "/^$coin$/"
} }
] ]
}, },
@ -601,7 +941,7 @@
[ [
{ {
"params": [ "params": [
"stale_shares" "staleShares"
], ],
"type": "field" "type": "field"
}, },
@ -622,6 +962,12 @@
"key": "name", "key": "name",
"operator": "=~", "operator": "=~",
"value": "/^$worker$/" "value": "/^$worker$/"
},
{
"condition": "AND",
"key": "coin",
"operator": "=~",
"value": "/^$coin$/"
} }
] ]
}, },
@ -671,6 +1017,12 @@
"key": "name", "key": "name",
"operator": "=~", "operator": "=~",
"value": "/^$worker$/" "value": "/^$worker$/"
},
{
"condition": "AND",
"key": "coin",
"operator": "=~",
"value": "/^$coin$/"
} }
] ]
} }
@ -679,7 +1031,7 @@
"timeFrom": null, "timeFrom": null,
"timeRegions": [], "timeRegions": [],
"timeShift": null, "timeShift": null,
"title": "Daily shares", "title": "Shares",
"tooltip": { "tooltip": {
"shared": true, "shared": true,
"sort": 0, "sort": 0,
@ -695,6 +1047,7 @@
}, },
"yaxes": [ "yaxes": [
{ {
"$$hashKey": "object:8054",
"format": "short", "format": "short",
"label": null, "label": null,
"logBase": 1, "logBase": 1,
@ -703,6 +1056,7 @@
"show": true "show": true
}, },
{ {
"$$hashKey": "object:8055",
"format": "short", "format": "short",
"label": null, "label": null,
"logBase": 1, "logBase": 1,
@ -773,7 +1127,7 @@
[ [
{ {
"params": [ "params": [
"valid_shares" "validShares"
], ],
"type": "field" "type": "field"
}, },
@ -794,6 +1148,12 @@
"key": "name", "key": "name",
"operator": "=~", "operator": "=~",
"value": "/^$worker$/" "value": "/^$worker$/"
},
{
"condition": "AND",
"key": "coin",
"operator": "=~",
"value": "/^$coin$/"
} }
] ]
} }
@ -863,7 +1223,7 @@
[ [
{ {
"params": [ "params": [
"stale_shares" "staleShares"
], ],
"type": "field" "type": "field"
}, },
@ -884,6 +1244,12 @@
"key": "name", "key": "name",
"operator": "=~", "operator": "=~",
"value": "/^$worker$/" "value": "/^$worker$/"
},
{
"condition": "AND",
"key": "coin",
"operator": "=~",
"value": "/^$coin$/"
} }
] ]
} }
@ -954,7 +1320,7 @@
[ [
{ {
"params": [ "params": [
"invalid_shares" "invalidShares"
], ],
"type": "field" "type": "field"
}, },
@ -975,6 +1341,12 @@
"key": "name", "key": "name",
"operator": "=~", "operator": "=~",
"value": "/^$worker$/" "value": "/^$worker$/"
},
{
"condition": "AND",
"key": "coin",
"operator": "=~",
"value": "/^$coin$/"
} }
] ]
} }
@ -997,7 +1369,28 @@
"allValue": null, "allValue": null,
"current": {}, "current": {},
"datasource": "${DS_INFLUXDB}", "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, "error": null,
"hide": 0, "hide": 0,
"includeAll": false, "includeAll": false,
@ -1005,7 +1398,7 @@
"multi": false, "multi": false,
"name": "miner", "name": "miner",
"options": [], "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, "refresh": 1,
"regex": "", "regex": "",
"skipUrlSync": false, "skipUrlSync": false,
@ -1042,7 +1435,7 @@
] ]
}, },
"time": { "time": {
"from": "now-6h", "from": "now-2d",
"to": "now" "to": "now"
}, },
"timepicker": { "timepicker": {
@ -1061,5 +1454,5 @@
"timezone": "utc", "timezone": "utc",
"title": "Flexpool workers", "title": "Flexpool workers",
"uid": "slcUBSzgz", "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" from = "ETH"
to = "USD" 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]] [[processors.rename]]
namepass = ["currencies"] namepass = ["currencies"]
[[processors.rename.replace]] [[processors.rename.replace]]

View file

@ -1,51 +1,49 @@
[[inputs.http]] [[inputs.http]]
name_override = "flexpool_miner_balance" 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" data_format = "json"
tagexclude = ["url"] 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" json_query = "result"
[inputs.http.tags] [inputs.http.tags]
miner = "${MINER_ADDRESS}" 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]] [[inputs.http]]
name_override = "flexpool_miner_workers" 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" data_format = "json"
tagexclude = ["url"] tagexclude = ["url"]
fieldpass = ["*hashrate", "*shares"] fieldpass = ["*Hashrate", "*Shares"]
tag_keys = ["name"] tag_keys = ["name"]
json_query = "result" json_query = "result"
[inputs.http.tags] [inputs.http.tags]
miner = "${MINER_ADDRESS}" miner = "${MINER_ADDRESS}"
coin = "${COIN}"
[[inputs.http]] [[inputs.http]]
name_override = "flexpool_miner_paid" name_override = "flexpool_miner_paid"
urls = ["https://flexpool.io/api/v1/miner/${MINER_ADDRESS}/totalPaid"] urls = ["https://api.flexpool.io/v2/miner/paymentsStats?coin=${COIN}&address=${MINER_ADDRESS}"]
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"]
data_format = "json" data_format = "json"
tagexclude = ["url"] tagexclude = ["url"]
json_query = "result"
[inputs.http.tags] [inputs.http.tags]
miner = "${MINER_ADDRESS}" miner = "${MINER_ADDRESS}"
coin = "${COIN}"
[[inputs.http]] [[inputs.http]]
name_override = "flexpool_miner_payments" 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" data_format = "json"
tagexclude = ["url"] tagexclude = ["url"]
json_query = "result.data" json_query = "result.data"
@ -53,3 +51,4 @@
json_time_key = "timestamp" json_time_key = "timestamp"
[inputs.http.tags] [inputs.http.tags]
miner = "${MINER_ADDRESS}" miner = "${MINER_ADDRESS}"
coin = "${COIN}"

View file

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