mirror of
https://github.com/Icinga/icinga-powershell-framework.git
synced 2025-12-20 23:00:35 -05:00
59 lines
No EOL
3.1 KiB
PowerShell
59 lines
No EOL
3.1 KiB
PowerShell
param($Config = $null);
|
|
#
|
|
# Fetch the Memory Hardware informations
|
|
#
|
|
|
|
# Lets load some additional memory informations, besides current performance counters
|
|
# It might be useful to get more details about the hardware itself
|
|
$MemoryInformations = Get-CimInstance Win32_PhysicalMemory;
|
|
$capacity = $MemoryInformations | Measure-Object -Property capacity -Sum;
|
|
|
|
# Lets load the details from our RAM modules
|
|
[hashtable]$PhysicalMemoryData = @{};
|
|
|
|
$PhysicalMemoryData.Add('Modules', $capacity.Count);
|
|
|
|
foreach($memory_object in $MemoryInformations) {
|
|
$memory_datails = @{};
|
|
$memory_datails.Add('caption', $memory_object.Caption);
|
|
$memory_datails.Add('desc', $memory_object.Description);
|
|
$memory_datails.Add('name', $memory_object.Name);
|
|
$memory_datails.Add('install_date', $memory_object.InstallDate);
|
|
$memory_datails.Add('status', $memory_object.Status);
|
|
$memory_datails.Add('creation_class_name', $memory_object.CreationClassName);
|
|
$memory_datails.Add('manufacturer', $memory_object.Manufacturer);
|
|
$memory_datails.Add('model', $memory_object.Model);
|
|
$memory_datails.Add('other_identifiying_info', $memory_object.OtherIdentifyingInfo);
|
|
$memory_datails.Add('part_number', $memory_object.PartNumber);
|
|
$memory_datails.Add('powered_on', $memory_object.PoweredOn);
|
|
$memory_datails.Add('serial_number', $memory_object.SerialNumber);
|
|
$memory_datails.Add('sku', $memory_object.SKU);
|
|
$memory_datails.Add('tag', $memory_object.Tag);
|
|
$memory_datails.Add('version', $memory_object.Version);
|
|
$memory_datails.Add('hot_swappable', $memory_object.HotSwappable);
|
|
$memory_datails.Add('removable', $memory_object.Removable);
|
|
$memory_datails.Add('replaceable', $memory_object.Replaceable);
|
|
$memory_datails.Add('form_factor', $memory_object.FormFactor);
|
|
$memory_datails.Add('bank_label', $memory_object.BankLabel);
|
|
$memory_datails.Add('capacity', $memory_object.Capacity);
|
|
$memory_datails.Add('data_width', $memory_object.DataWidth);
|
|
$memory_datails.Add('interleave_position', $memory_object.InterleavePosition);
|
|
$memory_datails.Add('memory_type', $memory_object.MemoryType);
|
|
$memory_datails.Add('position_in_row', $memory_object.PositionInRow);
|
|
$memory_datails.Add('speed', $memory_object.Speed);
|
|
$memory_datails.Add('total_width', $memory_object.TotalWidth);
|
|
$memory_datails.Add('attributes', $memory_object.Attributes);
|
|
$memory_datails.Add('configured_clock_speed', $memory_object.ConfiguredClockSpeed);
|
|
$memory_datails.Add('configured_voltage', $memory_object.ConfiguredVoltage);
|
|
$memory_datails.Add('device_locator', $memory_object.DeviceLocator);
|
|
$memory_datails.Add('interleave_data_depth', $memory_object.InterleaveDataDepth);
|
|
$memory_datails.Add('max_voltage', $memory_object.MaxVoltage);
|
|
$memory_datails.Add('min_voltage', $memory_object.MinVoltage);
|
|
$memory_datails.Add('smbios_memory_type', $memory_object.SMBIOSMemoryType);
|
|
$memory_datails.Add('type_detail', $memory_object.TypeDetail);
|
|
$memory_datails.Add('ps_computer_name', $memory_object.PSComputerName);
|
|
|
|
$PhysicalMemoryData.Add($memory_object.Tag, $memory_datails);
|
|
}
|
|
|
|
return $PhysicalMemoryData; |