Code Monkey home page Code Monkey logo

real-time-system-resource-monitor's Introduction

Real-Time-System-Resource-Monitor

while($true)
{

    $ComputerCPU = (Get-WmiObject  -Class win32_processor -ErrorAction Stop | Measure-Object -Property LoadPercentage -Average | Select-Object Average).Average

    $ComputerMemory = Get-WmiObject  -Class win32_operatingsystem -ErrorAction Stop
    $UsedMemory = $ComputerMemory.TotalVisibleMemorySize - $ComputerMemory.FreePhysicalMemory
    $Memory = (($UsedMemory/ $ComputerMemory.TotalVisibleMemorySize)*100)
    $RoundMemory = [math]::Round($Memory, 2)
	
	#$disk = Get-PSDrive C | Select-Object Used,Free 
	
	$TotalDisk = Get-WMIObject Win32_LogicalDisk -Filter "DeviceID='C:'"  | ForEach-Object {[math]::truncate($_.Size / 1GB)}
	$FreeSpace = Get-WMIObject Win32_LogicalDisk -Filter "DeviceID='C:'"  | ForEach-Object {[math]::truncate($_.freespace / 1GB)}

    $Date = Get-Date -DisplayHint Date -Format MM/dd/yyyy

    $Time = Get-Date -DisplayHint Time -Format HH:mm:ss

    Write-Host "Date: " $Date " Time: " $Time " CPU: " $ComputerCPU " Memory: " $RoundMemory " Free Space: " $Freespace " Total Size : " $TotalDisk
    
    sleep 2
}

Bu PowerShell scripti, belirli bir zaman aralığında bilgisayarın sistem kaynaklarını (CPU, bellek ve disk durumu) sürekli olarak izlemek için kullanılır. Aşağıda scriptin detaylı açıklaması ve neden kullanılabileceği hakkında bilgiler verilmiştir:

Script Açıklaması

Sonsuz Döngü (while($true)): Bu, scriptin sonsuz bir döngü içinde çalışmasını sağlar. Döngü içinde belirtilen kod, durdurulana kadar sürekli olarak tekrar eder.

CPU Yükü ($ComputerCPU): Get-WmiObject -Class win32_processor komutu, bilgisayarın işlemcisi hakkında bilgi toplar. Bu komutun sonucu, işlemcinin yüzde olarak ne kadar kullanıldığını gösteren LoadPercentage özelliği ile Measure-Object ve Select-Object kullanılarak ortalama CPU yükü hesaplanır.

Bellek Kullanımı ($RoundMemory): Get-WmiObject -Class win32_operatingsystem komutu, bilgisayarın işletim sistemi hakkında bilgi sağlar. Bu bilgilerden, toplam bellek (TotalVisibleMemorySize) ve kullanılmayan bellek (FreePhysicalMemory) alınır. UsedMemory değişkeni, kullanılan fiziksel belleği temsil eder. Belleğin kullanım yüzdesi, UsedMemory'nin toplam bellek miktarına oranı alınarak hesaplanır. Bu değer iki ondalık basamağa yuvarlanır.

Disk Kullanımı (C:\ Sürücüsü): Get-WMIObject Win32_LogicalDisk -Filter "DeviceID='C:'" komutu, C: sürücüsünün toplam kapasitesini (Size) ve kullanılmayan kapasitesini (freespace) getirir. Her iki değer de gigabayt cinsine çevrilir ve sayısal olarak alınır.

Tarih ve Saat: Get-Date komutu kullanılarak mevcut tarih ve saat formatlanarak alınır. Tarih ve saat, MM/dd/yyyy ve HH:mm:ss formatında gösterilir.

Bilgilerin Konsola Yazdırılması: Write-Host komutu, yukarıda toplanan tüm bilgileri bir satır olarak ekrana yazar. Bu satırda tarih, saat, CPU yükü, bellek kullanımı, C: sürücüsünün boş ve toplam kapasitesi gösterilir.

Bekleme Süresi (sleep 2): sleep 2, scriptin her döngü arasında 2 saniye beklemesini sağlar. Bu, kaynak izleme verilerini sürekli güncellemeye izin verirken sistem üzerinde gereksiz yük oluşturmamak içindir.

Neden Kullanılır?

Sistem Yönetimi: Sistem yöneticileri ve IT profesyonelleri, bu script ile bilgisayarın kaynak kullanımını anlık olarak izleyebilir. Bu, performans sorunlarının veya anormal kaynak tüketiminin tespiti için önemlidir.

Otomatik İzleme: Script, sürekli olarak çalışarak belirli bir zaman aralığında (2 saniyede bir) sistem kaynaklarını izler. Bu, uzun süreli sistem izlemeleri ve raporlamalar için kullanılabilir.

Sorun Tespiti ve Teşhis: Anormal CPU veya bellek kullanımı gibi sorunların teşhis edilmesine yardımcı olur.

Geliştirme ve Optimizasyon: Sistem optimizasyonu veya geliştirme çalışmalarında, kaynak kullanımını izleyerek yapılacak geliştirmelerin etkisini gözlemleme imkânı sağlar.

real-time-system-resource-monitor's People

Contributors

emreozanmemis avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.