feat(nacos): add Nacos dashboard metrics
This commit is contained in:
41 files changed
+3268
-36
No files matched your search
@@ -473,6 +473,7 @@ async fn main() {
|
||||
.route("/nacos/services/list", post(routes::nacos::list_services))
|
||||
.route("/nacos/instances/list", post(routes::nacos::list_instances))
|
||||
.route("/nacos/instances/update", post(routes::nacos::update_instance))
|
||||
.route("/nacos/dashboard", post(routes::nacos::get_dashboard))
|
||||
.route("/nacos/raw", post(routes::nacos::raw_request))
|
||||
.route("/nacos/configs/search", post(routes::nacos::search_config_content))
|
||||
.route("/nacos/configs/search/cancel", post(routes::nacos::cancel_operation))
|
||||
|
||||
@@ -109,6 +109,13 @@ pub(crate) struct InstanceUpdateReq {
|
||||
req: dbx_core::nacos::NacosInstanceUpdate,
|
||||
}
|
||||
|
||||
#[derive(serde::Deserialize)]
|
||||
#[serde(rename_all = "camelCase")]
|
||||
pub(crate) struct DashboardReq {
|
||||
connection_id: String,
|
||||
query: dbx_core::nacos::NacosDashboardQuery,
|
||||
}
|
||||
|
||||
#[derive(serde::Deserialize)]
|
||||
#[serde(rename_all = "camelCase")]
|
||||
pub(crate) struct RawReq {
|
||||
@@ -322,6 +329,16 @@ pub async fn update_instance(
|
||||
Ok(Json(()))
|
||||
}
|
||||
|
||||
pub async fn get_dashboard(
|
||||
State(state): State<Arc<WebState>>,
|
||||
Json(req): Json<DashboardReq>,
|
||||
) -> Result<Json<dbx_core::nacos::NacosDashboardSnapshot>, AppError> {
|
||||
let result = dbx_core::nacos::service::nacos_get_dashboard_core(&state.app, &req.connection_id, req.query)
|
||||
.await
|
||||
.map_err(AppError::from)?;
|
||||
Ok(Json(result))
|
||||
}
|
||||
|
||||
pub async fn raw_request(
|
||||
State(state): State<Arc<WebState>>,
|
||||
Json(req): Json<RawReq>,
|
||||
|
||||
Reference in new issue
Block a user