New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Qt] Add upload and download info to the peerlist (debug menu) #11499

Merged
merged 2 commits into from Oct 23, 2017

Conversation

Projects
None yet
5 participants
@aarongolliver
Contributor

aarongolliver commented Oct 14, 2017

Makes the peer list display how much you've uploaded/downloaded from each peer.

Here's a screenshot outdated, current of how it looks. You can now sort to see who are the peers you've uploaded the most too.

I also moved RPCConsole::FormatBytes to guiutil::formatBytes so I could use it in the peerlist

@jonasschnelli jonasschnelli added the GUI label Oct 14, 2017

@promag

Tested (almost) ACK 978835f.

Currently Received is the last column, and the following will make this column the biggest:

ui->peerWidget->horizontalHeader()->setStretchLastSection(true);

IMO the column Node/Service should be the biggest.

Show outdated Hide outdated src/qt/peertablemodel.h
Show outdated Hide outdated src/qt/peertablemodel.cpp
@aarongolliver

This comment has been minimized.

Show comment
Hide comment
@aarongolliver

aarongolliver Oct 15, 2017

Contributor

Currently the ping column is largest, But I think User Agent might be a the best choice. Anecdotally, it also has the longest, with the most interesting information on its right hand side (where it would be hidden if the column was too small). Also some nodes like to put messages/easter eggs in their user agent, so if we made it the bigger-by-default column they'd be easier to discover.

Either would be better than ping though

Contributor

aarongolliver commented Oct 15, 2017

Currently the ping column is largest, But I think User Agent might be a the best choice. Anecdotally, it also has the longest, with the most interesting information on its right hand side (where it would be hidden if the column was too small). Also some nodes like to put messages/easter eggs in their user agent, so if we made it the bigger-by-default column they'd be easier to discover.

Either would be better than ping though

@aarongolliver

This comment has been minimized.

Show comment
Hide comment
@aarongolliver

aarongolliver Oct 17, 2017

Contributor

new screenshot (also notice someone with a message in their user agent like I mentioned above)

Contributor

aarongolliver commented Oct 17, 2017

new screenshot (also notice someone with a message in their user agent like I mentioned above)

@laanwj

This comment has been minimized.

Show comment
Hide comment
@laanwj

laanwj Oct 18, 2017

Member

Concept ACK, this is useful info, though we should avoid adding too many columns here.

Member

laanwj commented Oct 18, 2017

Concept ACK, this is useful info, though we should avoid adding too many columns here.

@aarongolliver

This comment has been minimized.

Show comment
Hide comment
@aarongolliver

aarongolliver Oct 19, 2017

Contributor

@laanwj agreed. I looked through CNodeStats to decide what to add and only sent/received bytes seemed interesting to me.

I could maybe imagine someone wanting "length of time connected to that peer" or "per-peer upload/download speeds", but I think the risk of the table getting too busy is pretty low, and we could always implement a way to select which columns you want a-la task manager or p2p clients like bittorrent do.

(that's actually something I'm interested in doing, but it felt like too big a change for my first go at this)

Contributor

aarongolliver commented Oct 19, 2017

@laanwj agreed. I looked through CNodeStats to decide what to add and only sent/received bytes seemed interesting to me.

I could maybe imagine someone wanting "length of time connected to that peer" or "per-peer upload/download speeds", but I think the risk of the table getting too busy is pretty low, and we could always implement a way to select which columns you want a-la task manager or p2p clients like bittorrent do.

(that's actually something I'm interested in doing, but it felt like too big a change for my first go at this)

@jonasschnelli

This comment has been minimized.

Show comment
Hide comment
@jonasschnelli

jonasschnelli Oct 19, 2017

Member

Tested ACK 6b1891e
Agree with not adding to much stuff as column (transferred bytes makes sense also because you can sort).

Member

jonasschnelli commented Oct 19, 2017

Tested ACK 6b1891e
Agree with not adding to much stuff as column (transferred bytes makes sense also because you can sort).

@promag

This comment has been minimized.

Show comment
Hide comment
@promag

promag Oct 22, 2017

Member

utACK 6b1891e.

Member

promag commented Oct 22, 2017

utACK 6b1891e.

@paveljanik

This comment has been minimized.

Show comment
Hide comment
@paveljanik

paveljanik Oct 22, 2017

Contributor

ACK 6b1891e

Contributor

paveljanik commented Oct 22, 2017

ACK 6b1891e

@jonasschnelli jonasschnelli merged commit 6b1891e into bitcoin:master Oct 23, 2017

1 check passed

continuous-integration/travis-ci/pr The Travis CI build passed
Details

jonasschnelli added a commit that referenced this pull request Oct 23, 2017

Merge #11499: [Qt] Add upload and download info to the peerlist (debu…
…g menu)

6b1891e Add Sent and Received information to the debug menu peer list (Aaron Golliver)
8e4aa35 move human-readable byte formatting to guiutil (Aaron Golliver)

Pull request description:

  Makes the peer list display how much you've uploaded/downloaded from each peer.

  Here's a screenshot ~~[outdated](https://i.imgur.com/MhPbItp.png)~~, [current](https://i.imgur.com/K1htrVv.png) of how it looks. You can now sort to see who are the peers you've uploaded the most too.

  I also moved `RPCConsole::FormatBytes` to `guiutil::formatBytes` so I could use it in the peerlist

Tree-SHA512: 8845ef406e4cbe7f981879a78c063542ce90f50f45c8fa3514ba3e6e1164b4c70bb2093c4e1cac268aef0328b7b63545bc1dfa435c227f28fdb4cb0a596800f5

luke-jr added a commit to bitcoinknots/bitcoin that referenced this pull request Nov 11, 2017

@aarongolliver aarongolliver deleted the aarongolliver:provide-send-recv-count-to-peerlist branch Feb 22, 2018

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment