Found the issue. The format of the GPU temp+fan line is very close to the GPU specs line so when one has rigs with more than 4 GPUs this issue happened. I never saw this issue as my test rig only has 2 cards.
Anyways, it's been fixed in 2.1.d10.
Let me know if you have any other problems.
|
|
|
Anyone using cgminer? I need some real json outputs to add support to rig-monitor.
Thanks
|
|
|
I just published a development release with Fairpool support. I'd appreciate if anyone using FairPool could test it and provide feedback (and bugs). In case of the latter please attach a trace.
Thank you
|
|
|
Oh I never tested that. Anyways please check the latest dev release (2.0.d.7). It includes support for PhoenixMiner and a dashboard template.
Finally got around to testing (had a burst pipe in the basement). It seems as though it's not picking up all the details for all rigs. It shows the hashrates fine for all the rigs, but it is only reporting the gpu temp and fanspeed for one of the rigs. Ok. Please send me a trace and I’ll take a look at it.
|
|
|
Hi, I'm get some errors when rig-monitor tries to get data from nanopool. Today nanopool API is not working correctly: it gives me Error 0: undefined 8/10 times ERROR: 2018/05/16 16:00:27 pool-monitor.go:32: Could not decode json response! INFO: 2018/05/16 16:00:27 nanopool.go:116: minerGeneralInfo query failed! INFO: 2018/05/16 16:00:27 nanopool.go:123: Querying NANOPOOL minerShares. ERROR: 2018/05/16 16:00:27 pool-monitor.go:32: Could not decode json response! INFO: 2018/05/16 16:00:27 nanopool.go:128: minerShares query failed! INFO: 2018/05/16 16:00:27 nanopool.go:147: Querying NANOPOOL networkAverageBlockTime. ERROR: 2018/05/16 16:00:28 pool-monitor.go:32: Could not decode json response! INFO: 2018/05/16 16:00:28 nanopool.go:152: networkAverageBlockTime query failed! INFO: 2018/05/16 16:00:28 nanopool.go:159: Querying NANOPOOL networkBlocks. ERROR: 2018/05/16 16:00:28 pool-monitor.go:32: Could not decode json response! INFO: 2018/05/16 16:00:28 nanopool.go:164: networkBlocks query failed! INFO: 2018/05/16 16:00:28 nanopool.go:171: Querying NANOPOOL minerPayments. ERROR: 2018/05/16 16:00:28 pool-monitor.go:32: Could not decode json response! INFO: 2018/05/16 16:00:28 nanopool.go:176: minerPayments query failed! panic: runtime error: index out of range
goroutine 34 [running]: go-rig-monitor/pool.loadNanopoolData(0x10d90120, 0x4644b8, 0x10cfb3e0, 0x10d27e80) /Users/ramf/go/src/go-rig-monitor/pool/nanopool.go:328 +0x2ddc go-rig-monitor/pool.Monitor(0x4644b8, 0x10cfb3e0, 0x10d8e0c0, 0x10d27e80) /Users/ramf/go/src/go-rig-monitor/pool/pool-monitor.go:68 +0x2e8 created by main.main /Users/ramf/go/src/go-rig-monitor/main.go:147 +0x954
after this errors rig-monitor exits when I'm running without pool data -p -1 it's OK Is it possible to handle this error and not to stop the rig-monitor but make it retry reading jason from nanopool ? I noticed the same in my test setup and have created an issue ( https://github.com/rodneymo/rig-monitorv2/issues/14) to handle these failures gracefully. I suggest you disable it in the meantime. I'll have a fix for it tomorrow. check version 2.1.d.9. It should be fixed now.
|
|
|
i didn't get what you meant by an agent being installed. I am using TP-Link HS110 and monitoring power using a bash script and power-cycle whenever it falls below the threshold value using curl http GET/POST requests, remotely (doesn't even have to be on same network). Pretty sure the same thing can be done with a WeMo. Or with IFFT.
I meant have a small piece of software running on the server which can receive a reboot signal from rig-monitor. For TP-LINK I am using the provide API to read power usage and in the future reset the plug to restart the rig. Indeed, Wemo also has an API for that. I just ordered one so I should be adding support soon. Oh yea got it. but I don't get how that would solve situation in case of a hard crash. In normal situation doesn't a good mining software handle the soft reboot? I am hoping that some syscalls are able to handle, but I won't know for sure until I test it.
|
|
|
Hi, I'm get some errors when rig-monitor tries to get data from nanopool. Today nanopool API is not working correctly: it gives me Error 0: undefined 8/10 times ERROR: 2018/05/16 16:00:27 pool-monitor.go:32: Could not decode json response! INFO: 2018/05/16 16:00:27 nanopool.go:116: minerGeneralInfo query failed! INFO: 2018/05/16 16:00:27 nanopool.go:123: Querying NANOPOOL minerShares. ERROR: 2018/05/16 16:00:27 pool-monitor.go:32: Could not decode json response! INFO: 2018/05/16 16:00:27 nanopool.go:128: minerShares query failed! INFO: 2018/05/16 16:00:27 nanopool.go:147: Querying NANOPOOL networkAverageBlockTime. ERROR: 2018/05/16 16:00:28 pool-monitor.go:32: Could not decode json response! INFO: 2018/05/16 16:00:28 nanopool.go:152: networkAverageBlockTime query failed! INFO: 2018/05/16 16:00:28 nanopool.go:159: Querying NANOPOOL networkBlocks. ERROR: 2018/05/16 16:00:28 pool-monitor.go:32: Could not decode json response! INFO: 2018/05/16 16:00:28 nanopool.go:164: networkBlocks query failed! INFO: 2018/05/16 16:00:28 nanopool.go:171: Querying NANOPOOL minerPayments. ERROR: 2018/05/16 16:00:28 pool-monitor.go:32: Could not decode json response! INFO: 2018/05/16 16:00:28 nanopool.go:176: minerPayments query failed! panic: runtime error: index out of range
goroutine 34 [running]: go-rig-monitor/pool.loadNanopoolData(0x10d90120, 0x4644b8, 0x10cfb3e0, 0x10d27e80) /Users/ramf/go/src/go-rig-monitor/pool/nanopool.go:328 +0x2ddc go-rig-monitor/pool.Monitor(0x4644b8, 0x10cfb3e0, 0x10d8e0c0, 0x10d27e80) /Users/ramf/go/src/go-rig-monitor/pool/pool-monitor.go:68 +0x2e8 created by main.main /Users/ramf/go/src/go-rig-monitor/main.go:147 +0x954
after this errors rig-monitor exits when I'm running without pool data -p -1 it's OK Is it possible to handle this error and not to stop the rig-monitor but make it retry reading jason from nanopool ? I noticed the same in my test setup and have created an issue ( https://github.com/rodneymo/rig-monitorv2/issues/14) to handle these failures gracefully. I suggest you disable it in the meantime. I'll have a fix for it tomorrow.
|
|
|
Yeah the output on refresh doesn't list current reported hashrate at the end (refresh is the equivalent of hitting 's' in the console of the miner). However, the reported GPU hashrate and shares do show in the log every 5 seconds. If you pull the data at an interval greater than 5 seconds you should be able to grep the gpu reported hashrate and shares 10 or so lines up.
Alternatively, JSONRPC works if you script it into your code. It is universal between Phoenix and Claymore so it should keep your code small as there would be no need to have different code for each miner. This can be achieved with netcat:
Problem is that json-rpc requires Ethman.exe which is only available on Windows. I figured out a way and am almost done with the development so I'll stick to the html output. I’m not sure that it does. I just ran the commands fine without having ethman running on one of my miners and it responded just fine. check out dev version 2.1.d8 There a a few things that are not clear to me with regards mapping the son fields to the influxDB fields. FYI, I try to map to existing one for consistency and ability to do cross-miner reporting "hr": json.TotalHashRate, //this is the instant HR "avg_result_time": json.TotalHashRateAvg, //This seems to be the average HR since miner started "target_hr": r.TargetHashRate, "shares_total": json.Shares.NumAccepted + json.Shares.NumRejected + json.Shares.NumInvalid + json.Shares.NumNetworkFail + json.Shares.NumOutdated, "valid_shares": json.Shares.NumAccepted, "invalid_shares": json.Shares.NumInvalid, "stale_shares": json.Shares.NumRejected, // Are these rejected by the pool? "outdated_shares": json.Shares.NumOutdated, // are these stale shares i.e. shares submitted and block has been closed and a new block generated? "networkfail_shares": json.Shares.NumNetworkFail, // have no idea about these Let me know if that's ok with you or if I should do some re-mapping
|
|
|
development version d.8 has been published. I'll graduate this version to 2.1 (beta) in the coming days.
What's new: Added support for SRBMiner including dashboard template. Added support for XMRig-proxy including dashboard template. Added support for PhoenixMiner including dashboard template. Added support for CastXmr including dashboard template. Added support for bastardized versions of node-js-pool API (cryptonote-pool API) e.g. supportxmr.com.
Tentative scope for 2.2: Fairpool support Wemo Insight smart-plug support Power Mgmt rules (reset rigs if power or hashrate KPIs go below a configured value)
|
|
|
Yeah the output on refresh doesn't list current reported hashrate at the end (refresh is the equivalent of hitting 's' in the console of the miner). However, the reported GPU hashrate and shares do show in the log every 5 seconds. If you pull the data at an interval greater than 5 seconds you should be able to grep the gpu reported hashrate and shares 10 or so lines up.
Alternatively, JSONRPC works if you script it into your code. It is universal between Phoenix and Claymore so it should keep your code small as there would be no need to have different code for each miner. This can be achieved with netcat:
Problem is that json-rpc requires Ethman.exe which is only available on Windows. I figured out a way and am almost done with the development so I'll stick to the html output. I’m not sure that it does. I just ran the commands fine without having ethman running on one of my miners and it responded just fine. Oh I never tested that. Anyways please check the latest dev release (2.0.d.7). It includes support for PhoenixMiner and a dashboard template. For some weird reason the dashboard was not included in the d.7 release. Will add it in the d.8 release in a couple of hours.
|
|
|
i didn't get what you meant by an agent being installed. I am using TP-Link HS110 and monitoring power using a bash script and power-cycle whenever it falls below the threshold value using curl http GET/POST requests, remotely (doesn't even have to be on same network). Pretty sure the same thing can be done with a WeMo. Or with IFFT.
I meant have a small piece of software running on the server which can receive a reboot signal from rig-monitor. For TP-LINK I am using the provide API to read power usage and in the future reset the plug to restart the rig. Indeed, Wemo also has an API for that. I just ordered one so I should be adding support soon.
|
|
|
Yeah the output on refresh doesn't list current reported hashrate at the end (refresh is the equivalent of hitting 's' in the console of the miner). However, the reported GPU hashrate and shares do show in the log every 5 seconds. If you pull the data at an interval greater than 5 seconds you should be able to grep the gpu reported hashrate and shares 10 or so lines up.
Alternatively, JSONRPC works if you script it into your code. It is universal between Phoenix and Claymore so it should keep your code small as there would be no need to have different code for each miner. This can be achieved with netcat:
Problem is that json-rpc requires Ethman.exe which is only available on Windows. I figured out a way and am almost done with the development so I'll stick to the html output. I’m not sure that it does. I just ran the commands fine without having ethman running on one of my miners and it responded just fine. Oh I never tested that. Anyways please check the latest dev release (2.0.d.7). It includes support for PhoenixMiner and a dashboard template.
|
|
|
Yeah the output on refresh doesn't list current reported hashrate at the end (refresh is the equivalent of hitting 's' in the console of the miner). However, the reported GPU hashrate and shares do show in the log every 5 seconds. If you pull the data at an interval greater than 5 seconds you should be able to grep the gpu reported hashrate and shares 10 or so lines up.
Alternatively, JSONRPC works if you script it into your code. It is universal between Phoenix and Claymore so it should keep your code small as there would be no need to have different code for each miner. This can be achieved with netcat:
Problem is that json-rpc requires Ethman.exe which is only available on Windows. I figured out a way and am almost done with the development so I'll stick to the html output.
|
|
|
Hi! , thanks for your work, pretty awesome dashboard i'm running it using windows 10 in a miner without any problems When castxmr v1.0.0 is executed using --remoteaccess you go to the miner http://127.0.0.1:7777 and you get this, no file extension: I will provide you with an URL so you can test it in a message edit1: well, i can't send you messages because I am considered a newbie Thank you. I really appreciate it. I'll get on it as soon as I finish support for PhoenixMiner. I'll send you a message, maybe you can reply to it.
|
|
|
Specific reason this is not open source? any plans on making it open source?
That was probably the thing I thought the most about when I decided to re-write it golang. This is not set in stone and I'll re-evaluate the decision as time goes by. My experience with rig-monitor 1.x, which is scripted and inherently open source was not really good. Got a bunch of ppl forking it, but only one guy sporadically contributing. But, like I said I might re-evaluate the decision later on. I currently just use a simple bash script to autoreboot my rigs when power consumptions falls below a threshold value (hard system crash). Soft crashes can be handled with mining software but not the hard crashes. In house mining software watchdog timers fail here too.
right, but that requires an "agent" to be installed on every rig. Right now I am looking at developing all 3 options below: 1) monitor hr and power usage KPIs and reset smart plug in case of failure (currently under development; will support both TPLINK and Wemo plugs) 2) use GPIO to trigger external relays (raspberry PI only) 3) develop "agent" that can be signaled to force rig reboot via syscall
|
|
|
Unrelated to the GPIO, I seem to be having issues getting 2.0 working. When I view the claymore dashboard, it lists the rig_ids fine and shows how many gpus/etc are installed, but it's not populating any data to the dashboard. The rig-monitor app is running, and it does seem to be communcating with the miner: INFO: 2018/05/12 18:08:19 rig-monitor.go:40: New rig monitor job received: miner01,claymore,nanopool,,http://192.168.10.81:3333,6,180,,noplug,,900,70 INFO: 2018/05/12 18:08:19 env.go:46: New environment monitor job received: miner01,claymore,nanopool,,http://192.168.10.81:3333,6,180,,noplug,,900,70 But I see no info on the dashboard. Can you run a trace and send it back to me? >grm -p -1 -m -1 -r <index of rig in config file> -t FYI: -p -1 disables the pool monitoring -m -1 disables market data monitoring -r <index> runs grm only for the specific rig. Index start at 1 not 0 EDIT: I'm an idiot. I'm using PhoenixMiner and not Claymore. I assumed compatibility because they both use the same settings/remote monitoring software. I completely ignored that this thing is parsing the output of the console which is most certainly different between the two. Ran a quick trace. It doesn't seem to be parsing the info correctly. https://pastebin.com/Yp3Ff2beWhen running normally, it is also entering this empty data into the db: > select * from miner_gpu where miner='CLAYMORE' order by time asc name: miner_gpu time fan gpu_id hr hr2 invalid_shares invalid_shares2 max_temp miner rig_id temp valid_shares valid_shares2 ---- --- ------ -- --- -------------- --------------- -------- ----- ------ ---- ------------ ------------- 1526169450000000000 0 0 0 0 0 0 70 CLAYMORE miner01 0 0 0 1526169450000000000 0 7 0 0 0 0 70 CLAYMORE miner02 0 0 0 1526169450000000000 0 0 0 0 0 0 70 CLAYMORE miner03 0 0 0 1526169450000000000 0 1 0 0 0 0 70 CLAYMORE miner03 0 0 0 1526169450000000000 0 4 0 0 0 0 70 CLAYMORE miner02 0 0 0 1526169450000000000 0 4 0 0 0 0 70 CLAYMORE miner03 0 0 0 1526169450000000000 0 2 0 0 0 0 70 CLAYMORE miner01 0 0 0 1526169450000000000 0 5 0 0 0 0 70 CLAYMORE miner01 0 0 0 1526169450000000000 0 5 0 0 0 0 70 CLAYMORE miner02 0 0 0 1526169450000000000 0 2 0 0 0 0 70 CLAYMORE miner02 0 0 0 1526169450000000000 0 5 0 0 0 0 70 CLAYMORE miner03 0 0 0 1526169450000000000 0 6 0 0 0 0 70 CLAYMORE miner02 0 0 0 1526169450000000000 0 2 0 0 0 0 70 CLAYMORE miner03 0 0 0 1526169450000000000 0 0 0 0 0 0 70 CLAYMORE miner02 0 0 0 1526169450000000000 0 1 0 0 0 0 70 CLAYMORE miner01 0 0 0 1526169450000000000 0 3 0 0 0 0 70 CLAYMORE miner01 0 0 0 1526169450000000000 0 3 0 0 0 0 70 CLAYMORE miner02 0 0 0 1526169450000000000 0 1 0 0 0 0 70 CLAYMORE miner02 0 0 0 1526169450000000000 0 3 0 0 0 0 70 CLAYMORE miner03 0 0 0 1526169450000000000 0 4 0 0 0 0 70 CLAYMORE miner01 0 0 0 1526169451000000000 0 0 0 0 0 0 70 CLAYMORE desktop 0 0 0 1526169451000000000 0 1 0 0 0 0 70 CLAYMORE desktop 0 0 0
No worries. I can add support for it in the coming version. Could you upload to the monitoring output to the Github feature I have create here: https://github.com/rodneymo/rig-monitorv2/issues/8If the output is an html the please upload the html file not just the text output. Done. I need a few more days. Unlike claymore the output from PhoenixMiner is not consistent e.g. most of the last paragraph does not include all the info. So I have to modified the regexs and logic.
|
|
|
Also, for the new feature request, would you consider adding support for XMR-proxy? Here is the link for their api https://github.com/xmrig/xmrig-proxy/wiki/APII use this proxy with 20 miners, would be great to see individual stats for every miner I can assist with JSON outputs if you are interested Sure. I have created a new feature request on GitHub. Could you upload some json examples for both the "/" and "/workers.json" endpoints? Thanks a lot man I will post it tonight Check development version 4 ( https://github.com/rodneymo/rig-monitorv2/releases/tag/2.1.d.4). It includes support for XMRIG-PROXY and a dashboard template. Let me know if you have some issues. Thanks for the update man, I just tried it and got the following errors with xmrig-proxy: It seems like a data type conflict, but I cannot troubleshoot it without the full trace. If you don't want to post it here then send it to me via telegram @rodneymo
|
|
|
Also, for the new feature request, would you consider adding support for XMR-proxy? Here is the link for their api https://github.com/xmrig/xmrig-proxy/wiki/APII use this proxy with 20 miners, would be great to see individual stats for every miner I can assist with JSON outputs if you are interested Sure. I have created a new feature request on GitHub. Could you upload some json examples for both the "/" and "/workers.json" endpoints? Thanks a lot man I will post it tonight Check development version 4 ( https://github.com/rodneymo/rig-monitorv2/releases/tag/2.1.d.4). It includes support for XMRIG-PROXY and a dashboard template. Let me know if you have some issues.
|
|
|
|