So I tried to modify tplink.py to return {"emeter":{"get_realtime":{"current":%c%,"voltage":%v%,"power":%p%,"total":0,"err_code":0}}} For sonoffs, Obviously with replaced tokens, but I guess you don't really call tplink.py from your script, but handle everyhting internally or maybe you do call some commands before {"emeter":{"get_realtime":{}}} which I also should fake output ? I'm to lazy to sniff the traffic right now I looked into the official API and I can easily use it, but then I found this https://blog.ipsumdomus.com/sonoff-switch-complete-hack-without-firmware-upgrade-1b2d6632c01, which seems even easier. Coming week I'll give it a go
|
|
|
So I tried to modify tplink.py to return {"emeter":{"get_realtime":{"current":%c%,"voltage":%v%,"power":%p%,"total":0,"err_code":0}}} For sonoffs, Obviously with replaced tokens, but I guess you don't really call tplink.py from your script, but handle everyhting internally or maybe you do call some commands before {"emeter":{"get_realtime":{}}} which I also should fake output ? I'm to lazy to sniff the traffic right now Hey, I'll pick this up this week
|
|
|
I'm currently on 3.1 dev - I already figured a lot of stuff I had issues with. Now my nice to have list: Multiple fiat currencies for power consumption, profitability and "quote and marketcap" - I have no idea how to implement this and probably I'm only one who cares Track different currency pairs and market cap - but I guess i can add different dataset for this, i'm really new to grafana My feature reqest:custom power monitoring python scripts "api"Ad profitability (at least profitability history): It is still not showing anything for me - I messed up and changed wallets on pool labels, so I have wrong stats. I guess profitability starts showing after payment from pool? In my case it can take up to 30 hours. Maybe I should somehow purge influxDB? UPDATE: I now get one profitability history record for today for one pool, so that is Nice, but power cost is not calculated. Also I noticed that for rig reported vs pool hashrate I can't do filter by pool to get rig hashrates, but I need to filter by rigs - so that may be related? sorry can't post example, bitcointalk blocks the post UPDATE2:It was me being stupid #RIG_ID, MINER, PRIMARY_POOL_LABEL, I put rig label in config instead of PRIMARY_POOL_LABEL (so I have rig label and rig id kinda duplicate and I even wonder why you would do that ) I think my setup is kinda weird because I have multiple rigs on different ethermine wallets (different pools in in config). But really great work as it just works. Well done mate! I appreciate you putting the time to fix it instead of simply asking for help ;-) So AFAIU you have no operational issues, just a couple of feature requests: 1) Custom power monitoring. Yeah, I have the sonoff request pending for a couple of months. I don't have such a plug, but if you provide me with an example API calls I'll implement it (and you test it for me) 2) Multiple fiat currencies for power consumption, profitability and "quote and marketcap" - Can you elaborate on your use-case? Why do you need this? For cloud service? 3) Track different currency pairs and market cap - So that you can adjust the market, profitability per geography instead of being limited by the pool definition?
|
|
|
Hi, firt of awesome work I just started with it and it looks really good, my goal is to have rpi run monitoring SW and display dashboard at the same time. So far I think my pi is configured as headless, so I need to figure all the stuff out, but I also have few struggles as I'm new to grafana: I have currently two pools ETH pool addresses configured and will have 3 when i'm done - sometimes I want to display it separate and sometimes not 1. rig hashrate v pool hasharte: I get pool hashrate only every 10 minutes so my chart is not very nice, but missing bars/line - how should i fix this https://i.imgur.com/4gTWpGI.pngUPDATE: This one solved 1m for rigs, 10m for pools, no bars
2. Same thing with pool reported hashrate - it jums from value to zero between each chart value (this one i will make individual line for each pool for valid and invalid in the end) https://i.imgur.com/OU1DBqZ.pngUPDATE: This one solved itself when I switched to 4 line - 2 for each pool
Can someone more skilled help me? I also did not figured out how to make profitability work, but that is last thing on the list. Feature request: 1. custom power consumption scripts - ie. so we can write our own python scripts to get power consumption from sonoff devices (or maybe in the future even revogi ones that use https and internet for everything) 2. multipe currency - ie. switch between sek/eur/usd - but i'm not sure how to even implement it reasonably, for me it would be more then enough if market cap and rate data in influxDB could be gathered in multiple currencies so I could have power consumption and profitability in sek a watch market in eur and usd # script - use external script for power management. Obviously power monitoring will be disabled. You can read more about it here: https://www.rigmonitor.app/blog/using-rig-monitors-power-management-feature/I did not try it, but maybe it would work if I implement command info and return json in tp-link format? which version are you using?
|
|
|
have just released a development version (3.1.d.1) , which includes multiple fixes, particularly on the past profitability calculation. You can get it here: https://www.rigmonitor.app/blog/downloads/3.1.d.1 (development) --------------------------------------------------------------------- -Added check for number of rigList and poolList configuration items -Updated whattomine url to use https -Fixed issue (#54) with "INVALID SHARES REPORTED BY RIG" not starting at 0 -Fixed issue (#53) with "VALID SHARES REPORTED BY RIG" not honoring selected pool -Fixed issue with time/day boundaries used in past profitabily calculation -Fixed issue with TLS/SSL errors when connecting to whattomine.com
|
|
|
I am so psyched that I found this - it is so very cool!! I came across this today strictly by accident and very excited to install/work on it this week. This is perfect for me- I'm mining primarily eth with nanopool and phoenix miner (latest version of phoenix). I like your latest dashboard regarding profitability... one question, can you provide profitability per rig? and overall? In one case, I have one rig owned by one person, and a second one owned by a different person, and two rigs owned by a third person. Different rig names, but same pool (nanopool). Ideally, I'd like to generate a report for each based on their rig's performance and profitability. Including electricity usage and pool performance. For this example here is the nanopool output for these 4 rigs. https://eth.nanopool.org/account/0x83a866fb17839931d267bb6868ff7131b9a3f76bThanks for your hard work thus far!!!!! hey, glad you like it! Are all those rigs mining to the same wallet or different wallets? Never mind. I looked into your link and noticed you are using a single wallet, which in that case won't work, because the past profitability calculation uses the pool payments to calculate the daily revenue. I can look into it, but how would you split single wallet payments across the different rigs? Well, that' a good question. Maybe as part of the dashboard have the ability to select 1 or more of the "workers" and logically join them to be one "customer" as such. Then calculate based on worker stats and provide a chart/report? We have all the individual data for each worker already, no? Thx, H Ok. there are 2 ways you can ratio the revenue, based on worker shares/total_shares_for_all_workers or similar for avg_worker_hashrate/total_hashrate. I think shares is probably more fair as it will factor in situations when a specific rig is down, which is something that avg hashrate calculations would not consider. I will create a custom chart for you, but I don't think I will add it to the dashboard at this point.
|
|
|
I am so psyched that I found this - it is so very cool!! I came across this today strictly by accident and very excited to install/work on it this week. This is perfect for me- I'm mining primarily eth with nanopool and phoenix miner (latest version of phoenix). I like your latest dashboard regarding profitability... one question, can you provide profitability per rig? and overall? In one case, I have one rig owned by one person, and a second one owned by a different person, and two rigs owned by a third person. Different rig names, but same pool (nanopool). Ideally, I'd like to generate a report for each based on their rig's performance and profitability. Including electricity usage and pool performance. For this example here is the nanopool output for these 4 rigs. https://eth.nanopool.org/account/0x83a866fb17839931d267bb6868ff7131b9a3f76bThanks for your hard work thus far!!!!! hey, glad you like it! Are all those rigs mining to the same wallet or different wallets? Never mind. I looked into your link and noticed you are using a single wallet, which in that case won't work, because the past profitability calculation uses the pool payments to calculate the daily revenue. I can look into it, but how would you split single wallet payments across the different rigs?
|
|
|
I am so psyched that I found this - it is so very cool!! I came across this today strictly by accident and very excited to install/work on it this week. This is perfect for me- I'm mining primarily eth with nanopool and phoenix miner (latest version of phoenix). I like your latest dashboard regarding profitability... one question, can you provide profitability per rig? and overall? In one case, I have one rig owned by one person, and a second one owned by a different person, and two rigs owned by a third person. Different rig names, but same pool (nanopool). Ideally, I'd like to generate a report for each based on their rig's performance and profitability. Including electricity usage and pool performance. For this example here is the nanopool output for these 4 rigs. https://eth.nanopool.org/account/0x83a866fb17839931d267bb6868ff7131b9a3f76bThanks for your hard work thus far!!!!! hey, glad you like it! Are all those rigs mining to the same wallet or different wallets?
|
|
|
Version 3.0 is out! What's new in version 3.0: - Added historical and future profitability logic and charts
- Single, consolidated mining dashboard with drop-down menu to select pool
- Miner, Pool specific dashboard templates deprecated; will no longer be maintained
- Added hashrate correction factor to pool definition in config file
- Added pool label to all miner_gpu measurements
- Harmonized basic influx schema for both miners and pools to facilitate reporting in case of multiple pool, miner combination scenarios
- Claymore measurement for coin+dcoin modified. Now both coins are stored using same influx schema
- Fixed issue with noplug power measurments not being stored after startup
- Fixed issue with ethminer outbound/inbound stream termination
Download and instructions here: https://www.rigmonitor.app/blog/If you'd like other miners/pools/APIs to be supported then please submit a feature request on github. For support please join the telegram group https://t.me/joinchat/IuYcwBKqbGqIeXpw9sfq7QBuy me a beer if you find this app useful ETH: 0x0f2d4397CecB53883411cfe75882622c312c8340 MUSICOIN: 0x9a44a57041acd5f1511bf13a663d136ddbde1fb1
|
|
|
The hot fix is working great, thank you so much!!!!
Great. I’ll issue a minor release tomorrow together with a an updated 3.0 (development) release. Thanks for the fast turnaround.
|
|
|
Still on 2.3.0, running on MacOS X 10.9.
Been getting this error the last 2 days, causes GRM to crash
INFO: 2018/06/20 04:54:07 nanopool.go:170: networkBlocks query succeeded! INFO: 2018/06/20 04:54:07 nanopool.go:175: Querying NANOPOOL minerPayments. INFO: 2018/06/20 04:54:07 nanopool.go:183: minerPayments query succeeded! ERROR: 2018/06/20 04:54:07 influxdb.go:60: DBDaemon could not write record batch to influxDB... panic: runtime error: index out of range
goroutine 51 [running]: go-rig-monitor/pool.(*PoolConfig).LoadNanopoolData(0xc420120cc0, 0x1559640, 0xc42024a180, 0xc420073da0) /Users/ramf/go/src/go-rig-monitor/pool/nanopool.go:339 +0x3794 go-rig-monitor/pool.Monitor(0xc4200224e0, 0x15, 0xc420024eb0, 0x7, 0xc420024f50, 0x7, 0xc420024ff0, 0x7, 0x1e, 0x3e8, ...) /Users/ramf/go/src/go-rig-monitor/pool/pool-monitor.go:61 +0x1a5 created by main.main /Users/ramf/go/src/go-rig-monitor/main.go:143 +0xb50
please you run a trace and create a GitHub issue. to run a trace use: ./grm -t > trace .txt 2>&1 &
|
|
|
Look cool, already downloaded it. Do I need to do anything to migrate from 2.3? Should I delete my existing Dashboards?
thanks for all your hard work!
You can keep those and use those dashboards and in that case you might need to adjust some queries. This is because, and has I mentioned in my blog post, from this version hashrates are always stored in H/s. And flush the influx measurements: drop measurement coin_data drop measurement miner_gpu drop measurement miner_system drop measurement network_stats drop measurement pool_payments drop measurement pool_stats drop measurement worker_stats drop measurement env_data drop measurement market_data drop measurement pool_shares drop measurement future_profit drop measurement past_profit
|
|
|
version 2.3.0 has been released https://github.com/rodneymo/rig-monitorv2/releases/tag/2.3.0What's new? Support for Bminer, includes dashboard template Support for EWBF, includes dashboard template Support for Ethminer, includes dashboard template Support for suprnova pools Support for cryptoknight pools Ethminer fix to support 0.14 and earlier versions Fixed grm crashes in rare occasions when claymore html output will not include GPU specs
|
|
|
Of course, I sent you the results. https://cryptoknight.cc/rpc/ipbc/get_userblocks?height=&address= gave me an Invalid API call no matter what (recent) height I put. Was searching about your code trying to contribute when I realised that only the v1 was open sourced Been fooled by the generated "Source code" on github that contain only the README. I just published version 2.3.d.7, which includes cryptoknight pool support. Bear in mind the API data is very limited, basically: hr, paid, balance and payments.
|
|
|
Hi, if you cd to grm's folder and run the following command then what is the output? python ./external/tplink.py -t "192.168.5.80" -j '{"emeter":{"get_realtime":{}}}' Here it is (thank you!!!): C:\Users\bryan\Mining\monitoring\grm-2.3.d.6-windows-amd64\external>python ./tplink.py -t "192.168.5.80" -j '{"emeter":{"get_realtime":{}}}' Traceback (most recent call last): File "./tplink.py", line 57, in <module> args = parser.parse_args() File "C:\Program Files\Python27\lib\argparse.py", line 1701, in parse_args args, argv = self.parse_known_args(args, namespace) File "C:\Program Files\Python27\lib\argparse.py", line 1733, in parse_known_args namespace, args = self._parse_known_args(args, namespace) File "C:\Program Files\Python27\lib\argparse.py", line 1939, in _parse_known_args start_index = consume_optional(start_index) File "C:\Program Files\Python27\lib\argparse.py", line 1879, in consume_optional take_action(action, args, option_string) File "C:\Program Files\Python27\lib\argparse.py", line 1791, in take_action argument_values = self._get_values(action, argument_strings) File "C:\Program Files\Python27\lib\argparse.py", line 2231, in _get_values value = self._get_value(action, arg_string) File "C:\Program Files\Python27\lib\argparse.py", line 2260, in _get_value result = type_func(arg_string) File "./tplink.py", line 10, in validIP socket.inet_pton(socket.AF_INET, ip) AttributeError: 'module' object has no attribute 'inet_pton' Ok. This seems to be an issue with python's socket module. Check the last comment from this GitHub issue.: https://github.com/mitsuhiko/python-geoip/issues/4Sorry something that escaped me. For the last step, you should actually replace with in the tplink.py script
|
|
|
|