Bitcoin Forum
April 30, 2024, 03:35:44 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: p2pool -- How to monitor remotely from the console?  (Read 1346 times)
a.miner (OP)
Newbie
*
Offline Offline

Activity: 43
Merit: 0


View Profile
May 17, 2014, 07:21:27 PM
 #1


P2Pool puts up a nice web page that you can view in a browser to monitor your pool performance.

However, my p2pool node are behind a firewall, and I only let ports 8333 and 9333 through that wall.  And 22, for SSH and SCP.

So, how can I monitor my p2pool node remotely under these conditions?

I would like to keep a log file on a remote machine, together with a real-time display, so if something goes wrong, I know it's time to go visit my hardware.
1714491344
Hero Member
*
Offline Offline

Posts: 1714491344

View Profile Personal Message (Offline)

Ignore
1714491344
Reply with quote  #2

1714491344
Report to moderator
There are several different types of Bitcoin clients. The most secure are full nodes like Bitcoin Core, which will follow the rules of the network no matter what miners do. Even if every miner decided to create 1000 bitcoins per block, full nodes would stick to the rules and reject those blocks.
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
1714491344
Hero Member
*
Offline Offline

Posts: 1714491344

View Profile Personal Message (Offline)

Ignore
1714491344
Reply with quote  #2

1714491344
Report to moderator
1714491344
Hero Member
*
Offline Offline

Posts: 1714491344

View Profile Personal Message (Offline)

Ignore
1714491344
Reply with quote  #2

1714491344
Report to moderator
squashpile
Full Member
***
Offline Offline

Activity: 125
Merit: 100


View Profile WWW
May 17, 2014, 07:52:21 PM
 #2

SSH in and run screen is how I do it.
screen -d -m -S btcp2pool ~/p2pool/run_p2pool.py --give-author 0 blah 64646464615015484
screen -x btcp2pool
Hit control-A then D to exit screen and leave p2pool running. Type screen -r to see it again. If you hit control-c when in screen it will kill P2pool.


SquashPool - 0% Fee - Dedicated P2Pool VPS - Atlanta, GA - SSD - Gig uplink
norgan
Sr. Member
****
Offline Offline

Activity: 308
Merit: 250

Decentralize your hashing - p2pool - Norgz Pool


View Profile WWW
May 18, 2014, 04:22:46 AM
 #3

I have my nodes dashboard hosted on a separate web server and can access stats via standard http port. The code locally as well as remote does a json call.
All you need to do is reference the pools URL instead of local json sources. There is a bit of into on this and I've based my front end on the alternate front end on the githib page.
Have a look at the link in my sig and see if that's what you are after.
Let me know if you need more help with it.

Miner, tech geek, operator of NorgzPool - Sydney Australia P2Pool Node creator of p2pool fancy front end

Tips: 1NorganBbymShTN2MMpfGzRYJF8mcPeXjv Exchange BTC locally in Australia or Donate to p2pool miners
a.miner (OP)
Newbie
*
Offline Offline

Activity: 43
Merit: 0


View Profile
May 19, 2014, 06:36:55 AM
 #4

SSH in and run screen is how I do it.
screen -d -m -S btcp2pool ~/p2pool/run_p2pool.py --give-author 0 blah 64646464615015484
screen -x btcp2pool
Hit control-A then D to exit screen and leave p2pool running. Type screen -r to see it again. If you hit control-c when in screen it will kill P2pool.
This sounds like a nice easy way to do things.  I think I will install screen and have a look at its man pages to figure out what the options you used are for.
a.miner (OP)
Newbie
*
Offline Offline

Activity: 43
Merit: 0


View Profile
May 19, 2014, 06:48:32 AM
 #5

I have my nodes dashboard hosted on a separate web server and can access stats via standard http port. The code locally as well as remote does a json call.
All you need to do is reference the pools URL instead of local json sources. There is a bit of into on this and I've based my front end on the alternate front end on the githib page.
Have a look at the link in my sig and see if that's what you are after.
Let me know if you need more help with it.
That looks really slick, norgan!

