fabi-d / arubaoscx-prtg

Powershell script sensor for Paessler PRTG to monitor the health of ArubaOS-CX switches (6000 series, 8000 series)
5 stars 0 forks source link

Aruba R9W94A 8100-24XF4C switch LL.10.13.1040 - Fehler 400 #2

Open AdmiralRaccoon opened 3 weeks ago

AdmiralRaccoon commented 3 weeks ago

Moin, ich habe Probleme unsere neuen Core Switche der 8100er Serie abzufragen, ich bekomme vom Skript die Meldung zurück "Der Remoteserver hat einen Fehler zur�ckgegeben: (400) Ung�ltige Anforderung."

Config ist quasi identisch wie bei den 6200er Switchen, die funktionieren prima. Unser Consultant vermutet, dass die 8100er evtl. zu neu sind und sich etwas an der API geändert hat?

Viele Grüsse Philipp

fabi-d commented 3 weeks ago

Hi Philipp,

schalte mal in den Sensoreinstellungen unter "Umgang mit Ergebnis" auf "Ergebnis speichern" und schau im PRTG-Verzeichnis\Logs\sensors nach, was nach der Abfrage rauskommt. Da müsste es eine "Result of Sensor xxxx.txt" geben. Auf welcher Software-Version läuft der 8100er?

Ich teste bei mir lokal aktuell eine Version, in der man:

Viele Grüße Fabian

AdmiralRaccoon commented 3 weeks ago

Moin, in dem Log steht tatsächlich auch nicht viel drin:

Data['linuxloginpassword'].asString := '';
Data['notonpod'].asString := '0';
Data['fastcount'].asString := '0';
Data['lastmsg'].asString := 'Der Remoteserver hat einen Fehler zur?ckgegeben: (400) Ung?ltige Anforderung.';
Data['resultfile'].asString := 'Result of Sensor 7720.txt';
Data['windowsloginusername'].asString := 'admin';
Data['hostv6'].asString := '';
Data['exefile'].asString := 'AOS-CX-Sensor.ps1';
Data['lastuptime'].asString := '0';
Data['writeresult'].asString := '1';
Data['blockedsens'].asString := '';
Data['windowslogindomain'].asString := '';
Data['tlsexplicit_imap'].asString := '';
Data['channelnames'].asString := '';
Data['tlsexplicit_default'].asString := '';
Data['canlinux'].asString := '0';
Data['isexesensor'].asString := '1';
Data['windowsloginpassword'].asString := '***';
Data['environment'].asString := 'prtg_sensorid=7720 prtg_deviceid=7718  prtg_groupid=2132   prtg_probeid=1  prtg_host=172.16.124.2  prtg_device=sw-datacenter-rz1-02    prtg_probe=Verl prtg_name=Switch Health prtg_windowsdomain= prtg_windowsuser=admin  prtg_windowspassword=***    prtg_linuxuser= prtg_linuxpassword= prtg_snmpcommunity=hansolo  prtg_url=https://129.103.2.61/  prtg_primarychannel=1   prtg_version=24.3.98.1210';
Data['mutexname'].asString := '';
Data['channelinfos'].asString := '{}';
Data['scriptplaceholder3'].asString := '';
Data['uptimecount'].asString := '0';
Data['scriptplaceholder5'].asString := '';
Data['usednstime'].asString := '0';
Data['newpowershell'].asString := '0';
Data['reboot'].asString := '45524.3355708796';
Data['vmwareparams'].asString := '1';
Data['linuxlogindomain'].asString := '';
Data['scriptplaceholder1'].asString := '';
Data['exeparamshash'].asString := 'da39a3ee5e6b4b0d3255bfef95601890afd80709';
Data['tlsexplicit_port'].asString := '';
Data['monitorchange'].asString := '';
Data['inerror'].asString := '1';
Data['scriptplaceholder4'].asString := '';
Data['sensorid'].asString := '7720';
Data['ipversion'].asString := '0';
Data['tlsexplicit_smtp'].asString := '';
Data['scriptplaceholder2'].asString := '';
Data['host'].asString := '172.16.124.2';
Data['usewindowsauthentication'].asString := '0';
Data['simulate'].asString := '0';
Data['tlsexplicit_ftp'].asString := '';
Data['timeout'].asString := '60';
Data['exeparams'].asString := '';
Data['momopersistent'].asString := '';
Data['tlsexplicit_pop3'].asString := '';

Softwareversion ist die LL.10.13.1040

fabi-d commented 3 weeks ago

Das ist der Inhalt der "Result of Sensor 7720.Data.txt", richtig? Was steht in der "Result of Sensor 7720.txt"?

AdmiralRaccoon commented 3 weeks ago

Oh sorry, in der anderen steht:

<prtg><error>1</error><text>Der Remoteserver hat einen Fehler zurckgegeben: (400) Ungltige Anforderung.</text></prtg>

