Skip to content

Commit ae825c0

Browse files
committed
feat: add cluster/metrics endpoint
1. add: new endpoint /cluster/metrics 2. add: prometheus metrics parser 3. chore: code cleanup
1 parent 81b241d commit ae825c0

File tree

11 files changed

+782
-555
lines changed

11 files changed

+782
-555
lines changed

Cargo.lock

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

server/Cargo.toml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -104,6 +104,7 @@ serde_repr = "0.1.17"
104104
hashlru = { version = "0.11.0", features = ["serde"] }
105105
path-clean = "1.0.1"
106106
prost = "0.12.3"
107+
prometheus-parse = "0.2.5"
107108

108109
[build-dependencies]
109110
cargo_toml = "0.15"

server/src/handlers/http.rs

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,9 +20,10 @@ use actix_cors::Cors;
2020
use arrow_schema::Schema;
2121
use serde_json::Value;
2222

23-
use self::{modal::query_server::QueryServer, query::Query};
23+
use self::{cluster::get_ingester_info, query::Query};
2424

2525
pub(crate) mod about;
26+
pub mod cluster;
2627
pub(crate) mod health_check;
2728
pub(crate) mod ingest;
2829
mod kinesis;
@@ -62,7 +63,7 @@ pub fn base_path_without_preceding_slash() -> String {
6263

6364
pub async fn fetch_schema(stream_name: &str) -> anyhow::Result<arrow_schema::Schema> {
6465
let mut res = vec![];
65-
let ima = QueryServer::get_ingester_info().await.unwrap();
66+
let ima = get_ingester_info().await.unwrap();
6667

6768
for im in ima {
6869
let uri = format!(
@@ -92,7 +93,7 @@ pub async fn fetch_schema(stream_name: &str) -> anyhow::Result<arrow_schema::Sch
9293
pub async fn send_query_request_to_ingester(query: &Query) -> anyhow::Result<Vec<Value>> {
9394
// send the query request to the ingester
9495
let mut res = vec![];
95-
let ima = QueryServer::get_ingester_info().await.unwrap();
96+
let ima = get_ingester_info().await.unwrap();
9697

9798
for im in ima.iter() {
9899
let uri = format!(

0 commit comments

Comments
 (0)