Das Thema Monitoring via REST API mit PRTG gewinnt meines Erachtens nach immer mehr an Bedeutung. Natürlich auch dadurch, dass mittlerweile jeder Hersteller in seinen Produkten eine solche Schnittstelle mitliefert. Ich selbst habe dieses Feature in PRTG leider lange Zeit unterschätzt. Daher dieser kleine Artikel, um aufzuzeigen wie man diese Sensoren nutzen kann.
In meinem Beispiel möchte ich den System Status von einem HPE StoreOnce System via REST API überwachen. Einmal der einzelnen Service Sets und natürlich auch des Globalen Systems.

PRTG Sensor – StoreOnce mit zwei SID’s und einem Store
Damit man diesen Sensor sinnvoll einrichten kann, sollte man wissen was man überwachen will und wie die möglichen Stati sind.
Ich habe mich bereits in einem früheren Artikel mit der REST API der StoreOnce Systeme beschäftigt, wusste also daher was ich benötige.
Dennoch habe ich den REST Call zum Test initial mit Postman ausgeführt:
Global:
https://<D2D-IP>/storeonceservices/cluster/
<healthLevel>1</healthLevel>
Service Set’s:
https://<D2D-IP>/storeonceservices/cluster/servicesets/<ID>
<overallHealthLevel>1</overallHealthLevel>
Und auch noch einmal die möglichen Stati zur Sicherheit in der Dokumentation geprüft :
Bei einer Warnung sieht das dann in PRTG so aus:
Das original Event war folgendes:
Monitoring via REST API
Einrichtung des Sensors

PRTG – Neuer Sensor an Gerät

PRTG – Eigenschaften des Sensors
in den Eigenschaften sind ein paar kritische Punkte:
- XML Node
- Dahinter versteckt sich der Wert
- HTTP Header
- Umstellung auf XML (Default ist HTML Table)
- Autherntifizierung (Basic mit Base64 Hash)
- Kein SSLv3
Schwellwerte festlegen

PRTG – Alarm Limits hinzufügen

PRTG – Alarm Limit Einstellungen
Weitere Möglichkeiten
Store Size On Disk