I had a look at the source code for your page... if there were any comments in it, I might be able to figure out what it does (my own code is at least half comments, otherwise I can't read it myself after a week or two).

Care to explain it to me?
a.miner (OP)
Newbie
*
Offline Offline

Activity: 43
Merit: 0


View Profile
May 19, 2014, 06:51:25 AM
 #6


Does anybody know where p2pool puts its log files and what it calls them?
norgan
Sr. Member
****
Offline Offline

Activity: 308
Merit: 250

Decentralize your hashing - p2pool - Norgz Pool


View Profile WWW
May 19, 2014, 06:53:41 AM
 #7


Does anybody know where p2pool puts its log files and what it calls them?

you need to specify that in the start up string.

i.e. run_p2pool --logfile C:\p2pool-btc\logs\p2pool.log

Miner, tech geek, operator of NorgzPool - Sydney Australia P2Pool Node creator of p2pool fancy front end

Tips: 1NorganBbymShTN2MMpfGzRYJF8mcPeXjv Exchange BTC locally in Australia or Donate to p2pool miners
norgan
Sr. Member
****
Offline Offline

Activity: 308
Merit: 250

Decentralize your hashing - p2pool - Norgz Pool


View Profile WWW
May 19, 2014, 06:55:48 AM
 #8

I have my nodes dashboard hosted on a separate web server and can access stats via standard http port. The code locally as well as remote does a json call.
All you need to do is reference the pools URL instead of local json sources. There is a bit of into on this and I've based my front end on the alternate front end on the githib page.
Have a look at the link in my sig and see if that's what you are after.
Let me know if you need more help with it.
That looks really slick, norgan!

I had a look at the source code for your page... if there were any comments in it, I might be able to figure out what it does (my own code is at least half comments, otherwise I can't read it myself after a week or two).

Care to explain it to me?

haha yeah well it's a real mashup of the extended front end (https://github.com/hardcpp/P2PoolExtendedFrontEnd) and some of my own code. It's pretty straight forward for the layout and the javascript is all from the goblin stats project.

https://github.com/goblin/p2pool-stats/

Miner, tech geek, operator of NorgzPool - Sydney Australia P2Pool Node creator of p2pool fancy front end

Tips: 1NorganBbymShTN2MMpfGzRYJF8mcPeXjv Exchange BTC locally in Australia or Donate to p2pool miners
a.miner (OP)
Newbie
*
Offline Offline

Activity: 43
Merit: 0


View Profile
May 19, 2014, 06:36:01 PM
 #9

Does anybody know where p2pool puts its log files and what it calls them?
you need to specify that in the start up string.

i.e. run_p2pool --logfile C:\p2pool-btc\logs\p2pool.log
Aha.  Thanks.  Does it put the exact same stuff in the log file as it writes to the console?
a.miner (OP)
Newbie
*
Offline Offline

Activity: 43
Merit: 0


View Profile
May 19, 2014, 06:38:15 PM
 #10

I have my nodes dashboard hosted on a separate web server and can access stats via standard http port. The code locally as well as remote does a json call.
All you need to do is reference the pools URL instead of local json sources. There is a bit of into on this and I've based my front end on the alternate front end on the githib page.
Have a look at the link in my sig and see if that's what you are after.
Let me know if you need more help with it.
That looks really slick, norgan!

I had a look at the source code for your page... if there were any comments in it, I might be able to figure out what it does (my own code is at least half comments, otherwise I can't read it myself after a week or two).

Care to explain it to me?

haha yeah well it's a real mashup of the extended front end (https://github.com/hardcpp/P2PoolExtendedFrontEnd) and some of my own code. It's pretty straight forward for the layout and the javascript is all from the goblin stats project.

https://github.com/goblin/p2pool-stats/
Thanks for the links.  I'll look into it.
norgan
Sr. Member
****
Offline Offline

Activity: 308
Merit: 250

Decentralize your hashing - p2pool - Norgz Pool


View Profile WWW
May 19, 2014, 09:35:02 PM
 #11

Does anybody know where p2pool puts its log files and what it calls them?
you need to specify that in the start up string.

i.e. run_p2pool --logfile C:\p2pool-btc\logs\p2pool.log
Aha.  Thanks.  Does it put the exact same stuff in the log file as it writes to the console?

Yes it just dumps it's output.

Miner, tech geek, operator of NorgzPool - Sydney Australia P2Pool Node creator of p2pool fancy front end

Tips: 1NorganBbymShTN2MMpfGzRYJF8mcPeXjv Exchange BTC locally in Australia or Donate to p2pool miners
a.miner (OP)
Newbie
*
Offline Offline

Activity: 43
Merit: 0


View Profile
May 20, 2014, 10:30:54 PM
 #12

Yes it just dumps it's output.
Thanks again.
a.miner (OP)
Newbie
*
Offline Offline

Activity: 43
Merit: 0


View Profile
May 20, 2014, 10:35:37 PM
 #13

There are a lot of interesting files in ~/p2pool/data/bitcoin with intriguing names like graph_db and log and stats and such like.

I could just grab these files with sftp and extract the information I want once I have them here.

Where can I find documentation for the file formats?
norgan
Sr. Member
****
Offline Offline

Activity: 308
Merit: 250

Decentralize your hashing - p2pool - Norgz Pool


View Profile WWW
May 20, 2014, 11:14:28 PM
 #14

There are a lot of interesting files in ~/p2pool/data/bitcoin with intriguing names like graph_db and log and stats and such like.

I could just grab these files with sftp and extract the information I want once I have them here.

Where can I find documentation for the file formats?


that's its own databases for tracking shares etc after you restart a node. it'd be much easier to just pull the json files.

Code:
Web interface

Lots of data and useful tools are available at http://127.0.0.1:9332/something:
 /static/ - Lots of information from shares to graphs to payouts.
 /rate
 /users
 /fee
 /current_payouts
 /patron_sendmany - Gives sendmany outputs for fair donations to P2Pool
 /global_stats
 /local_stats
 /peer_addresses
 /payout_addr
 /recent_blocks
 /uptime
 /web/log - Some different stats collected over the last day

Miner, tech geek, operator of NorgzPool - Sydney Australia P2Pool Node creator of p2pool fancy front end

Tips: 1NorganBbymShTN2MMpfGzRYJF8mcPeXjv Exchange BTC locally in Australia or Donate to p2pool miners
a.miner (OP)
Newbie
*
Offline Offline

Activity: 43
Merit: 0


View Profile
May 21, 2014, 12:12:02 AM
 #15

that's its own databases for tracking shares etc after you restart a node. it'd be much easier to just pull the json files.
Well, I looked at what those return, and I would still have to write code to parse out the contents of the JSON objects.

So I might as well parse out the data files directly.

Besides, the JSON interface doesn't seem to give me any way to plot a graph of local hash rate.  I assume the data for that is in the file graph_db.

The file format must be documented somewhere...
norgan
Sr. Member
****
Offline Offline

Activity: 308
Merit: 250

Decentralize your hashing - p2pool - Norgz Pool


View Profile WWW
May 21, 2014, 02:00:02 AM
 #16

Code:
d3.json('http://pool.norgzpool.net.au:9332/global_stats', function(global_stats) {
d3.select('#pool_rate').text(d3.format('.3s')(global_stats.pool_hash_rate) + 'H/s');
d3.select('#pool_stale').text(d3.format('.2p')(global_stats.pool_stale_prop));
d3.select('#difficulty').text(d3.format('.3r')(global_stats.min_difficulty));

var time_to_block = local_stats.attempts_to_block/global_stats.pool_hash_rate;
d3.select('#time_to_block').text(d3.format('.3r')(time_to_block/3600) + " hours");

d3.select('#expected_payout_amount').text(d3.format('.3r')(local/global_stats.pool_hash_rate*local_stats.block_value*(1-local_stats.donation_proportion)));
 
 
  /// ============================================
var data = [
['Local speed', local],['Local dead speed', local_dead], ['Global speed', global_stats.pool_hash_rate]
  ];

                                                          if (plot2) {plot2.destroy();}
                                                  $("#targetPlot2").remove();
                                                  $("#SpeedChart").append("<div id='targetPlot2'></div>");
  plot2 = jQuery.jqplot ('targetPlot2', [data],
{
  seriesDefaults: {
// Make this a pie chart.
renderer: jQuery.jqplot.PieRenderer,
rendererOptions: {
  // Put data labels on the pie slices.
  // By default, labels show the percentage of the slice.
  showDataLabels: true
}
  },
  legend: { show:true, location: 'e' }
}
  );
 
});

/// ============================================
var data = [
['Good', local_stats.shares.total - (local_stats.shares.orphan + local_stats.shares.dead)],['Dead', local_stats.shares.dead], ['Orphaned', local_stats.shares.orphan]
  ];
 
                          if (plot1) {plot1.destroy();}
                          $("#targetPlot1").remove();
                                  $("#ShareChart").append("<div id='targetPlot1'></div>");
                          plot1 = jQuery.jqplot ('targetPlot1', [data],
{
  seriesDefaults: {
// Make this a pie chart.
renderer: jQuery.jqplot.PieRenderer,
rendererOptions: {
  // Put data labels on the pie slices.
  // By default, labels show the percentage of the slice.
  showDataLabels: true
}
  },
  legend: { show:true, location: 'e' }
}
  );
 

 
 
 
    });
/// pool speed grapg
plot_later(d3.select("#main-local"), "H/s", "H", [
                    {"url": "http://pool.norgzpool.net.au:9332/web/graph_data/local_hash_rate/last_" + period, "color": "#0000FF", "label": "Total"},
                    {"url": "http://pool.norgzpool.net.au:9332/web/graph_data/local_dead_hash_rate/last_" + period, "color": "#FF0000", "label": "Dead"}
                ],1000,300);

}

I think that's the bit that does the graph.

Miner, tech geek, operator of NorgzPool - Sydney Australia P2Pool Node creator of p2pool fancy front end

Tips: 1NorganBbymShTN2MMpfGzRYJF8mcPeXjv Exchange BTC locally in Australia or Donate to p2pool miners
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!