[ETCM-555] Add metrics on the time taken to download blocks (headers, bodies and receipts) and also MPT nodes. Expose in Grafana other already existing metrics.#905
Conversation
886947b to
ba96706
Compare
2e4e249 to
d5c848e
Compare
d5c848e to
a5237ff
Compare
e240c39 to
1165721
Compare
|
Some last adjustments done |
f4a0620 to
0516e16
Compare
|
I have undone the modification of using |
a721eb1 to
bf9de95
Compare
|
Rebased with |
| object SyncMetrics extends MetricsContainer { | ||
|
|
||
| private[this] final val PivotBlockNumberGauge = | ||
| private final val PivotBlockNumberGauge = |
There was a problem hiding this comment.
shall we keep private[this]? it imposes a bigger restriction
There was a problem hiding this comment.
As far as I understand private[this] is not more restrictive. No place outside this object can access that val already, or tries to
There was a problem hiding this comment.
[private] makes it available to the current instance and other instances of the class it’s declared in. Since we are already using a singleton - there are no other instances that could access it. So there's no difference in this case. Some consider it a good practice to default to the highest restriction, I guess this was the reason private[this] was used here on the first place. We could make a decision as a team on which guideline to follow
| updatePivotBlock(ImportedLastBlock) | ||
| case ValidationFailed(header, peerToBlackList) => | ||
| log.warning(s"validation of header ${header.idTag} failed") | ||
| log.warning("validation of header {} failed", header.idTag) |
There was a problem hiding this comment.
oh no.... we need to move to a proper logging wrapper. making ticket.
bf9de95 to
a203ed3
Compare
|
Rebased |
… bodies and receipts) and also MPT nodes. Expose in Grafana other already existing metrics.
a203ed3 to
f742fb4
Compare



Description
The goal of this PR is help measuring FastSync performance.
Proposed Solution
Some metrics were already in place but were not available in the local docker-compose with Grafana setup. Following metrics added to Grafana:
Other measurement were already being done, but were not available on a metric (time elapsed during the download of headers bodies and receipts). Following metrics added:
The elapsed time is now being calculated using System.nanoTime() instead of System.currentTimeMillis(), because System.nanoTime() is more reliable when calculated elapsed time