fabi-d commented 3 weeks ago

Schalte mal auf dem Switch das Debugging der REST-API an:

configure
debug rest all
# warten bis Zugriff durch PRTG versucht wurde
show debug buffer module rest

Ich habe leider gerade keinen 8100er, aber auf dem 8325 und 8360 funktioniert der Sensor. Vielleicht verrät uns die Ausgabe des Debug-Buffers mehr :)

AdmiralRaccoon commented 2 weeks ago

Moin, hier mal ein kleiner Auszug. Er kann die PoE_Power nicht finden, was auch in dem Fall nicht klappen kann, da das reine Glasfaserports an diesen 8100ern sind.

2024-08-23:08:14:38.588829|hpe-restd|LOG_ERR|Error Serving HTTP Request [/rest/v10.04/system/subsystems?depth=2&attributes=type,name,poe_power]: &{attribute: poe_power, not found for resource: Subsystem 400 <nil>}
2024-08-23:08:19:38.496745|hpe-restd|LOG_ERR|error parsing the uri /system/subsystems?depth=2&attributes=type,name,poe_power: attribute: poe_power, not found for resource: Subsystem
2024-08-23:08:19:38.496944|hpe-restd|LOG_ERR|Error Serving HTTP Request [/rest/v10.04/system/subsystems?depth=2&attributes=type,name,poe_power]: &{attribute: poe_power, not found for resource: Subsystem 400 <nil>}
2024-08-23:08:24:38.502761|hpe-restd|LOG_ERR|error parsing the uri /system/subsystems?depth=2&attributes=type,name,poe_power: attribute: poe_power, not found for resource: Subsystem
2024-08-23:08:24:38.503052|hpe-restd|LOG_ERR|Error Serving HTTP Request [/rest/v10.04/system/subsystems?depth=2&attributes=type,name,poe_power]: &{attribute: poe_power, not found for resource: Subsystem 400 <nil>}
2024-08-23:08:29:38.493249|hpe-restd|LOG_ERR|error parsing the uri /system/subsystems?depth=2&attributes=type,name,poe_power: attribute: poe_power, not found for resource: Subsystem
2024-08-23:08:29:38.493805|hpe-restd|LOG_ERR|Error Serving HTTP Request [/rest/v10.04/system/subsystems?depth=2&attributes=type,name,poe_power]: &{attribute: poe_power, not found for resource: Subsystem 400 <nil>}
2024-08-23:08:34:38.494371|hpe-restd|LOG_ERR|error parsing the uri /system/subsystems?depth=2&attributes=type,name,poe_power: attribute: poe_power, not found for resource: Subsystem
2024-08-23:08:34:38.494917|hpe-restd|LOG_ERR|Error Serving HTTP Request [/rest/v10.04/system/subsystems?depth=2&attributes=type,name,poe_power]: &{attribute: poe_power, not found for resource: Subsystem 400 <nil>}
2024-08-23:08:39:38.486214|hpe-restd|LOG_ERR|error parsing the uri /system/subsystems?depth=2&attributes=type,name,poe_power: attribute: poe_power, not found for resource: Subsystem
2024-08-23:08:39:38.490881|hpe-restd|LOG_ERR|Error Serving HTTP Request [/rest/v10.04/system/subsystems?depth=2&attributes=type,name,poe_power]: &{attribute: poe_power, not found for resource: Subsystem 400 <nil>}
2024-08-23:08:44:38.488696|hpe-restd|LOG_ERR|error parsing the uri /system/subsystems?depth=2&attributes=type,name,poe_power: attribute: poe_power, not found for resource: Subsystem
2024-08-23:08:44:38.488894|hpe-restd|LOG_ERR|Error Serving HTTP Request [/rest/v10.04/system/subsystems?depth=2&attributes=type,name,poe_power]: &{attribute: poe_power, not found for resource: Subsystem 400 <nil>}
fabi-d commented 2 weeks ago

Ah, sehr gut. Das bekomme ich angepasst. Aber interessant, dass das beim 8325/8360 funktioniert. Ich würde das so umbauen, dass mit einer Abfrage gegen die /system/subsystems geprüft wird, welche Subsystems vom Gerät unterstützt werden und dann nur diese abfragen.

fabi-d commented 2 weeks ago

Habe das gerade überprüft. Dass der 8100 das Subsystem-Attribut poe_power nicht unterstützt, ist eine Besonderheit des 8100. Andere Modelle (getestet auf dem 6200F) unterstützen es, wenn Attribute angegeben werden, die gar nicht existieren.

Ich baue die Sonderbehandlung für den 8100 ein, damit du das testen kannst. Ich melde mich hier nochmal, wenn ich fertig bin.

AdmiralRaccoon commented 2 weeks ago

Super danke, ich freue mich aufs testen.

Schönes WE