Skip to content
This repository was archived by the owner on Nov 15, 2023. It is now read-only.

Commit ebd4243

Browse files
mxindennodebreaker0-0gavofyorkexpenseshskang9
authored
Introduce Prometheus metric endpoint replacing Grafana endpoint (#4981)
* Refactor rebase master prometheus_v0.3 * Milestone1: Final Version of v0.3 * no-std or warm compatibility issues, grapana-data -source code reference and correction,applicable * Cargo.lock paritytech/master rebase * prometheus networking.rs del, grafana-data-source networking.rs pub edit and note * chore: reflect various feedback * Spaces to tabs. * Replace grafana and tidy * Add generics * Add photo back * Re-fix spaces in primitives/consensus/babe/src/inherents.rs * Refactor rebase master prometheus_v0.3 * Milestone1: Final Version of v0.3 * no-std or warm compatibility issues, grapana-data -source code reference and correction,applicable * prometheus networking.rs del, grafana-data-source networking.rs pub edit and note * chore: reflect various feedback * Replace grafana and tidy * Add generics * Add photo back * Re-fix spaces in primitives/consensus/babe/src/inherents.rs * chore: revert this file back to paritytech/master inherents.rs. * Add newline at EOF * Tidy * Use local registry * fix typo Co-Authored-By: Max Inden <[email protected]> * chore: Apply review feedback * endpoint -> exporter * fix readme * Remove lazy_static, use ServiceMetrics struct instead * Switch to using GaugeVecs * chore: without nightly , edit README * block_height -> block_height_number * Switch to a ready_transactions_number gauge * Update utils/prometheus/src/lib.rs Co-Authored-By: Max Inden <[email protected]> * no-prometheus flag add * /metrics url Input check * remove prometheus in Tracing * remove prometheus in Tracing * chore: master code rebase edit * gitlab-check-web-wasm edit code * From:from and cargo.lock update * with_prometheus_registry add background_tasks * utils/prometheus/src/lib.rs: Restructure #[cfg] for wasm without hyper Given that Hyper is not compatible with WASM targets it needs to be excluded from WASM builds. Instead of introducing #[cfg] lines throughout the crate, this patch splits the crate into two: known_os and unknown_os (WASM). * utils/prometheus/src/lib.rs: Feature gate known_os module * client/cli/src/lib.rs: Re-add newline at end of file Co-authored-by: JeseonLEE <[email protected]> Co-authored-by: Gavin Wood <[email protected]> Co-authored-by: Ashley <[email protected]> Co-authored-by: Hyungsuk Kang <[email protected]>
1 parent 6c0232b commit ebd4243

File tree

22 files changed

+409
-648
lines changed

22 files changed

+409
-648
lines changed

Cargo.lock

Lines changed: 98 additions & 49 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -53,9 +53,8 @@ members = [
5353
"client/telemetry",
5454
"client/transaction-pool",
5555
"client/transaction-pool/graph",
56+
"utils/prometheus",
5657
"utils/wasm-builder-runner",
57-
"utils/grafana-data-source",
58-
"utils/grafana-data-source/test",
5958
"frame/assets",
6059
"frame/aura",
6160
"frame/authority-discovery",

client/cli/Cargo.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ sp-core = { version = "2.0.0", path = "../../primitives/core" }
3131
sc-service = { version = "0.8", default-features = false, path = "../service" }
3232
sp-state-machine = { version = "0.8", path = "../../primitives/state-machine" }
3333
sc-telemetry = { version = "2.0.0", path = "../telemetry" }
34+
prometheus-exporter = { path = "../../utils/prometheus" }
3435
sp-keyring = { version = "2.0.0", path = "../../primitives/keyring" }
3536
names = "0.11.0"
3637
structopt = "0.3.8"

client/cli/src/lib.rs

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -623,13 +623,6 @@ where
623623
config.rpc_ws = Some(parse_address(&format!("{}:{}", ws_interface, 9944), cli.ws_port)?);
624624
}
625625

626-
if config.grafana_port.is_none() || cli.grafana_port.is_some() {
627-
let grafana_interface: &str = if cli.grafana_external { "0.0.0.0" } else { "127.0.0.1" };
628-
config.grafana_port = Some(
629-
parse_address(&format!("{}:{}", grafana_interface, 9955), cli.grafana_port)?
630-
);
631-
}
632-
633626
config.rpc_ws_max_connections = cli.ws_max_connections;
634627
config.rpc_cors = cli.rpc_cors.unwrap_or_else(|| if is_dev {
635628
log::warn!("Running in --dev mode, RPC CORS has been disabled.");
@@ -651,6 +644,14 @@ where
651644
} else if !cli.telemetry_endpoints.is_empty() {
652645
config.telemetry_endpoints = Some(TelemetryEndpoints::new(cli.telemetry_endpoints));
653646
}
647+
// Override prometheus
648+
if cli.no_prometheus {
649+
config.prometheus_port = None;
650+
} else {
651+
let prometheus_interface: &str = if cli.prometheus_external { "0.0.0.0" } else { "127.0.0.1" };
652+
config.prometheus_port = Some(
653+
parse_address(&format!("{}:{}", prometheus_interface, 9615), cli.prometheus_port)?);
654+
}
654655

655656
config.tracing_targets = cli.import_params.tracing_targets.into();
656657
config.tracing_receiver = cli.import_params.tracing_receiver.into();

0 commit comments

Comments
 (0)