Joel Rousseau
|
ac8811afac
|
Add missed blocks to monitored validators (#4731)
* add missed_block metric
* init missed_block in constructor
* declare beaconproposercache in ValidatorMonitor
* refacto proposer_shuffling_decision_root to use epoch instead of current.epoch
* imple new proposer_shuffling_decision_root in callers
* push missed_blocks
* prune missed_blocks
* only add to hashmap if it's a monitored validator
* remove current_epoch dup + typos
* extract in func
* add prom metrics
* checkpoint is not only epoch but slot as well
* add safeguard if we start a new chain at slot 0
* clean
* remove unnecessary negative value for a slot
* typo in comment
* remove unused current_epoch
* share beacon_proposer_cache between validator_monitor and beacon_chain
* pass Hash256::zero()
* debug objects
* fix loop: lag is at the head
* sed s/get_slot/get_epoch
* fewer calls to cache.get_epoch
* fix typos
* remove cache first call
* export TYPICAL_SLOTS_PER_EPOCH and use it in validator_monitor
* switch to gauge & loop over missed_blocks hashset
* fix subnet_service tests
* remove unused var
* clean + fix nits
* add beacon_proposer_cache + validator_monitor in builder
* fix store_tests
* fix builder tests
* add tests
* add validator monitor set of tests
* clean tests
* nits
* optimise imports
* lint
* typo
* added self.aggregatable
* duplicate proposer_shuffling_decision_root
* remove duplication in passing beacon_proposer_cache
* remove duplication in passing beacon_proposer_cache
* using indices
* fmt
* implement missed blocks total
* nits
* avoid heap allocation
* remove recursion limit
* fix lint
* Fix valdiator monitor builder pattern
Unify validator monitor config struct
* renaming metrics
* renaming metrics in validator monitor
* add log if there's a missing validator index
* consistent log
* fix loop
* better loop
* move gauge to counter
* fmt
* add error message
* lint
* fix prom metrics
* set gauge to 0 when non-finalized epochs
* better wording
* remove hash256::zero in favour of block_root
* fix gauge total label
* fix last missed block validator
* Add `MissedBlock` struct
* Fix comment
* Refactor non-finalized block loop
* Fix off-by-one
* Avoid string allocation
* Fix compile error
* Remove non-finalized blocks metric
* fix func clojure
* remove unused variable
* remove unused DEFAULT_INDIVIDUAL_TRACKING_THRESHOLD
* remove unused DEFAULT_INDIVIDUAL_TRACKING_THRESHOLD in builder
* add validator index depending on the fork name
* typos
---------
Co-authored-by: Paul Hauner <paul@paulhauner.com>
|
2023-11-09 15:05:14 +11:00 |
|