PRTG – Sensor D2D Store Größe auf Disk
Hallo Markus,
ich habe heute versucht nach deiner Anleitung mit dem Powershell Module auf unsere StoreOnce zuzugreifen. Leider bekomme ich keine Verbindung hin. Folgendes wird mir als Fehler ausgegeben.
Connect-SOAppliance -Server x.x.x.x -Username xxxxxxxx -Password xxxxxxxx
True
Die zugrunde liegende Verbindung wurde geschlossen: Unerwarteter Fehler beim Senden..
Muss ich auf der StoreOnce noch was einschalten? Hab nix gefunden. Firmware ist 3.15.1-1636.1
Ich würde die StoreOnce gern per PRTG überwachen. Könntest du mich dabei unterstützen?
Kannst du mir helfen?
Marcel
Hallo Marcel,
erst einmal viele Dank für dein Interesse an meinen Beiträgen.
Bei deinen Fragen handelt es sich ja eigentlich gleich um zwei Themen bzw. Artikel:
1. StoreOnce PowerShell Module
Verwendest du da das aktuellste aus der PowerShell Gallery (https://www.powershellgallery.com/packages/PS-StoreOnce)?
Leider hat meine Test StoreOnce VSA noch einen älteren Stand und ich muss erst noch aktualisieren (bin aber dabei). Mit 3.13.x musste man da aber nichts aktivieren.
Die Verbindung zu GUI der StoreOnce mit Dem IE funktioniert?
hast du mal mit eine RestAPI Tool wie Postman eine Abfrage versucht (hier ein paar Beispiele: https://github.com/mycloudrevolution/StoreOnce-PSModule/blob/master/Postman/HPE-StoreOnce.postman_collection.json)
2. StoreOnce gern per PRTG überwachen?
Den Artikel zu dem Thema hast du dir ja dann sicher durchgelesen.
Wo genau liegen denn die Probleme?
Beste Grüße,
Markus
Ja ich habe die aktuellste Version 2.0.1
Die zugrunde liegende Verbindung wurde geschlossen: Unerwarteter Fehler beim Senden..
At C:Windowssystem32WindowsPowerShellv1.0ModulesPS-StoreOnce2.0.1FunctionsConnect-SOAppliance.psm1:125 char:9
+ throw $_.Exception.Message
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : OperationStopped: (Die zugrunde li…r beim Senden..:String) [], RuntimeException
+ FullyQualifiedErrorId : Die zugrunde liegende Verbindung wurde geschlossen: Unerwarteter Fehler beim Senden..
Das ist der Fehler der angezeigt wird.
Per Postman funktioniert die Abfrage. Im PRTG habe ich alle so eingetragen wie du, da bekomme ich den Fehler „Process is terminated due to StackOverflowException.“
Also alles sehr merkwürdig
Konnte heute nun mit der VSA Version 3.13.5-1633.6 Testen, ohne Fehler. Deine Firmware Version kann ich in der VSA leider nicht benutzen…
Irgendwie definitiv seltsam, hört sich auch beides sehr verwand an.
Testest du das PS Modul auch auf dem PRTG Probe oder auf einem anderen Server?
Würdest du bitte mal felgendes Testet:
PS C:> Invoke-WebRequest -Uri https://192.168.130.129/fusion
StatusCode : 200
StatusDescription : OK
Egal wo ich das teste es geht nicht. Es kommt der gleiche Fehler wenn ich das teste.
Sorry, bin ich etwas ratlos…
Was ist mit dem invoke-webrequest, konntest du das testen?
Moin Markus,
liegt definitiv an der Firmware 3.15.1. Habe letzte Woche auf die Firmware geupdated, seit dem gehen die PRTG Sensoren nicht mehr (gleicher Fehler). Werde evtl. diese oder dann nächste Woche mal dem Problem auf die Spur gehen und Feedback geben.
Schönen Gruß,
Timo
Cool, vielen dank Timo.
Bin sehr gespannt!
OK, ich denke das Problem hat mit dem eingestellten Support für TLS 1.0 zu tun:
Siehe:
https://h20566.www2.hpe.com/hpsc/doc/public/display?sp4ts.oid=5196525&docLocale=en_US&docId=emr_na-c05273928
Für den PRTG Sensor kann ich allerdings keine Einstellung bezüglich TLS Version in der Hilfe finden:
https://www.paessler.com/manuals/prtg/http_xmlrest_value_sensor
Für das PowerShell Modul habe ich eine Test-Brache bereitstellt:
https://github.com/mycloudrevolution/StoreOnce-PSModule/tree/TLS1.X
Diese Version soll fix TLS 1.2 verwenden.
Über weitere Tests mit der Firmware 3.15.x würde ich mich sehr freuen.
Beste Grüße,
Markus Kraus
Moin,
auch mit dem neuen Module kann ich keine Verbindung herstellen. Es kommt der gleiche Fehler. Beim Test mit invoke-webrequest kommt nur: Invoke-WebRequest : Die zugrunde liegende Verbindung wurde geschlossen: Unerwarteter Fehler beim Senden.. Also alles beim alten. 🙁 Ich danke dir trotzdem für dein Feedback. Hoffentlich findest du was. 🙂
Hallo,
noch mal zur Sicherheit bitte wenn der Fehler gekommen ist (im Modul oder bei dem WebRequest) folgenden Befehl zur Verifizierung der TLS Version ausführen:
[System.Net.ServicePointManager]::SecurityProtocol
Hier der Request:
True
Die zugrunde liegende Verbindung wurde geschlossen: Unerwarteter Fehler beim Senden..
At C:Windowssystem32WindowsPowerShellv1.0ModulesPS-StoreOnce2.0.1FunctionsConnect-SOAppliance.psm1:125 char:9
+ throw $_.Exception.Message
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : OperationStopped: (Die zugrunde li…r beim Senden..:String) [], RuntimeException
+ FullyQualifiedErrorId : Die zugrunde liegende Verbindung wurde geschlossen: Unerwarteter Fehler beim Senden..
PS Z:> [System.Net.ServicePointManager]::SecurityProtocol
Ssl3, Tls
Hallo,
Du verwendest hier leider nicht das Test Modul.
Du könntest aber in der Session folgendes absetzen:
[System.Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
Und dann noch mal testen.
Vorsicht: die Einstellungen gelten nur für die eine PowerShell Session.
Beste Grüße
Markus
Moin,
so funktioniert es.
PS Z:> Import-Module PS-StoreOnce
PS Z:> [System.Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
PS Z:> Connect-SOAppliance -Server x.x.x.x -Username prtg -Password xxxxxxxx
True
Server Username EncodedPassword
—— ——– —————
x.x.x.x prtg xxxxxxxxxxx
PS Z:>
Top, genau das habe ich auch in das Test Modul eingebaut.
Ich werde das dann diese Woche
Aktualisieren.
Vielen Dank für deinen Test.
Ich habe zu danken. Bei PRTG muss ich dann mal sehen. Vielleicht mach ich das dann auch über ein Powershell Script.
Danke
Marcel
Klar, habe dazu ja auch einige Beispiele.
Veeam Cloud Tenant Statistiken Beitrag ist denke ich sehr ähnlich.