Skip to content

Commit

Permalink
Run prometheus metrics only on core (#2197)
Browse files Browse the repository at this point in the history
* Token kind index

Signed-off-by: deniallugo <deniallugo@gmail.com>

* Run Prometheus periodic metrics independent from prometeus exporter

Signed-off-by: deniallugo <deniallugo@gmail.com>
  • Loading branch information
Deniallugo committed Mar 11, 2022
1 parent 9801171 commit c5c05ee
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 4 deletions.
12 changes: 9 additions & 3 deletions core/bin/server/src/main.rs
Expand Up @@ -50,6 +50,7 @@ pub enum Component {

// Additional components
Prometheus,
PrometheusPeriodicMetrics,
RejectedTaskCleaner,
}

Expand All @@ -69,6 +70,7 @@ impl FromStr for Component {
"fetchers" => Ok(Component::Fetchers),
"core" => Ok(Component::Core),
"rejected-task-cleaner" => Ok(Component::RejectedTaskCleaner),
"prometheus-periodic-metrics" => Ok(Component::PrometheusPeriodicMetrics),
other => Err(format!("{} is not a valid component name", other)),
}
}
Expand All @@ -91,6 +93,7 @@ impl Default for ComponentsToRun {
Component::Core,
Component::RejectedTaskCleaner,
Component::Fetchers,
Component::PrometheusPeriodicMetrics,
])
}
}
Expand All @@ -116,7 +119,7 @@ struct Opt {
/// comma-separated list of components to launch
#[structopt(
long,
default_value = "rest-api,web3-api,rpc-api,rpc-websocket-api,eth-sender,witness-generator,forced-exit,prometheus,core,rejected-task-cleaner,fetchers"
default_value = "rest-api,web3-api,rpc-api,rpc-websocket-api,eth-sender,witness-generator,forced-exit,prometheus,core,rejected-task-cleaner,fetchers,prometheus-periodic-metrics"
)]
components: ComponentsToRun,
}
Expand Down Expand Up @@ -273,9 +276,12 @@ async fn run_server(components: &ComponentsToRun) {
// Run prometheus data exporter.
let config = PrometheusConfig::from_env();
let prometheus_task_handle = run_prometheus_exporter(config.port);
let counter_task_handle = run_operation_counter(connection_pool.clone());
tasks.push(prometheus_task_handle);
tasks.push(counter_task_handle);
// We can run them only with active prometheus
if components.0.contains(&Component::PrometheusPeriodicMetrics) {
let counter_task_handle = run_operation_counter(connection_pool.clone());
tasks.push(counter_task_handle);
}
}

if components.0.contains(&Component::ForcedExit) {
Expand Down
2 changes: 1 addition & 1 deletion infrastructure/zk/src/server.ts
Expand Up @@ -10,7 +10,7 @@ export async function core() {
prepareForcedExitRequestAccount();

await utils.spawn(
'cargo run --bin zksync_server --release -- --components=eth-sender,witness-generator,forced-exit,prometheus,core,rejected-task-cleaner,fetchers'
'cargo run --bin zksync_server --release -- --components=eth-sender,witness-generator,forced-exit,prometheus,core,rejected-task-cleaner,fetchers,prometheus-periodic-metrics'
);
}

Expand Down

0 comments on commit c5c05ee

Please sign in to comment.