Kleines API Problem - Typ von "ports" "port" [GELÖST]
Kleines API Problem - Typ von "ports" "port"
Ja
Server-Betriebssystem + Version
Debian 12.10
Eingesetzte Server-Virtualisierung-Technologie
KVM
KeyHelp-Version + Build-Nummer
"panel_version": "25.0",
"panel_build": "3398",
"api_version": "2.10",
Problembeschreibung / Fehlermeldungen
Bei "ports" handelt es sich um eine Auslistung der "Überwachte Dienste".
Im Auslieferungszustand ist die Unterangabe "port" ein string
{
"service": "POP3",
"port": "995",
"protocol": "tcp",
"status": "online"
},
Wenn ich einen weiteren Dienste unter "Überwachte Dienste" eintrage, wird "port" zum integer.
{
"service": "POP3",
"port": 995,
"protocol": "tcp",
"status": "online"
},
Wenn ich den weiteren Dienst wieder entferne, bleibt "port" integer.
Erwartetes Ergebnis
Der Typ von "port" sollte sich bei normaler Nutzung von Keyhelp nicht ändern.
Tatsächliches Ergebnis
Schritte zur Reproduktion
Zusätzliche Informationen
(z.B. kürzlich durchgeführte Änderungen am Server, Auszüge aus Protokolldateien (/var/log/*, /var/log/keyhelp/php-error.log, etc.))
Re: Kleines API Problem - Typ von "ports" "port"
Code: Select all
❌ Failed to fetch server data: typeMismatch(Swift.String, Swift.DecodingError.Context(codingPath: [CodingKeys(stringValue: "ports", intValue: nil), _CodingKey(stringValue: "Index 0", intValue: 0), CodingKeys(stringValue: "port", intValue: nil)], debugDescription: "Expected to decode String but found number instead.", underlyingError: nil))
Code: Select all
{
"service": "test",
"port": 123,
"protocol": "tcp",
"status": "offline"
},

--
A Windows user reinstalls software every few weeks.
A Linux user reinstalls software every few weeks.
The difference is with Linux the version numbers change.
Re: Kleines API Problem - Typ von "ports" "port" [GELÖST]
Danke für die Info.
Int wäre richtig, das ist in der Dokumentation + bei einem "jungfräulichen" System leider falsch.
=> Ist beides korrigiert für KH 25.1.
Alexander Mahr
**************************************************************
Keyweb AG - Die Hosting Marke
Neuwerkstr. 45/46, 99084 Erfurt / Germany
http://www.keyweb.de - http://www.keyhelp.de
**************************************************************
Re: Kleines API Problem - Typ von "ports" "port"
Hmm, ich habe das Db backup zurück gespielt.
Code: Select all
ServicePort
- service: "POP3"
- port: "995"
- proto: "tcp"
- status: "online"
Ist das hardcodiert oder irgendwo in der DB?
--
A Windows user reinstalls software every few weeks.
A Linux user reinstalls software every few weeks.
The difference is with Linux the version numbers change.
Re: Kleines API Problem - Typ von "ports" "port"
Abspeichern von "Konfiguration -> Service/Port-Monitoring" bewirkt, das der port als int gespeichert wird.
Aktuell würde er bei der API den Datentyp nehmen, der im json steht.
Ab 25.1 ist es immer int.
Alexander Mahr
**************************************************************
Keyweb AG - Die Hosting Marke
Neuwerkstr. 45/46, 99084 Erfurt / Germany
http://www.keyweb.de - http://www.keyhelp.de
**************************************************************
Re: Kleines API Problem - Typ von "ports" "port"
Danke, schaue ich mir mal an, aus Neugierde.Alexander wrote: ↑Wed 2. Apr 2025, 15:16 Das dazugehörige Json liegt in der KeyHelp settings Tabelle (category/name: services - status_config).
Abspeichern von "Konfiguration -> Service/Port-Monitoring" bewirkt, das der port als int gespeichert wird.
Aktuell würde er bei der API den Datentyp nehmen, der im json steht.
Und darum bin ich da jetzt pragmatisch rangegangen, habe den Wechsel auf int nochmal forciert und den Code angepasst

--
A Windows user reinstalls software every few weeks.
A Linux user reinstalls software every few weeks.
The difference is with Linux the version numbers change.