]> git.proxmox.com Git - proxmox-backup.git/commitdiff
move metrics connection from pbs-config to proxy
authorWolfgang Bumiller <w.bumiller@proxmox.com>
Fri, 20 Jan 2023 09:59:55 +0000 (10:59 +0100)
committerWolfgang Bumiller <w.bumiller@proxmox.com>
Fri, 20 Jan 2023 09:59:55 +0000 (10:59 +0100)
it's the only user and pbs-config shouldn't depend on the metric client

Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
pbs-config/Cargo.toml
pbs-config/src/metrics.rs
src/bin/proxmox-backup-proxy.rs

index 8d8db197c5a77d233ec58b7e5c51fa7e0455b9a6..9daa6ef42ae5418133cf00e7e746cb46a3670969 100644 (file)
@@ -17,7 +17,6 @@ regex.workspace = true
 serde.workspace = true
 serde_json.workspace = true
 
-proxmox-metrics.workspace = true
 proxmox-router = { workspace = true, default-features = false }
 proxmox-schema.workspace = true
 proxmox-section-config.workspace = true
index 219c717b4c8d7aaa7b88f4a141a79e40b88d8d62..78e683e329734d922d51480d146f80c00bdd5646 100644 (file)
@@ -3,7 +3,6 @@ use std::collections::HashMap;
 use anyhow::Error;
 use lazy_static::lazy_static;
 
-use proxmox_metrics::{influxdb_http, influxdb_udp, Metrics};
 use proxmox_schema::*;
 use proxmox_section_config::{SectionConfig, SectionConfigData, SectionConfigPlugin};
 
@@ -68,38 +67,3 @@ pub fn complete_remote_name(_arg: &str, _param: &HashMap<String, String>) -> Vec
         Err(_) => Vec::new(),
     }
 }
-
-/// Get the metric server connections from a config
-pub fn get_metric_server_connections(
-    metric_config: SectionConfigData,
-) -> Result<Vec<(Metrics, String)>, Error> {
-    let mut res = Vec::new();
-
-    for config in
-        metric_config.convert_to_typed_array::<pbs_api_types::InfluxDbUdp>("influxdb-udp")?
-    {
-        if !config.enable {
-            continue;
-        }
-        let future = influxdb_udp(&config.host, config.mtu);
-        res.push((future, config.name));
-    }
-
-    for config in
-        metric_config.convert_to_typed_array::<pbs_api_types::InfluxDbHttp>("influxdb-http")?
-    {
-        if !config.enable {
-            continue;
-        }
-        let future = influxdb_http(
-            &config.url,
-            config.organization.as_deref().unwrap_or("proxmox"),
-            config.bucket.as_deref().unwrap_or("proxmox"),
-            config.token.as_deref(),
-            config.verify_tls.unwrap_or(true),
-            config.max_body_size.unwrap_or(25_000_000),
-        )?;
-        res.push((future, config.name));
-    }
-    Ok(res)
-}
index ec2a87441b9a81ed5abdc05bd600cd752c15cc59..0f19201256e069daf55e91a5c7bd328899ab9caf 100644 (file)
@@ -29,7 +29,6 @@ use proxmox_sys::linux::{
 use proxmox_sys::logrotate::LogRotate;
 use proxmox_sys::{task_log, task_warn};
 
-use pbs_config::metrics::get_metric_server_connections;
 use pbs_datastore::DataStore;
 
 use proxmox_rest_server::{
@@ -1100,6 +1099,41 @@ async fn send_data_to_metric_servers(
     Ok(())
 }
 
+/// Get the metric server connections from a config
+pub fn get_metric_server_connections(
+    metric_config: proxmox_section_config::SectionConfigData,
+) -> Result<Vec<(proxmox_metrics::Metrics, String)>, Error> {
+    let mut res = Vec::new();
+
+    for config in
+        metric_config.convert_to_typed_array::<pbs_api_types::InfluxDbUdp>("influxdb-udp")?
+    {
+        if !config.enable {
+            continue;
+        }
+        let future = proxmox_metrics::influxdb_udp(&config.host, config.mtu);
+        res.push((future, config.name));
+    }
+
+    for config in
+        metric_config.convert_to_typed_array::<pbs_api_types::InfluxDbHttp>("influxdb-http")?
+    {
+        if !config.enable {
+            continue;
+        }
+        let future = proxmox_metrics::influxdb_http(
+            &config.url,
+            config.organization.as_deref().unwrap_or("proxmox"),
+            config.bucket.as_deref().unwrap_or("proxmox"),
+            config.token.as_deref(),
+            config.verify_tls.unwrap_or(true),
+            config.max_body_size.unwrap_or(25_000_000),
+        )?;
+        res.push((future, config.name));
+    }
+    Ok(res)
+}
+
 struct HostStats {
     proc: Option<ProcFsStat>,
     meminfo: Option<ProcFsMemInfo>,