Highlyeducatedmen 0 Geschrieben 27. September 2017 Melden Teilen Geschrieben 27. September 2017 Hallo Ich habe ein kleines Problem bei bei einem Script an dem ich arbeite. Es soll die Systemauslastung Überwachen und bei extrem werte(z.B.: Auslastung der Festplatte bei 95%) eine Meldung an mich schicken. Ich bin jetzt schon so weit das ich die Daten der CPU, Festplatte und der Anwendungen auslese. Meine Frage wäre jetzt also wie man es schaft die ausgelesenen Daten der Hardware zu kontrollieren und gegebenen falls eine Meldung zu senden. Danke schon im voraus Lg Zitieren Link zu diesem Kommentar
Dukel 454 Geschrieben 27. September 2017 Melden Teilen Geschrieben 27. September 2017 .oO(Really?) Nutze ein vorhandenes Monitoringsystem, bevor du alles nachprogrammierst. Für Hardware braucht man entsprechende Schnittstellen. Hier komme es darauf an was das für ein System ist und was installiert ist. 1 Zitieren Link zu diesem Kommentar
mwiederkehr 373 Geschrieben 27. September 2017 Melden Teilen Geschrieben 27. September 2017 Den Zustand der Hardware auszulesen ist herstellerabhängig. Bei HP ist es so, dass man den Zustand per SNMP abfragen kann, wenn man die Management Agents installiert hat. Bei anderen Herstellern wird das ähnlich sein. Je nachdem gibt es auch Tools des Herstellers, die eine Mail schicken können, wenn eine Disk etc. defekt ist (bei HP ist das der "Event Notifier). Aber so als Tipp: Hast Du Dir PRTG angeschaut? Damit ist die Überwachung einfacher als mit selbst geschriebenen Scripts. 1 Zitieren Link zu diesem Kommentar
Nobbyaushb 1.471 Geschrieben 27. September 2017 Melden Teilen Geschrieben 27. September 2017 PRTG wäre auch meine Empfehlung gewesen, ist bis 100 Sensoren sogar kostenlos. Je nach Hersteller kann man damit eine Menge überwachen, bei einem HP-Server z.B. sehe ich mit EINEM Sensor alle für die Maschine relevanten Bauteile. ;) 1 Zitieren Link zu diesem Kommentar
Highlyeducatedmen 0 Geschrieben 27. September 2017 Autor Melden Teilen Geschrieben 27. September 2017 Hmmm... Danke einmal :) Ich werde mich wohl ein bisschen umsehen müssen wie ich das anders lösen kann.(PRTG) Und es geht dabei eigentlich nur um einzelnen Lenovo Laptops die Kontrolliert werden sollten.(falls das etwas ändern sollte) Danke und super Forum :thumb1: Zitieren Link zu diesem Kommentar
MurdocX 949 Geschrieben 27. September 2017 Melden Teilen Geschrieben 27. September 2017 (bearbeitet) Inspiriert durch den Fragesteller habe ich mich kurz mit dem Thema beschäftigt. Die Powershell bietet mittlerweile eine Cmdlet welches die Daten der PerfCounter abfragen kann. Der Hammer was die PS mittlerweile alles an Board hat. Get-Counter https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.diagnostics/get-counter?view=powershell-5.1 "The Get-Counter cmdlet gets live, real-time performance counter data directly from the performance monitoring instrumentation in the Windows family of operating systems. You can use it to get performance data from the local or remote computers at the sample interval that you specify. Without parameters, this cmdlet gets counter data for a set of system counters. You can use the parameters of this cmdlet to specify one or more computers, to list the performance counter sets and the counters that they contain, and to set the sample size and interval..." EDIT Voraussetzung ist die Powershell v5.1 ( WMF 5.1 ) // In Windows 10 schon integriert Für jeden der es ausprobieren möchte muss gesagt sein, dass die PS die Eingabe der PerCounter in "deutsch" erwartet. Hier ist die Übersetzung vermutlich mit der Betriebssystem-Sprache verknüpft. bearbeitet 27. September 2017 von MurdocX 1 Zitieren Link zu diesem Kommentar
Highlyeducatedmen 0 Geschrieben 29. September 2017 Autor Melden Teilen Geschrieben 29. September 2017 Hi nochmal ich hab es nicht ganz aufgegeben mit PowerShell eine Pc Überwachung zu machen vor allem weil ich nur Programme verwenden darf die schon bei Windows vorinstalliert sind. ich habe jetzt den Code zum auslesen der Systemwerte möchte diese aber in eine csv Datei schreiben dies ist jedoch schwieriger als gedacht... Daher meine Frage gibt es einen Befehl der nur die ausgegebenen daten in eine csv datei speichert: Name CPU CPUPercent Description ---- --- ---------- ----------- chrome 36,984375 3,22 Google Chrome chrome 0,203125 2,76 Google Chrome chrome 60,078125 1,36 Google Chrome mobsync 0,078125 1,32 Microsoft Sync Center RAM: 3,85 GB Free Physical Memory: 34,94 % Hier noch mein skript: $CPUPercent = @{ Name = 'CPUPercent' Expression = { $TotalSec = (New-TimeSpan -Start $_.StartTime).TotalSeconds [Math]::Round( ($_.CPU * 100 / $TotalSec), 2) } } Get-Process | Select-Object -Property Name, CPU, $CPUPercent, Description | Sort-Object -Property CPUPercent -Descending | Select-Object -First 4 function Get-MemoryUsage ($ComputerName=$ENV:ComputerName) { if (Test-Connection -ComputerName $ComputerName -Count 1 -Quiet) { $ComputerSystem = Get-WmiObject -ComputerName $ComputerName -Class Win32_operatingsystem -Property CSName, TotalVisibleMemorySize, FreePhysicalMemory $FreePhysicalMemory = ($ComputerSystem.FreePhysicalMemory) / (1mb) $TotalVisibleMemorySize = ($ComputerSystem.TotalVisibleMemorySize) / (1mb) $TotalVisibleMemorySizeR = “{0:N2}” -f $TotalVisibleMemorySize $TotalFreeMemPerc = ($FreePhysicalMemory/$TotalVisibleMemorySize)*100 $TotalFreeMemPercR = “{0:N2}” -f $TotalFreeMemPerc # print the machine details: “RAM: $TotalVisibleMemorySizeR GB” “Free Physical Memory: $TotalFreeMemPercR %” } } Get-MemoryUsage Mfg Zitieren Link zu diesem Kommentar
tesso 375 Geschrieben 29. September 2017 Melden Teilen Geschrieben 29. September 2017 ExportTo-CSV hast du schon gefunden? Zitieren Link zu diesem Kommentar
massaraksch 41 Geschrieben 29. September 2017 Melden Teilen Geschrieben 29. September 2017 (bearbeitet) Nur so nebenbei... Get-Counter gibts schon seit mindestens PS 2.0, also eigentlich seit der Powershell-Steinzeit ;) PS: Für Exchange z.b. einfach mal ein Get-Counter -ListSet *exchange* machen... Oder für alles: Get-Counter -ListSet * | Out-File CounterList.txt bearbeitet 29. September 2017 von massaraksch Zitieren Link zu diesem Kommentar
MurdocX 949 Geschrieben 29. September 2017 Melden Teilen Geschrieben 29. September 2017 Nein, seit Powershell 3.0 ? Zitieren Link zu diesem Kommentar
massaraksch 41 Geschrieben 30. September 2017 Melden Teilen Geschrieben 30. September 2017 Tut mir leid, aber muß darauf beharren: Mindestens seit Powershell 2.0 :cool: Begründung: 1. Ich hab's live vor mir. 2. https://technet.microsoft.com/en-us/library/ff714569.aspx Zitieren Link zu diesem Kommentar
MurdocX 949 Geschrieben 30. September 2017 Melden Teilen Geschrieben 30. September 2017 Arg, ich hab´s auch extra nachgeschlagen und hab ich einem MS-Blog-Artikel PS 3.0 gelesen. Wenn ich Ihn wieder finde, dann liefere ich nach ;) Man muss auch nicht immer recht behalten. Komme auch gut klar, wenn es PS 2 ist :) Danke für den Link Zitieren Link zu diesem Kommentar
Highlyeducatedmen 0 Geschrieben 3. Oktober 2017 Autor Melden Teilen Geschrieben 3. Oktober 2017 Hi Ich hätte eine frage zum out-file befehl. Ich möchte damit die Ausgabe eines Scripts in eine txt oder csv Datei speichern das Problem dabei ist es speichert zwar etwas ab aber das ist leider nicht das was das Script ausgibt sondern viel mehr . $a = Get-Process out-file -filepath "C:\Users\Documents\Test2\Neu.txt" -InputObject $A -Encoding ASCII -Width 100 Habe schon probiert ob die Width etwas ändert bekomme jedoch trotzdem das gleiche ergebnis. Was das Script ausgibt: Name CPU CPUPercent Description ---- --- ---------- ----------- chrome 175,5625 3,64 Google Chrome chrome 161,59375 2,2 Google Chrome OUTLOOK 119,296875 1,62 Microsoft Outlook chrome 64,953125 1,01 Google Chrome RAM: 3,85 GB Free Physical Memory: 33,20 % Was in der Datei gespeichert wird: Handles NPM(K) PM(K) WS(K) CPU(s) Id SI ProcessName ------- ------ ----- ----- ------ -- -- ----------- 291 17 7024 22028 0,09 11452 6 ApplicationFrameHost 121 8 1344 1360 3212 0 armsvc 472 28 7364 19724 2,42 9152 6 AuthManSvr 1286 46 25420 32808 5956 0 CcmExec 1726 60 71628 105648 192,55 1088 6 chrome 307 45 94708 28928 6,27 5356 6 chrome 231 44 21096 25620 9,28 6160 6 chrome 136 12 3012 8724 0,08 6876 6 chrome 245 23 36180 43212 0,25 6884 6 chrome 337 38 88184 77692 14,72 8600 6 chrome 212 12 3084 8568 0,08 10608 6 chrome 332 26 42396 48604 66,55 10872 6 chrome 438 44 108080 68916 186,28 10928 6 chrome 381 40 80588 96428 66,56 11424 6 chrome 438 35 164172 136928 51,06 11944 6 chrome 255 27 38212 41548 10,58 12116 6 chrome 208 15 3052 2820 4124 0 CmRcService 119 11 2804 1028 2500 0 CNTAoSMgr 377 26 10756 18052 0,23 1804 6 concentr 82 7 1144 596 4372 0 conhost 93 7 1320 1084 4452 0 conhost 615 17 1776 2652 720 0 csrss 581 20 2296 5132 6780 6 csrss 128 8 1832 8344 0,08 8300 6 dllhost 534 25 56668 50396 11192 6 dwm 1978 92 48244 95984 42,47 8516 6 explorer 115 7 1408 1220 1744 0 ibmpmsvc 66 5 896 1600 3280 0 ibtsiva 0 0 0 4 0 0 Idle 141 9 1652 2948 2236 0 igfxCUIService 186 15 4840 12000 0,14 10152 6 igfxEM 247 19 4720 3444 3224 0 IpOverUsbSvc 654 35 90256 39324 4440 0 java 249 32 10916 2508 3204 0 jenkins 207 14 3232 10848 0,13 6460 6 jusched 321 9 3072 3212 1760 0 LPlatSvc 118 10 2488 8292 0,06 9616 6 LPlatSvc 1727 32 10784 15420 948 0 lsass 0 0 796 223148 3592 0 Memory Compression 214 14 2560 3068 3252 0 micmute 377 31 38152 9032 3308 0 NTRTScan 124 12 2632 1600 0,13 7608 6 ONENOTEM 133 11 1612 1416 3508 0 opcualds 3232 72 93124 104928 152,11 3996 6 OUTLOOK 334 47 13368 9252 11,67 11540 6 PccNTMon 818 72 165840 186148 60,55 6440 6 powershell_ise 206 31 21056 2452 1148 0 PresentationFontCache 275 16 6816 2280 1,13 6604 6 RAVBg64 277 16 6772 2200 0,94 11004 6 RAVBg64 320 16 4780 2408 1,22 11232 6 RAVCpl64 582 40 11836 23996 19,56 11976 6 Receiver 155 13 3088 8300 0,53 11576 6 redirector 159 11 2884 1132 0,09 9584 6 RtsCM64 555 33 13752 34904 9,45 10164 6 RuntimeBroker 278 27 6304 14424 0,28 1344 6 sbus 160 13 2296 1680 3500 0 sbusagent 876 29 23920 29216 0,91 7296 6 SCNotification 95 7 1324 6132 10256 0 SearchFilterHost 1063 75 53452 33116 1172 0 SearchIndexer 307 11 2180 10712 12696 0 SearchProtocolHost 919 70 73708 64012 2,91 10528 6 SearchUI 340 28 16948 22532 0,31 3180 6 SelfServicePlugin 404 12 5448 7900 940 0 services 637 31 21660 37408 0,73 10464 6 ShellExperienceHost 182 12 3168 8204 11200 6 shtctky 398 16 5672 19832 0,95 172 6 sihost 51 2 368 404 516 0 smss 237 18 9400 13428 0,53 3632 6 SPEnroll 477 24 9340 7668 2744 0 spoolsv 110 9 2128 2312 3464 0 sqlwriter 170 14 3124 7804 6416 6 ssonsvr 788 25 9924 14788 536 0 svchost 891 21 8108 9648 544 0 svchost 49763 136 124060 74856 1112 0 svchost 1321 62 16852 23312 1124 0 svchost 905 43 15404 15376 1132 0 svchost 843 31 21892 18912 1236 0 svchost 908 47 14668 20200 1244 0 svchost 749 61 29508 28164 1640 0 svchost 262 11 2648 5776 2460 0 svchost 359 21 4296 6056 2536 0 svchost 476 23 8452 11176 2672 0 svchost 412 21 6372 11100 3264 0 svchost 221 19 6760 11980 3372 0 svchost 134 10 1856 3652 3496 0 svchost 217 17 2404 3640 3568 0 svchost 351 21 6860 21568 5,25 7812 6 svchost 179 12 2400 3700 8052 0 svchost 433 19 6360 12104 3408 0 SwiService 625 17 7780 20748 3,48 5504 6 SynTPEnh 243 8 1708 2816 3392 0 SynTPEnhService 67 7 1844 5332 0,00 1788 6 SynTPHelper 1604 0 144 2568 4 0 System 549 31 13536 40476 0,53 5788 6 SystemSettings 389 35 7000 16572 0,59 3488 6 taskhostw 496 31 48680 6560 5852 0 TmCCSF 692 50 25824 17104 3956 0 TmListen 242 14 3212 5008 3400 0 tphkload 213 13 3000 11736 0,44 2056 6 tposd 168 11 2776 1244 0,08 3144 6 TpShocks 594 48 24708 39748 1,86 6944 6 TTGuide 105 8 1732 2124 4952 0 unsecapp 338 28 5884 13796 0,27 11980 6 wfcrun32 101 8 1220 2256 800 0 wininit 205 10 2064 7480 4708 6 winlogon 330 18 6796 12716 376 0 WmiPrvSE 619 54 25164 26360 3988 0 WmiPrvSE 437 29 34172 10980 4000 0 WmiPrvSE 202 13 6556 9584 5432 0 WmiPrvSE 170 10 3240 3416 5604 0 WmiPrvSE 184 14 5608 12192 9664 0 WmiPrvSE 291 15 4816 13952 12384 0 WmiPrvSE 327 14 2508 2440 1388 0 WUDFHost 262 11 2116 1152 2120 0 WUDFHost 548 13 3096 9036 2920 0 WUDFHost Kann mir jemand helfen? Lg Zitieren Link zu diesem Kommentar
MurdocX 949 Geschrieben 3. Oktober 2017 Melden Teilen Geschrieben 3. Oktober 2017 Was macht denn Select-Object, highlyeducatedmen? Zitieren Link zu diesem Kommentar
Highlyeducatedmen 0 Geschrieben 3. Oktober 2017 Autor Melden Teilen Geschrieben 3. Oktober 2017 hmmmm... :rolleyes: muss ich mir ansehen :) Danke für den tipp. Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.