Nein, die gewöhnliche Möglichkeit zum Debuggen ist über das Logging. Die Logbefehle lauten
logDebug(),
logInfo(),
logWarn() und
logError(), wobei all diese Befehle exakt zwei Strings als Parameter erwarten, der erste String ist der Name des Loggers, der zweite String ist die eigentliche Logmeldung.
Dabei wird der Logger Name automatisch um
org.openhab.core.automation.module.script ergänzt. Der Logger Name wird im Log in eckigen Klammern ausgegeben (auf die letzten 38 Zeichen gekürzt). Davor steht der log Level, der sich aus dem Befehl ergibt, also DEBUG, INFO, WARN oder ERROR. Dahinter steht die eigentliche Log Meldung (der zweite String).
Der zweite String wird automatisch substituiert, geschweifte Klammern werden jeweils durch den nächsten Parameter ersetzt. Also z.B. so:
Code: Alles auswählen
logWarn("test","Wert 1: {} Wert 2: {} Wert 3: {}",wert1,wert2,wert3)
Ergibt dann z.B. für wert1=0, wert2=3,7 und wert3="ein Text" diese Ausgabe:
Code: Alles auswählen
21:48:46.660 [WARN ] [ab.core.automation.module.script.test] - Wert 1: 0 Wert 2: 3.7 Wert 3: ein Text
Die Meldungen landen in der Datei
/var/log/openhab/openhab.log (eine Standard Installation unter GNU/Linux vorausgesetzt)
openHAB5.1.3 stable in einem Debian-Container (trixie, OpenJDK 21 headless runtime - LXC, 4 Kerne, 3 GByte RAM)
Hostsystem Proxmox VE 9.1.9 - AMD Ryzen 5 3600 6 Kerne, 12 Threads - 64 GByte RAM - ZFS Pools: Raid Z1, 3 x 20 TB HDD -> 40 TByte und Raid Z0-Mirrored 4 x 1 TByte NVMe -> 2 TByte