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: Network Watch tool #9849

Open
wants to merge 3 commits into
base: master
from

Conversation

Projects
None yet
6 participants
@luke-jr
Member

luke-jr commented Feb 24, 2017

Simple realtime log of p2p network activity (blocks and transactions only)

  • Doesn't begin logging until opened; limited to 0x400 entries (outputs)
  • Automatically scrolls if left at the bottom of the log; maintains position if left elsewhere
  • Memory-efficient circular buffer; CTransaction references become weak after they're 0x200 entries back in the log
  • Search function that selects all matching log entries, including ongoing

@fanquake fanquake added the GUI label Feb 24, 2017

Show outdated Hide outdated src/qt/netwatch.cpp
}
++rows_used;
if (rows_used > max_nonweak_txouts) {
LogEntry& le = getLogEntryRow(rows_used - max_nonweak_txouts - 1);

This comment has been minimized.

@paveljanik

paveljanik Feb 24, 2017

Contributor

le is the same name as the first argument here, it will bring shadow warning.

@paveljanik

paveljanik Feb 24, 2017

Contributor

le is the same name as the first argument here, it will bring shadow warning.

@paveljanik

This comment has been minimized.

Show comment
Hide comment
@paveljanik

paveljanik Feb 24, 2017

Contributor

This is how it looks like here on testnet:

screen shot 2017-02-24 at 08 22 39

Contributor

paveljanik commented Feb 24, 2017

This is how it looks like here on testnet:

screen shot 2017-02-24 at 08 22 39

@jonasschnelli

This comment has been minimized.

Show comment
Hide comment
@jonasschnelli

jonasschnelli Feb 24, 2017

Member

Thanks. Will review.
I just played a bit with it and had massive locking issues on mainnet during catch-up of 2-3 weeks.

Member

jonasschnelli commented Feb 24, 2017

Thanks. Will review.
I just played a bit with it and had massive locking issues on mainnet during catch-up of 2-3 weeks.

@jonasschnelli

This comment has been minimized.

Show comment
Hide comment
@jonasschnelli

jonasschnelli Mar 17, 2017

Member

Running this PR (built over gitian: https://bitcoin.jonasschnelli.ch/build/54) makes Bitcoin-Qt and also the rest of my apps almost unusable. Had to force kill the process.

Member

jonasschnelli commented Mar 17, 2017

Running this PR (built over gitian: https://bitcoin.jonasschnelli.ch/build/54) makes Bitcoin-Qt and also the rest of my apps almost unusable. Had to force kill the process.

void NetWatchLogModel::LogBlock(const CBlockIndex* pblockindex)
{
CBlock block;
if (!ReadBlockFromDisk(block, pblockindex, Params().GetConsensus())) {

This comment has been minimized.

@jonasschnelli

jonasschnelli Mar 17, 2017

Member

IMO reading each block will cause a massive slow down during IBD / catchup.

@jonasschnelli

jonasschnelli Mar 17, 2017

Member

IMO reading each block will cause a massive slow down during IBD / catchup.

This comment has been minimized.

@luke-jr

luke-jr Mar 17, 2017

Member

The OS should have the data cached already?

@luke-jr

luke-jr Mar 17, 2017

Member

The OS should have the data cached already?

// Indicate error somehow?
return;
}
assert(block.vtx.size());

This comment has been minimized.

@jonasschnelli

jonasschnelli Mar 17, 2017

Member

What we probably should do is adding each blocks size and vtx.size() to CBlockIndex* (would require to alter the block index, migration, etc. yes).

@jonasschnelli

jonasschnelli Mar 17, 2017

Member

What we probably should do is adding each blocks size and vtx.size() to CBlockIndex* (would require to alter the block index, migration, etc. yes).

This comment has been minimized.

@luke-jr

luke-jr Mar 17, 2017

Member

That wouldn't change anything here...?

@luke-jr

luke-jr Mar 17, 2017

Member

That wouldn't change anything here...?

luke-jr added some commits Feb 24, 2017

Qt: Network Watch tool
Simple realtime log of p2p network activity (blocks and transactions only)

- Doesn't begin logging until opened; limited to 0x400 entries (outputs)
- Automatically scrolls if left at the bottom of the log; maintains position if left elsewhere
- Memory-efficient circular buffer; CTransaction references become weak after they're 0x200 entries back in the log
- Search function that selects all matching log entries, including ongoing
@laanwj

This comment has been minimized.

Show comment
Hide comment
@laanwj

laanwj Mar 6, 2018

Member

Concept ACK, I like having this, though we have to be sure that there is no performance impact when the monitor is not running, and as little as possible when it is.

Member

laanwj commented Mar 6, 2018

Concept ACK, I like having this, though we have to be sure that there is no performance impact when the monitor is not running, and as little as possible when it is.

@luke-jr

This comment has been minimized.

Show comment
Hide comment
@luke-jr

luke-jr Mar 7, 2018

Member

The code is (already) disabled until the first time it is opened.

Member

luke-jr commented Mar 7, 2018

The code is (already) disabled until the first time it is opened.

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