-
Notifications
You must be signed in to change notification settings - Fork 88
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
app/stacksnipe: detect validator services #3169
Conversation
Detect Ethereum validator stack components by reading `/proc` and filtering processes based on an allowlist. To support containerized deployments, add `--proc-directory` flag to `charon run`: if not configured, Charon will log an `INFO` message saying it won't do anything. Support detecting interpreted components like `lodestar`. Expose the resulting data through the `app_validator_stack_params` Prometheus metric. By default, poll the specified directory every 15 seconds.
Quality Gate passedIssues Measures |
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #3169 +/- ##
==========================================
- Coverage 56.78% 56.70% -0.08%
==========================================
Files 208 209 +1
Lines 29221 29374 +153
==========================================
+ Hits 16592 16656 +64
- Misses 10802 10877 +75
- Partials 1827 1841 +14 ☔ View full report in Codecov by Sentry. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Provided a few minor comments
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This must be great feature!
@@ -91,6 +91,7 @@ func bindRunFlags(cmd *cobra.Command, config *app.Config) { | |||
cmd.Flags().Uint64Var(&config.TestnetConfig.ChainID, "testnet-chain-id", 0, "Chain ID of the custom test network.") | |||
cmd.Flags().Int64Var(&config.TestnetConfig.GenesisTimestamp, "testnet-genesis-timestamp", 0, "Genesis timestamp of the custom test network.") | |||
cmd.Flags().StringVar(&config.TestnetConfig.CapellaHardFork, "testnet-capella-hard-fork", "", "Capella hard fork version of the custom test network.") | |||
cmd.Flags().StringVar(&config.ProcDirectory, "proc-directory", "", "Directory to look into in order to detect other stack components running on the host.") |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Probably we can add an example of such dir?
Detect Ethereum validator stack components by reading
/proc
and filtering processes based on an allowlist.To support containerized deployments, add
--proc-directory
flag tocharon run
: if not configured, Charon will log anINFO
message saying it won't do anything.Support detecting interpreted components like
lodestar
.Expose the resulting data through the
app_validator_stack_params
Prometheus metric.By default, poll the specified directory every 15 seconds.
category: feature
ticket: none