lighthouse/consensus/types/src
Paul Hauner 2b2a358522 Detailed validator monitoring (#2151)
## Issue Addressed

- Resolves #2064

## Proposed Changes

Adds a `ValidatorMonitor` struct which provides additional logging and Grafana metrics for specific validators.

Use `lighthouse bn --validator-monitor` to automatically enable monitoring for any validator that hits the [subnet subscription](https://ethereum.github.io/eth2.0-APIs/#/Validator/prepareBeaconCommitteeSubnet) HTTP API endpoint.

Also, use `lighthouse bn --validator-monitor-pubkeys` to supply a list of validators which will always be monitored.

See the new docs included in this PR for more info.

## TODO

- [x] Track validator balance, `slashed` status, etc.
- [x] ~~Register slashings in current epoch, not offense epoch~~
- [ ] Publish Grafana dashboard, update TODO link in docs
- [x] ~~#2130 is merged into this branch, resolve that~~
2021-01-20 19:19:38 +00:00
..
beacon_state Fix new clippy lints (#2036) 2020-12-03 01:10:26 +00:00
test_utils Clippy 1.49.0 updates and dht persistence test fix (#2156) 2021-01-19 00:34:28 +00:00
aggregate_and_proof.rs Implement standard eth2.0 API (#1569) 2020-10-01 11:12:36 +10:00
attestation_data.rs Implement standard eth2.0 API (#1569) 2020-10-01 11:12:36 +10:00
attestation_duty.rs Implement standard eth2.0 API (#1569) 2020-10-01 11:12:36 +10:00
attestation.rs Support multiple BLS implementations (#1335) 2020-07-25 02:03:18 +00:00
attester_slashing.rs Merge remote-tracking branch 'origin/master' into spec-v0.12 2020-06-26 12:57:56 +10:00
beacon_block_body.rs Implement standard eth2.0 API (#1569) 2020-10-01 11:12:36 +10:00
beacon_block_header.rs Implement slasher (#1567) 2020-11-23 03:43:22 +00:00
beacon_block.rs Clippy 1.49.0 updates and dht persistence test fix (#2156) 2021-01-19 00:34:28 +00:00
beacon_committee.rs Directory Restructure (#1163) 2020-05-18 21:24:23 +10:00
beacon_state.rs Detailed validator monitoring (#2151) 2021-01-20 19:19:38 +00:00
chain_spec.rs Represent slots in secs instead of millisecs (#2163) 2021-01-19 09:39:51 +00:00
checkpoint.rs Bump all spec tags to v0.12.1 (#1275) 2020-06-19 11:18:27 +10:00
deposit_data.rs Detailed validator monitoring (#2151) 2021-01-20 19:19:38 +00:00
deposit_message.rs Implement standard eth2.0 API (#1569) 2020-10-01 11:12:36 +10:00
deposit.rs Bump all spec tags to v0.12.1 (#1275) 2020-06-19 11:18:27 +10:00
enr_fork_id.rs Implement standard eth2.0 API (#1569) 2020-10-01 11:12:36 +10:00
eth1_data.rs Implement standard eth2.0 API (#1569) 2020-10-01 11:12:36 +10:00
eth_spec.rs Add Pyrmont testnet (#1904) 2020-11-16 05:11:35 +00:00
fork_data.rs Implement standard eth2.0 API (#1569) 2020-10-01 11:12:36 +10:00
fork.rs Implement standard eth2.0 API (#1569) 2020-10-01 11:12:36 +10:00
free_attestation.rs Implement standard eth2.0 API (#1569) 2020-10-01 11:12:36 +10:00
graffiti.rs Address clippy lints, panic in ssz_derive on overflow (#1714) 2020-10-25 23:27:39 +00:00
historical_batch.rs Bump all spec tags to v0.12.1 (#1275) 2020-06-19 11:18:27 +10:00
indexed_attestation.rs Implement standard eth2.0 API (#1569) 2020-10-01 11:12:36 +10:00
lib.rs Avoid string initialization in network metrics and replace by &str where possible (#1898) 2020-11-18 23:31:37 +00:00
pending_attestation.rs Implement standard eth2.0 API (#1569) 2020-10-01 11:12:36 +10:00
proposer_slashing.rs Implement slasher (#1567) 2020-11-23 03:43:22 +00:00
relative_epoch.rs Remove saturating arith from state_processing (#1644) 2020-09-25 05:18:21 +00:00
selection_proof.rs Support multiple BLS implementations (#1335) 2020-07-25 02:03:18 +00:00
shuffling_id.rs Implement standard eth2.0 API (#1569) 2020-10-01 11:12:36 +10:00
signed_aggregate_and_proof.rs Support multiple BLS implementations (#1335) 2020-07-25 02:03:18 +00:00
signed_beacon_block_header.rs Implement slasher (#1567) 2020-11-23 03:43:22 +00:00
signed_beacon_block.rs Implement slasher (#1567) 2020-11-23 03:43:22 +00:00
signed_voluntary_exit.rs Bump all spec tags to v0.12.1 (#1275) 2020-06-19 11:18:27 +10:00
signing_data.rs Consensus updates for v0.12 (#1228) 2020-06-03 14:56:54 +10:00
slot_epoch_macros.rs Implement standard eth2.0 API (#1569) 2020-10-01 11:12:36 +10:00
slot_epoch.rs Fix: end_slot returns incorrect value (#2138) 2021-01-19 03:50:06 +00:00
sqlite.rs Directory Restructure (#1163) 2020-05-18 21:24:23 +10:00
subnet_id.rs Avoid string initialization in network metrics and replace by &str where possible (#1898) 2020-11-18 23:31:37 +00:00
tree_hash_impls.rs Support multiple BLS implementations (#1335) 2020-07-25 02:03:18 +00:00
validator_subscription.rs Implement standard eth2.0 API (#1569) 2020-10-01 11:12:36 +10:00
validator.rs Fix epoch, slot, and effective balance quoting (#1756) 2020-10-11 23:58:12 +00:00
voluntary_exit.rs Implement standard eth2.0 API (#1569) 2020-10-01 11:12:36 +10:00