mirror of
https://github.com/rustfs/rustfs.git
synced 2026-08-12 08:06:54 +00:00
add server_info cpus net_info api
Signed-off-by: mujunxiang <1948535941@qq.com>
This commit is contained in:
@@ -0,0 +1,51 @@
|
||||
use serde::{Deserialize, Serialize};
|
||||
|
||||
#[derive(Debug, Default, Serialize, Deserialize)]
|
||||
pub struct NodeCommon {
|
||||
pub addr: String,
|
||||
pub error: String,
|
||||
}
|
||||
|
||||
#[derive(Debug, Default, Serialize, Deserialize)]
|
||||
pub struct Cpu {
|
||||
vendor_id: String,
|
||||
family: String,
|
||||
model: String,
|
||||
stepping: i32,
|
||||
physical_id: String,
|
||||
model_name: String,
|
||||
mhz: f64,
|
||||
cache_size: i32,
|
||||
flags: Vec<String>,
|
||||
microcode: String,
|
||||
cores: u64,
|
||||
}
|
||||
|
||||
#[derive(Debug, Default, Serialize, Deserialize)]
|
||||
pub struct CpuFreqStats {
|
||||
name: String,
|
||||
cpuinfo_current_frequency: Option<u64>,
|
||||
cpuinfo_minimum_frequency: Option<u64>,
|
||||
cpuinfo_maximum_frequency: Option<u64>,
|
||||
cpuinfo_transition_latency: Option<u64>,
|
||||
scaling_current_frequency: Option<u64>,
|
||||
scaling_minimum_frequency: Option<u64>,
|
||||
scaling_maximum_frequency: Option<u64>,
|
||||
available_governors: String,
|
||||
driver: String,
|
||||
governor: String,
|
||||
related_cpus: String,
|
||||
set_speed: String,
|
||||
}
|
||||
|
||||
#[derive(Debug, Default, Serialize, Deserialize)]
|
||||
pub struct Cpus {
|
||||
node_common: NodeCommon,
|
||||
cpus: Vec<Cpu>,
|
||||
cpu_freq_stats: Vec<CpuFreqStats>,
|
||||
}
|
||||
|
||||
pub fn get_cpus() -> Cpus {
|
||||
// todo
|
||||
Cpus::default()
|
||||
}
|
||||
@@ -0,0 +1,2 @@
|
||||
pub mod health;
|
||||
pub mod net;
|
||||
@@ -0,0 +1,13 @@
|
||||
use serde::{Deserialize, Serialize};
|
||||
|
||||
use crate::health::NodeCommon;
|
||||
|
||||
pub mod net_linux;
|
||||
|
||||
#[derive(Debug, Default, Serialize, Deserialize)]
|
||||
pub struct NetInfo {
|
||||
node_common: NodeCommon,
|
||||
interface: String,
|
||||
driver: String,
|
||||
firmware_version: String,
|
||||
}
|
||||
@@ -0,0 +1,9 @@
|
||||
use super::NetInfo;
|
||||
|
||||
pub fn get_net_info(addr: &str, iface: &str) -> NetInfo {
|
||||
let mut ni = NetInfo::default();
|
||||
ni.node_common.addr = addr.to_string();
|
||||
ni.interface = iface.to_string();
|
||||
|
||||
ni
|
||||
}
|
||||
Reference in New Issue
Block a user