lighthouse/validator_client/src
Age Manning aa1ed787e9 Logging via the HTTP API (#4074)
This PR adds the ability to read the Lighthouse logs from the HTTP API for both the BN and the VC. 

This is done in such a way to as minimize any kind of performance hit by adding this feature.

The current design creates a tokio broadcast channel and mixes is into a form of slog drain that combines with our main global logger drain, only if the http api is enabled. 

The drain gets the logs, checks the log level and drops them if they are below INFO. If they are INFO or higher, it sends them via a broadcast channel only if there are users subscribed to the HTTP API channel. If not, it drops the logs. 

If there are more than one subscriber, the channel clones the log records and converts them to json in their independent HTTP API tasks. 

Co-authored-by: Michael Sproul <micsproul@gmail.com>
2023-05-22 05:57:08 +00:00
..
duties_service Implement el_offline and use it in the VC (#4295) 2023-05-17 05:51:56 +00:00
http_api Logging via the HTTP API (#4074) 2023-05-22 05:57:08 +00:00
http_metrics Add new validator API for voluntary exit (#4119) 2023-04-03 03:02:56 +00:00
signing_method Split common crates out into their own repos (#3890) 2023-04-28 01:15:40 +00:00
attestation_service.rs Validator registration request failures do not cause us to mark BNs offline (#3488) 2022-08-29 11:35:59 +00:00
beacon_node_fallback.rs Avoid excessive logging of BN online status (#4315) 2023-05-22 02:36:43 +00:00
block_service.rs Separate BN for block proposals (#4182) 2023-04-26 01:12:36 +00:00
check_synced.rs Implement el_offline and use it in the VC (#4295) 2023-05-17 05:51:56 +00:00
cli.rs Implement el_offline and use it in the VC (#4295) 2023-05-17 05:51:56 +00:00
config.rs Implement el_offline and use it in the VC (#4295) 2023-05-17 05:51:56 +00:00
doppelganger_service.rs Clippy lints for rust 1.66 (#3810) 2022-12-16 04:04:00 +00:00
duties_service.rs Implement el_offline and use it in the VC (#4295) 2023-05-17 05:51:56 +00:00
graffiti_file.rs Rust 1.54.0 lints (#2483) 2021-07-30 01:11:47 +00:00
initialized_validators.rs Optimise update_validators by decrypting key cache only when necessary (#4126) 2023-03-29 02:56:39 +00:00
key_cache.rs Clippy lints for rust 1.66 (#3810) 2022-12-16 04:04:00 +00:00
latency.rs Add VC metric for primary BN latency (#4051) 2023-03-06 04:08:49 +00:00
lib.rs Logging via the HTTP API (#4074) 2023-05-22 05:57:08 +00:00
notifier.rs Add new VC metrics for beacon node availability (#3193) 2022-05-26 02:05:16 +00:00
preparation_service.rs Implement el_offline and use it in the VC (#4295) 2023-05-17 05:51:56 +00:00
signing_method.rs Add new validator API for voluntary exit (#4119) 2023-04-03 03:02:56 +00:00
sync_committee_service.rs Implement el_offline and use it in the VC (#4295) 2023-05-17 05:51:56 +00:00
validator_store.rs Add new validator API for voluntary exit (#4119) 2023-04-03 03:02:56 +00:00