lighthouse/common
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
..
account_utils Clippy lints for rust 1.66 (#3810) 2022-12-16 04:04:00 +00:00
clap_utils Split common crates out into their own repos (#3890) 2023-04-28 01:15:40 +00:00
compare_fields Clippy 1.67 (#3916) 2023-01-27 09:48:42 +00:00
compare_fields_derive Appease Clippy 1.68 and refactor http_api (#4068) 2023-03-13 01:40:03 +00:00
deposit_contract Split common crates out into their own repos (#3890) 2023-04-28 01:15:40 +00:00
directory Update to Rust 1.59 and 2021 edition (#3038) 2022-02-25 00:10:17 +00:00
eth2 Implement el_offline and use it in the VC (#4295) 2023-05-17 05:51:56 +00:00
eth2_config Delete Kiln and Ropsten configs (#4038) 2023-03-01 06:16:14 +00:00
eth2_interop_keypairs Split common crates out into their own repos (#3890) 2023-04-28 01:15:40 +00:00
eth2_network_config add more sepolia bootnodes (#4297) 2023-05-19 07:40:35 +00:00
eth2_wallet_manager Replace OpenOptions::new with File::options to be readable (#3059) 2022-03-07 06:30:18 +00:00
filesystem Fix rust 1.65 lints (#3682) 2022-11-04 07:43:43 +00:00
lighthouse_metrics Support histogram buckets (#3391) 2022-09-13 01:57:44 +00:00
lighthouse_version Release v4.1.0 (#4191) 2023-04-20 00:51:38 +00:00
lockfile Replace OpenOptions::new with File::options to be readable (#3059) 2022-03-07 06:30:18 +00:00
logging Logging via the HTTP API (#4074) 2023-05-22 05:57:08 +00:00
lru_cache Correct a race condition when dialing peers (#4056) 2023-03-16 05:44:54 +00:00
malloc_utils Switch allocator to jemalloc (#3697) 2023-01-20 04:19:29 +00:00
monitoring_api Remove fallback support from eth1 service (#3594) 2022-10-04 08:33:39 +00:00
oneshot_broadcast Fix concurrency issue with oneshot_broadcast (#3596) 2022-09-21 10:52:14 +00:00
sensitive_url Fix lints for Rust 1.63 (#3459) 2022-08-12 00:56:39 +00:00
slot_clock Rate limiting backfill sync (#3936) 2023-04-03 03:02:55 +00:00
system_health Health Endpoints for UI (#3668) 2022-11-15 05:21:26 +00:00
target_check Update to Rust 1.59 and 2021 edition (#3038) 2022-02-25 00:10:17 +00:00
task_executor Enable proposer boost re-orging (#2860) 2022-12-13 09:57:26 +00:00
test_random_derive Update to Rust 1.59 and 2021 edition (#3038) 2022-02-25 00:10:17 +00:00
unused_port Test failing CI tests due to port conflicts (#4134) 2023-03-30 06:08:38 +00:00
validator_dir Split common crates out into their own repos (#3890) 2023-04-28 01:15:40 +00:00
warp_utils Appease Clippy 1.68 and refactor http_api (#4068) 2023-03-13 01:40:03 +00:00
README.md Directory Restructure (#1163) 2020-05-18 21:24:23 +10:00

eth2

Common crates containing eth2-specific logic.