Need script to sent Email of cpu and diskspace and memory usage on a list of server windows server

mahmoud fikry rashad 0 Reputation points
2023-03-30T06:58:13.6866667+00:00

Need powershell script to sent Email of cpu and diskspace and memory usage on a list of server windows server

Windows for business Windows Server User experience PowerShell
Windows for business Windows Server User experience Other
0 comments No comments
{count} votes

1 answer

Sort by: Most helpful
  1. Limitless Technology 44,746 Reputation points
    2023-03-30T11:33:31.64+00:00

    Hello

    Thank you for your question and reaching out. I can understand you are having query\issues related to Server resource usage report.

    You can use below powershell code to get Report of resource usage of window server.


    cred = Get-Credential -Credential 'domain\Administrator'

    $Computers = get-content "C:\temp\serverlist.txt"

    foreach ($Computer in $Computers)

    {

    $Disks = Get-wmiobject Win32_LogicalDisk -computername $Computer -ErrorAction SilentlyContinue -filter "DriveType= 3"

    $Servername = (Get-wmiobject CIM_ComputerSystem -ComputerName $computer).Name

    $mem = Get-WmiObject win32_operatingsystem -ComputerName $computer |

                   Foreach {"{0:N0}" -f ($_.TotalVisibleMemorySize / 1MB)}
    

    foreach ($objdisk in $Disks)

    {

    $total=“{0:N0}” -f ($objDisk.Size/1GB)  
    
    $free="{0:N0}" -f ($objDisk.FreeSpace / 1GB)  
    
    $freePercent=“{0:P0}” -f ([double]$objDisk.FreeSpace/[double]$objDisk.Size)  
    

    $out=New-Object PSObject

         Add-Member -inputObject $out -MemberType NoteProperty -Name "Servername" -Value $Servername
    
         Add-Member -inputObject $out -MemberType NoteProperty -Name "Drive" -Value $objDisk.DeviceID  
    
         Add-Member -inputObject $out -MemberType NoteProperty -Name "Total size (GB)" -Value $total 
    
         Add-Member -inputObject $out -MemberType NoteProperty -Name “Free Space (GB)” -Value $free 
    
         Add-Member -inputObject $out -MemberType NoteProperty -Name “Free Space (%)” -Value $freePercent 
    
         Add-Member -inputObject $out -MemberType NoteProperty -Name “Memory” -Value $mem
    
    $out | export-csv C:\report_$((Get-Date).ToString('MM-dd-yyyy')).csv -NoTypeInformation -Append   
    

    }

    }


    Reference :

    https://social.technet.microsoft.com/Forums/ie/en-US/7398a4cc-88b7-4029-8756-83d33b6a05f8/script-to-get-the-disk-usage-and-memory-from-a-list-of-servers?forum=winserverpowershell

    --If the reply is helpful, please Upvote and Accept as answer--

    0 comments No comments

Your answer

Answers can be marked as Accepted Answers by the question author, which helps users to know the answer solved the author's problem.