Add one-line json logging in node-status#589
Merged
evgeny-stakewise merged 2 commits intonode-featurefrom Oct 20, 2025
Merged
Conversation
cyc60
approved these changes
Oct 20, 2025
evgeny-stakewise
added a commit
that referenced
this pull request
Dec 10, 2025
* Allow run with multiple vaults (#461) * Allow run with multiple vaults Signed-off-by: cyc60 <avsysoev60@gmail.com> * Allow run with multiple vaults Signed-off-by: cyc60 <avsysoev60@gmail.com> * Update readme Signed-off-by: cyc60 <avsysoev60@gmail.com> * Rename to config dir Signed-off-by: cyc60 <avsysoev60@gmail.com> * Update tests Signed-off-by: cyc60 <avsysoev60@gmail.com> * Update tests 2 Signed-off-by: cyc60 <avsysoev60@gmail.com> * Markdown linter fixes Signed-off-by: cyc60 <avsysoev60@gmail.com> * Text improvements Signed-off-by: cyc60 <avsysoev60@gmail.com> * Deposit data cleanup Signed-off-by: cyc60 <avsysoev60@gmail.com> * Registration fixes Signed-off-by: cyc60 <avsysoev60@gmail.com> * Dappnode support Signed-off-by: cyc60 <avsysoev60@gmail.com> * Add web3signer deposit data Signed-off-by: cyc60 <avsysoev60@gmail.com> * Fix remote signer setup Signed-off-by: cyc60 <avsysoev60@gmail.com> * Review fixes #1 Signed-off-by: cyc60 <avsysoev60@gmail.com> * Review fixes #2 Signed-off-by: cyc60 <avsysoev60@gmail.com> * Linter fixes Signed-off-by: cyc60 <avsysoev60@gmail.com> * Rename validator.txt file Signed-off-by: cyc60 <avsysoev60@gmail.com> * Packages update Signed-off-by: cyc60 <avsysoev60@gmail.com> * Review fixes #3 Signed-off-by: cyc60 <avsysoev60@gmail.com> --------- Signed-off-by: cyc60 <avsysoev60@gmail.com> * Use separate dir for every network (#470) * Use separate dir for every network Signed-off-by: cyc60 <avsysoev60@gmail.com> * Review fix Signed-off-by: cyc60 <avsysoev60@gmail.com> --------- Signed-off-by: cyc60 <avsysoev60@gmail.com> * Multivault migration (#471) * Multivault migration Signed-off-by: cyc60 <avsysoev60@gmail.com> * Migration refactoring Signed-off-by: cyc60 <avsysoev60@gmail.com> * Review fixes Signed-off-by: cyc60 <avsysoev60@gmail.com> --------- Signed-off-by: cyc60 <avsysoev60@gmail.com> * V4 registration (#473) * Support pectra v2 validators registration Signed-off-by: cyc60 <avsysoev60@gmail.com> * Updates for pectra registration Signed-off-by: cyc60 <avsysoev60@gmail.com> * Updates for pectra registration Signed-off-by: cyc60 <avsysoev60@gmail.com> * Review fixes Signed-off-by: cyc60 <avsysoev60@gmail.com> * Remove validators_manager_signature from contract call Signed-off-by: cyc60 <avsysoev60@gmail.com> * Review fixes Signed-off-by: cyc60 <avsysoev60@gmail.com> * Packages update Signed-off-by: cyc60 <avsysoev60@gmail.com> * Update click Signed-off-by: cyc60 <avsysoev60@gmail.com> --------- Signed-off-by: cyc60 <avsysoev60@gmail.com> * Fund post-pectra (#474) * Fund post-pectra Signed-off-by: cyc60 <avsysoev60@gmail.com> * Review fixes Signed-off-by: cyc60 <avsysoev60@gmail.com> * Register new validators after funding current Signed-off-by: cyc60 <avsysoev60@gmail.com> * Register new validators after funding current Signed-off-by: cyc60 <avsysoev60@gmail.com> * Allow to fund new validators Signed-off-by: cyc60 <avsysoev60@gmail.com> * Review fixes Signed-off-by: cyc60 <avsysoev60@gmail.com> * Small cleanup Signed-off-by: cyc60 <avsysoev60@gmail.com> * Remove empty status check Signed-off-by: cyc60 <avsysoev60@gmail.com> * Review fixes Signed-off-by: cyc60 <avsysoev60@gmail.com> * Fix comment Signed-off-by: cyc60 <avsysoev60@gmail.com> --------- Signed-off-by: cyc60 <avsysoev60@gmail.com> * Some fixes for v4 flow (#475) Signed-off-by: cyc60 <avsysoev60@gmail.com> * Save vault validators keys to database (#478) * Save vault validators keys to database Signed-off-by: cyc60 <avsysoev60@gmail.com> * Fix non_activated_balances Signed-off-by: cyc60 <avsysoev60@gmail.com> * Review fixes Signed-off-by: cyc60 <avsysoev60@gmail.com> * Update sw-utils Signed-off-by: cyc60 <avsysoev60@gmail.com> --------- Signed-off-by: cyc60 <avsysoev60@gmail.com> * Add validator consolidation (#476) * Add validator consolidation Signed-off-by: cyc60 <avsysoev60@gmail.com> * Add more logs Signed-off-by: cyc60 <avsysoev60@gmail.com> * Consolidation fixes Signed-off-by: cyc60 <avsysoev60@gmail.com> * Move tx func to separate module Signed-off-by: cyc60 <avsysoev60@gmail.com> * Update readme Signed-off-by: cyc60 <avsysoev60@gmail.com> * Refactor consolidation Signed-off-by: cyc60 <avsysoev60@gmail.com> * Small fixes Signed-off-by: cyc60 <avsysoev60@gmail.com> * Fix readme Signed-off-by: cyc60 <avsysoev60@gmail.com> * Review fixes Signed-off-by: cyc60 <avsysoev60@gmail.com> * Review fix Signed-off-by: cyc60 <avsysoev60@gmail.com> * Review fixes Signed-off-by: cyc60 <avsysoev60@gmail.com> * Update readme Signed-off-by: cyc60 <avsysoev60@gmail.com> * Update readme Signed-off-by: cyc60 <avsysoev60@gmail.com> --------- Signed-off-by: cyc60 <avsysoev60@gmail.com> * Fixes for pectra flow: fix recover, add gas check (#480) * Fixes for pectra flow: remove v2 pool contract, fix recover, add gas check Signed-off-by: cyc60 <avsysoev60@gmail.com> * Restore V2PoolContract Signed-off-by: cyc60 <avsysoev60@gmail.com> --------- Signed-off-by: cyc60 <avsysoev60@gmail.com> * Add node-install command (#483) * Add node-install command * Review fixes * Fix linter * Review fixes 2 * Move platform dependency out of typings * Restore gwei prefix (#489) * Fix typo in vaults (#490) * Split start command (#488) * Split start command Signed-off-by: cyc60 <avsysoev60@gmail.com> * Add public-keys option Signed-off-by: cyc60 <avsysoev60@gmail.com> * Review fixes Signed-off-by: cyc60 <avsysoev60@gmail.com> * Fix typo Signed-off-by: cyc60 <avsysoev60@gmail.com> * Review fixes Signed-off-by: cyc60 <avsysoev60@gmail.com> * Review fixes Signed-off-by: cyc60 <avsysoev60@gmail.com> --------- Signed-off-by: cyc60 <avsysoev60@gmail.com> * Reward splitter (#479) * Add reward splitter command Signed-off-by: cyc60 <avsysoev60@gmail.com> * Move split reward to task Signed-off-by: cyc60 <avsysoev60@gmail.com> * Refactor graph client, add startup checks Signed-off-by: cyc60 <avsysoev60@gmail.com> * Small fixes Signed-off-by: cyc60 <avsysoev60@gmail.com> * Naming refactoring Signed-off-by: cyc60 <avsysoev60@gmail.com> * Remove graph harvest params, fix multicall batching Signed-off-by: cyc60 <avsysoev60@gmail.com> * Add reward splitter interval and update readme Signed-off-by: cyc60 <avsysoev60@gmail.com> * Review fixes #1 Signed-off-by: cyc60 <avsysoev60@gmail.com> * Review fixes #2 Signed-off-by: cyc60 <avsysoev60@gmail.com> * Check claimer account Signed-off-by: cyc60 <avsysoev60@gmail.com> * Move reward splitter ABI Signed-off-by: cyc60 <avsysoev60@gmail.com> * Update packages Signed-off-by: cyc60 <avsysoev60@gmail.com> * Review fixes Signed-off-by: cyc60 <avsysoev60@gmail.com> * Remove multicall Signed-off-by: cyc60 <avsysoev60@gmail.com> * Remove multicall in comments Signed-off-by: cyc60 <avsysoev60@gmail.com> * Fix reward splitter query Signed-off-by: cyc60 <avsysoev60@gmail.com> * Review fix Signed-off-by: cyc60 <avsysoev60@gmail.com> --------- Signed-off-by: cyc60 <avsysoev60@gmail.com> * Add config properties for keystores (#492) Signed-off-by: cyc60 <avsysoev60@gmail.com> * Fix vaults parameter validation (#493) Signed-off-by: cyc60 <avsysoev60@gmail.com> * Add node-start command (#485) * Add node-start command, start Reth * Start Lighthouse * Review fixes * Add NodeConfig, ERA_URL * Do not reraise KeyboardInterrupt * Del ERA_URL for Hoodi * Use default jwt secret path, create data-dir if not exists * Move ProcessBuilder to process.py * Rework with asyncio * Add hardware checks * Fix quotes * Add pruning options for Reth * Fix pruning * Handle node start failure * Fixes of stopping * Bump Lighthouse v7.1.0 * Rename hot-wallet to wallet (#494) Signed-off-by: cyc60 <avsysoev60@gmail.com> * V4 withdrawals (#484) * Add validators withdrawn Signed-off-by: cyc60 <avsysoev60@gmail.com> * Rework queued assets Signed-off-by: cyc60 <avsysoev60@gmail.com> * Review fixes #1 Signed-off-by: cyc60 <avsysoev60@gmail.com> * Validate last withdrawal via consensus Signed-off-by: cyc60 <avsysoev60@gmail.com> * Add full withdrawals Signed-off-by: cyc60 <avsysoev60@gmail.com> * Add tests, small fixes Signed-off-by: cyc60 <avsysoev60@gmail.com> * Add tests Signed-off-by: cyc60 <avsysoev60@gmail.com> * Typo fixes Signed-off-by: cyc60 <avsysoev60@gmail.com> * Review fixes Signed-off-by: cyc60 <avsysoev60@gmail.com> * Simplify get_withdrawals_data Signed-off-by: cyc60 <avsysoev60@gmail.com> * Review fixes Signed-off-by: cyc60 <avsysoev60@gmail.com> * Check execution layer withdrawals queue Signed-off-by: cyc60 <avsysoev60@gmail.com> * Small fixes Signed-off-by: cyc60 <avsysoev60@gmail.com> * Review fixes Signed-off-by: cyc60 <avsysoev60@gmail.com> * Add validators subtasks Signed-off-by: cyc60 <avsysoev60@gmail.com> * Add partial_capacity to validator Signed-off-by: cyc60 <avsysoev60@gmail.com> * Use consensus block execution_requests to validate withdrawal event Signed-off-by: cyc60 <avsysoev60@gmail.com> --------- Signed-off-by: cyc60 <avsysoev60@gmail.com> * Use different validator types depending on the vault version (#495) Signed-off-by: cyc60 <avsysoev60@gmail.com> * Add validator client to node-start command (#498) * Add generate_validator_definitions_file * Run validator client * Reuse parent's stdout in subprocess * Use subprocess from asyncio * Added flags to show / hide nodes output * Add setup_clients * Rework program / args params * Fix pruning options * Fix validator_definitions_path * Fix validator_definitions_path 2 * Add init_slashing_protection * Take network and data_dir from settings * Refactor command * Fix log message * Edit log message * Del keystores_dir arg from update_validator_definitions_file * Create validators dir * init_slashing_protection is always True * Support multiple vaults * Rename options * Fix log message in startup check * Review fixes --------- Co-authored-by: Dmitri Tsumak <tsumak.dmitri@gmail.com> * Add migration guide (#496) * Add migration guide Signed-off-by: cyc60 <avsysoev60@gmail.com> * Review fixes Signed-off-by: cyc60 <avsysoev60@gmail.com> * Update startup checks Signed-off-by: cyc60 <avsysoev60@gmail.com> * Review fixes Signed-off-by: cyc60 <avsysoev60@gmail.com> * Review fix Signed-off-by: cyc60 <avsysoev60@gmail.com> * Review fix Signed-off-by: cyc60 <avsysoev60@gmail.com> --------- Signed-off-by: cyc60 <avsysoev60@gmail.com> Co-authored-by: Dmitri Tsumak <tsumak.dmitri@gmail.com> * Update contracts (#500) Signed-off-by: cyc60 <avsysoev60@gmail.com> * Rm public keys (#501) * Use public keys from keystore Signed-off-by: cyc60 <avsysoev60@gmail.com> * Fix tests Signed-off-by: cyc60 <avsysoev60@gmail.com> --------- Signed-off-by: cyc60 <avsysoev60@gmail.com> * Fix first validator registration (#502) Signed-off-by: cyc60 <avsysoev60@gmail.com> * Add non finalized validators to funding (#503) * Add non finalized validators to funding Signed-off-by: cyc60 <avsysoev60@gmail.com> * Update types Signed-off-by: cyc60 <avsysoev60@gmail.com> --------- Signed-off-by: cyc60 <avsysoev60@gmail.com> * Filter validators by SHARD_COMMITTEE_PERIOD (#504) Signed-off-by: cyc60 <avsysoev60@gmail.com> * Add checks to consolidation (#505) * Add checks to consolidation Signed-off-by: cyc60 <avsysoev60@gmail.com> * Review fix Signed-off-by: cyc60 <avsysoev60@gmail.com> --------- Signed-off-by: cyc60 <avsysoev60@gmail.com> * Withdrawals: filter consolidated balances (#506) * Withdrawals: filter consolidated balances Signed-off-by: cyc60 <avsysoev60@gmail.com> * Review fix Signed-off-by: cyc60 <avsysoev60@gmail.com> --------- Signed-off-by: cyc60 <avsysoev60@gmail.com> * Add tests to withdrawals (#507) Signed-off-by: cyc60 <avsysoev60@gmail.com> * Add tests to click validators (#508) * Add tests to click validators Signed-off-by: cyc60 <avsysoev60@gmail.com> * Remove duplicated code Signed-off-by: cyc60 <avsysoev60@gmail.com> --------- Signed-off-by: cyc60 <avsysoev60@gmail.com> * Add tests to click validators (#508) * Add tests to click validators Signed-off-by: cyc60 <avsysoev60@gmail.com> * Remove duplicated code Signed-off-by: cyc60 <avsysoev60@gmail.com> --------- Signed-off-by: cyc60 <avsysoev60@gmail.com> * Small refactoring (#509) Signed-off-by: cyc60 <avsysoev60@gmail.com> * Remove fetch validators with extra filters (#510) Signed-off-by: cyc60 <avsysoev60@gmail.com> * Rename pool size to concurrency (#512) Signed-off-by: cyc60 <avsysoev60@gmail.com> * Structure update (#511) * Fix structure, update help texts * Fix renaming setup_remote_signer * Fix renaming exit_validators * Update parameter names Signed-off-by: cyc60 <avsysoev60@gmail.com> * Update Readme Signed-off-by: cyc60 <avsysoev60@gmail.com> * Review fix Signed-off-by: cyc60 <avsysoev60@gmail.com> --------- Signed-off-by: cyc60 <avsysoev60@gmail.com> Co-authored-by: cyc60 <avsysoev60@gmail.com> * Remove import genesis keys command (#514) Signed-off-by: cyc60 <avsysoev60@gmail.com> * Update testnet contacts (#515) Signed-off-by: cyc60 <avsysoev60@gmail.com> * Remove min validators registration param (#516) Signed-off-by: cyc60 <avsysoev60@gmail.com> * Add node-status command (#513) * Add node-status command * Fix syncing * Cosmetic changes * Add validator activity info * Fix status * Revert "Fix status" This reverts commit d308044. * Fix validators request * Funding delay (#517) * Add min funding delay Signed-off-by: cyc60 <avsysoev60@gmail.com> * Fix funding flow Signed-off-by: cyc60 <avsysoev60@gmail.com> * Update min deposit delay default Signed-off-by: cyc60 <avsysoev60@gmail.com> --------- Signed-off-by: cyc60 <avsysoev60@gmail.com> * Remove unused pylint disable (#519) * Remove unused pylint disable Signed-off-by: cyc60 <avsysoev60@gmail.com> * Decrease test coverage Signed-off-by: cyc60 <avsysoev60@gmail.com> * Rename subtasks process method Signed-off-by: cyc60 <avsysoev60@gmail.com> * Use Gwei for validators registration Signed-off-by: cyc60 <avsysoev60@gmail.com> --------- Signed-off-by: cyc60 <avsysoev60@gmail.com> * Refactored fetch_compounding_validators_balances (#520) * Refactored fetch_compounding_validators_balances Signed-off-by: cyc60 <avsysoev60@gmail.com> * Lock slot number Signed-off-by: cyc60 <avsysoev60@gmail.com> * Review fixes Signed-off-by: cyc60 <avsysoev60@gmail.com> * Review fix Signed-off-by: cyc60 <avsysoev60@gmail.com> * Use head slot Signed-off-by: cyc60 <avsysoev60@gmail.com> --------- Signed-off-by: cyc60 <avsysoev60@gmail.com> * Simplify get_withdrawable_assets (#521) * Update sw-utils (#523) Signed-off-by: cyc60 <avsysoev60@gmail.com> * Fix bandit linter (#524) * Fix bandit linter Signed-off-by: cyc60 <avsysoev60@gmail.com> * Update bandit Signed-off-by: cyc60 <avsysoev60@gmail.com> --------- Signed-off-by: cyc60 <avsysoev60@gmail.com> * Disable funding for 0x01 validators (#522) * Disable funding for 0x01 validators Signed-off-by: cyc60 <avsysoev60@gmail.com> * Review fix Signed-off-by: cyc60 <avsysoev60@gmail.com> --------- Signed-off-by: cyc60 <avsysoev60@gmail.com> * Automated consolidation (#518) * Automated consolidation Signed-off-by: cyc60 <avsysoev60@gmail.com> * Update auto consolidation logic Signed-off-by: cyc60 <avsysoev60@gmail.com> * Rm unused log Signed-off-by: cyc60 <avsysoev60@gmail.com> * Review fixes Signed-off-by: cyc60 <avsysoev60@gmail.com> * Review fixes Signed-off-by: cyc60 <avsysoev60@gmail.com> * Set pectra block for V2ValidatorRegistered Signed-off-by: cyc60 <avsysoev60@gmail.com> * Use justified chain head Signed-off-by: cyc60 <avsysoev60@gmail.com> * Update log entry Signed-off-by: cyc60 <avsysoev60@gmail.com> * Rename tx_fee Signed-off-by: cyc60 <avsysoev60@gmail.com> * Add log Signed-off-by: cyc60 <avsysoev60@gmail.com> --------- Signed-off-by: cyc60 <avsysoev60@gmail.com> * Fixes after merge * Fix tests * Add node sync eta (#527) * Add dump sync status * Add eta to node-status command * Fixes * Add format_eta * Fixes 2 * Fixes 3 * Fixes 4 * Increase history len to 10 * Refactor * Include eta into status dict * Add StatusHistoryRecord * Add sync distance to execution status * Add info about nodes in readme (#531) * Fix nodes startup (#533) * Fix startup * Add startup_interval * Update validator definitions after nodes are ready * Added --run-nodes flag to start command (#539) * Add --run-nodes flag to start command * Add defaults for execution and consensus endpoints * Moved wait_execution_catch_up_consensus to startup checks * Moved wait_execution_catch_up_consensus from checks.py to startup_check.py * Restore after merge * Rework to single vault setup * Restore readme from master * Fix aiohttp version * Removed network param * Copilot review fixes * Rework nodes dir * Replace --vault param to --network for node-install and node-status * Copilot review fix * Added --run-nodes flag to start command (#539) * Add --run-nodes flag to start command * Add defaults for execution and consensus endpoints * Moved wait_execution_catch_up_consensus to startup checks * Moved wait_execution_catch_up_consensus from checks.py to startup_check.py * Fixed nodes dir * Upd reth and lighthouse versions * Bump v4.1.0.dev6 * Add one-line json logging in node-status (#589) * Initial sync progress (#590) * Add calc initial sync progress * Add progress to text output * Fix sync status path * Combine initial and regular progress * Fix regular sync eta * Set SYNC_STATUS_HISTORY_LEN to 1000 * Fix number of active validators * Fix consensus eta float * Improve _calc_consensus_eta * Add execution sync history * Fix Execution sync path * Add update_timestamp field in execution sync file * Fix csv header * Restore eta based on stages, del progress * Print execution speed * Del progress from output * Bump v4.1.0.dev8 * Add try-except for sync status * Fix execution speed * Set default execution speed 1.5 * Add default consensus speed * Bump v4.1.0.dev9 * Add debug logging in node-status * Add file logging, fix consensus speed * Fix logging * Bump v4.1.0.dev11 * Display validator activity stats independent of syncing * Bump v4.1.0.dev12 * Restored vault arg in node-status * Fix vault dir * Bump v4.1.0 * Review fix * Add comment to default_consensus_speed Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Signed-off-by: evgeny-stakewise <123374581+evgeny-stakewise@users.noreply.github.com> * Add comment to default execution_speed Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Signed-off-by: evgeny-stakewise <123374581+evgeny-stakewise@users.noreply.github.com> * Fix lint --------- Signed-off-by: evgeny-stakewise <123374581+evgeny-stakewise@users.noreply.github.com> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> * Parse stage progress (#610) * Add calc_stage_eta * Add stage weights * Add INITIAL_SYNC_STAGE_TO_ETA * Fix read_last_lines * Fix calc_stage_eta * Set DEFAULT_LIGHTHOUSE_VERSION to v8.0.0 * Improve calc_stage_eta * Review fixes * Review fix 2 * Fix typos * Copilot review fix * Remove duplicated checks * Copilot review fix * Use shared mev address as fee recipient * Review fixes * Revert "Use shared mev address as fee recipient" This reverts commit f701852. * Fix fee recipient for NodeWise * Restored validate_settings --------- Signed-off-by: cyc60 <avsysoev60@gmail.com> Signed-off-by: evgeny-stakewise <123374581+evgeny-stakewise@users.noreply.github.com> Co-authored-by: Alexander Sysoev <avsysoev60@gmail.com> Co-authored-by: Dmitri Tsumak <tsumak.dmitri@gmail.com> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.