feat(admin): Windows hardware cards (CPU/RAM/GPU/Disks) with Lucide icons; feat(desktop): inventory summary cards; feat(agent/windows): extended hardware collectors (CPU/board/BIOS/memory/video/disks); fix(agent): memory units in bytes
This commit is contained in:
parent
fcd45ff034
commit
c70691bce8
6 changed files with 6200 additions and 126 deletions
|
|
@ -193,7 +193,8 @@ fn build_inventory_metadata(system: &System) -> serde_json::Value {
|
|||
.first()
|
||||
.map(|cpu| cpu.brand().to_string())
|
||||
.unwrap_or_default();
|
||||
let mem_total_bytes = system.total_memory().saturating_mul(1024);
|
||||
// sysinfo 0.31 já retorna bytes em total_memory/used_memory
|
||||
let mem_total_bytes = system.total_memory();
|
||||
let network = collect_network_addrs();
|
||||
let disks = collect_disks(system);
|
||||
let mut inventory = json!({
|
||||
|
|
@ -489,12 +490,26 @@ fn collect_windows_extended() -> serde_json::Value {
|
|||
let defender = ps("Get-MpComputerStatus | Select-Object AMRunningMode,AntivirusEnabled,RealTimeProtectionEnabled,AntispywareEnabled").unwrap_or_else(|| json!({}));
|
||||
let hotfix = ps("Get-HotFix | Select-Object HotFixID,InstalledOn").unwrap_or_else(|| json!([]));
|
||||
|
||||
// Hardware detalhado (CPU/Board/BIOS/Memória/Vídeo/Discos)
|
||||
let cpu = ps("Get-CimInstance Win32_Processor | Select-Object Name,Manufacturer,SocketDesignation,NumberOfCores,NumberOfLogicalProcessors,L2CacheSize,L3CacheSize,MaxClockSpeed").unwrap_or_else(|| json!({}));
|
||||
let baseboard = ps("Get-CimInstance Win32_BaseBoard | Select-Object Product,Manufacturer,SerialNumber,Version").unwrap_or_else(|| json!({}));
|
||||
let bios = ps("Get-CimInstance Win32_BIOS | Select-Object Manufacturer,SMBIOSBIOSVersion,ReleaseDate,Version").unwrap_or_else(|| json!({}));
|
||||
let memory = ps("Get-CimInstance Win32_PhysicalMemory | Select-Object BankLabel,Capacity,Manufacturer,PartNumber,SerialNumber,ConfiguredClockSpeed,Speed,ConfiguredVoltage").unwrap_or_else(|| json!([]));
|
||||
let video = ps("Get-CimInstance Win32_VideoController | Select-Object Name,AdapterRAM,DriverVersion,PNPDeviceID").unwrap_or_else(|| json!([]));
|
||||
let disks = ps("Get-CimInstance Win32_DiskDrive | Select-Object Model,SerialNumber,Size,InterfaceType,MediaType").unwrap_or_else(|| json!([]));
|
||||
|
||||
json!({
|
||||
"windows": {
|
||||
"software": software,
|
||||
"services": services,
|
||||
"defender": defender,
|
||||
"hotfix": hotfix,
|
||||
"cpu": cpu,
|
||||
"baseboard": baseboard,
|
||||
"bios": bios,
|
||||
"memoryModules": memory,
|
||||
"videoControllers": video,
|
||||
"disks": disks,
|
||||
}
|
||||
})
|
||||
}
|
||||
|
|
@ -544,8 +559,9 @@ fn collect_metrics(system: &System) -> MachineMetrics {
|
|||
let collected_at = Utc::now();
|
||||
let total_memory = system.total_memory();
|
||||
let used_memory = system.used_memory();
|
||||
let memory_total_bytes = total_memory.saturating_mul(1024);
|
||||
let memory_used_bytes = used_memory.saturating_mul(1024);
|
||||
// sysinfo 0.31: valores já em bytes
|
||||
let memory_total_bytes = total_memory;
|
||||
let memory_used_bytes = used_memory;
|
||||
let memory_used_percent = if total_memory > 0 {
|
||||
(used_memory as f32 / total_memory as f32) * 100.0
|
||||
} else {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue