[3.2] Log block trx summary for speculative and BP blocks #145
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Add additional logging to report transaction execution time per block including speculative blocks. Also report block idle time waiting on incoming transactions.
The output is enabled by
producer_plugin
logger atdebug
level.Example output:
Block trx idle:
is time the node is waiting for trxs to come into a node and be scheduled for execution since the end of the last trx processed.out of
is the time since the last block completion. Should be close to the configured CPU Effort for a given block. For example an empty block with 80% CPU effortBlock trx idle: 400351us out of 400541us, success: 0, 0us, fail: 0, 0us, other: 190us
. The complete "idle" time for this block would be 500ms. The idle time of the CPU effort is not reported. The value should be thought of as the time the node was able according to configuration to process trxs.success: {n}, {t}us
is the number of successful transactions processed during this block and how long they took to execute.fail: {n}, {t}us
is the number of transactions that failed processing during this block and how long they took to execute before they failed.other:
is the time of (out of
-Block trx idle
-success time
-fail time
). The time nodeos is logging or doing other book keeping. It is the block time not accounted for in the other reported times.Also move
producer_plugin.cpp:1980 push_transaction ] Failed 3050003 trx, auth: stopblocking, prev billed: 0us, ran: 5594us, id: b9cb28694b54e721994011e4d4ae128dee54467a98e8afb3e7b9d6d041fe2f91
logging totransaction_failure_tracing
logger fromproducer_plugin
as it produces too much logging whenproducer_plugin
set todebug
.Resolves #119