Benutzer-Werkzeuge

Webseiten-Werkzeuge


prtg

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
prtg [2024/07/26 16:23]
admin [Powershell]
prtg [2024/07/27 22:46] (aktuell)
jango
Zeile 1: Zeile 1:
 =====PrtgAPI===== =====PrtgAPI=====
  
-Siehe [[https://github.com/lordmilko/PrtgAPI/wiki/|WIKI]]+Für [[coding:Powershell]] und [[coding:csharp|C#]] Siehe [[https://github.com/lordmilko/PrtgAPI/wiki/|WIKI]]
  
 <code powershell> <code powershell>
 Install-Package PrtgAPI -Source PSGallery Install-Package PrtgAPI -Source PSGallery
 Import-Module PrtgAPI Import-Module PrtgAPI
 +</code>
  
-Erstellen der Anmeldeinformationen+Verbindung mit Anmeldeinformationen aufbauen 
 +<code powershell> 
 +Verbindung mit Anmeldeinformationen
 $username = "username" $username = "username"
 $password = "password" | ConvertTo-SecureString -AsPlainText -Force $password = "password" | ConvertTo-SecureString -AsPlainText -Force
 $credential = New-Object System.Management.Automation.PSCredential($username, $password) $credential = New-Object System.Management.Automation.PSCredential($username, $password)
- 
-# Verbindung herstellen 
 Connect-PrtgServer -Server $server -Credential $credential -IgnoreSSL Connect-PrtgServer -Server $server -Credential $credential -IgnoreSSL
 +</code>
  
 +Verbindung mit Passhash aufbauen
 +<code powershell>
 +# Verbindung mit PassHash herstellen
 +# Statt Passwort den Passhash als Passwort angeben und Parameter -PassHash anhängen
 +$username = "username"
 +$password = "passhash" | ConvertTo-SecureString -AsPlainText -Force
 +$credential = New-Object System.Management.Automation.PSCredential($username, $password)
 +Connect-PrtgServer -Server $server -Credential $credential -PassHash -IgnoreSSL
 +</code>
 +
 +Verbindung trennen
 +<code powershell>
 +# Verbindung trennen
 +Disconnect-PrtgServer
 +</code>
 +
 +<code powershell>
 +Get-Probe
 +
 +Get-Device | where-object { $_.Name -like "vie-t-*" }
 +
 +Get-Sensor | where-object { $_.Name -like "Commvault Backup Status*" }
 +Get-Sensor -Id 22243 | Get-ObjectProperty -Raw
 +Get-Sensor -Id 22243 | Set-ObjectProperty -interval (60*60*6)
 +Get-SensorHistory -Sensor (Get-Sensor -Id 22243)
 +</code>
 +
 +Sensoren suchen
 +<code powershell>
 # Sensoren suchen # Sensoren suchen
-#Get-Sensor "Commvault Backup Status *" | select-object * +Get-Sensor "Commvault Backup Status *" | select-object *  
 +</code>
  
 +Deviced suchen
 +<code powershell>
 # Devices suchen # Devices suchen
-#Get-Device | select-object * | where-object { $_.Name -like "*sql04*" }+Get-Device | select-object * | where-object { $_.Name -like "*sql04*" } 
 +</code>
  
-Sensor erstellen +Custom Sensor erstellen 
-<#+<code powershell> 
 +Custom Sensor erstellen
 $raw = @{ $raw = @{
     name_ = "my test sensor"     name_ = "my test sensor"
Zeile 39: Zeile 75:
     sensortype = "exexml"     sensortype = "exexml"
 } }
 +
 $params = New-SensorParameters $raw $params = New-SensorParameters $raw
 +
 Get-Device "devicename" | Add-Sensor $params Get-Device "devicename" | Add-Sensor $params
-#>+</code>
  
-Verbindung trennen +Schedule zu Device hinzufügen 
-Disconnect-PrtgServer+<code powershell> 
 +Custom method 
 +function Set-PRTGSchedule { 
 +    [CmdletBinding(SupportsShouldProcess)] 
 +    param ( 
 +        [Parameter(Mandatory,ValueFromPipeline)][prtgapi.deviceorgrouporprobe]$Object, 
 +        [Parameter(Mandatory)][prtgapi.schedule]$Schedule 
 +    ) 
 + 
 +    begin { 
 +        if (-not (Get-PrtgClient)) {Connect-PrtgServer
 +    } 
 + 
 +    process { 
 +        if (-not $Object.id) { 
 +            write-error "Could not find valid ID on schedule object $schedule" 
 +            continue 
 +        } 
 + 
 +        [string]$scheduleValue = ($Schedule.id,$schedule.name -join '|') + '|' 
 +        if ($PSCmdlet.ShouldProcess($Object.name,"Set Schedule to $($Schedule.name)")) { 
 +            Set-ObjectProperty -Force -Object $Object -RawParameters @{ 
 +                scheduledependency = 0 
 +                schedule_ = $scheduleValue 
 +            } 
 +        } 
 +    } 
 +
 + 
 +$schedule = Get-PRTGSchedule "Sonntags*" | select -first 1 
 +Get-Device "vie-p-srv-fdb01*" | Set-PRTGSchedule -Schedule $schedule
 </code> </code>
  
 +Schedule zu Sensor hinzufügen
 +<code powershell>
 +Get-Sensor -Id 22243 | Set-ObjectProperty -RawParameters @{
 +    "scheduledependency" = 0
 +    "schedule_" = Get-PrtgSchedule "Sonntag*" | select -first 1
 +} -Force
 +</code>
 +
 +Schedule zu Probe hinzufügen
 +<code powershell>
 +Get-Probe -Id 17834 | Set-ObjectProperty -RawParameters @{
 +    "scheduledependency" = 0
 +    "schedule_" = Get-PrtgSchedule "Sonntag*"
 +} -Force
 +</code>
 =====Custom Sensor===== =====Custom Sensor=====
  
Zeile 52: Zeile 135:
  
 XML und JSON Beispiel mit Powershell XML und JSON Beispiel mit Powershell
-<code>+<code powershell>
 $ProcessCount = (Get-Process).Count $ProcessCount = (Get-Process).Count
 $UserCount = (query user | Measure-Object).Count - 1 $UserCount = (query user | Measure-Object).Count - 1
prtg.1722003784.txt.gz · Zuletzt geändert: 2024/07/26 16:23 von admin