ich würde gerne ein Plugin für die Anbindung an einen Bestway Lazy-Spa Whirlpool bauen.
Hab die API schon gefunden und die notwendigen Requests im Postman zusammengestellt, und habe mich jetzt mal an ein PERL-Script getraut, damit ich die SDK nutzen kann (komme normalerweise aus der Java (Backend) und JavaScript Welt).
Webservice Aufrufe und Json-Config-File lesen und schreiben funktioniert so weit, mein momentanes Problem habe ich mit dem Logging und den Variablen für die Pfade. Ganze Script ist im Anhang.
Wenn ich es so Aufrufe funktioniert das Script:
#!/usr/bin/perl require HTTP::Request; use LWP::UserAgent; use Time::HiRes; use LoxBerry::JSON; use LoxBerry::IO; use LoxBerry::Log; use LoxBerry::System; LOGSTART "Bestway Lazy-Spa plugin started"; LOGINF "$lbplogdir + $lbpconfigdir"; my $cfgfile = "$lbpconfigdir/config.json"; my $log = LoxBerry::Log->new ( name => 'Bestway Lazy-Spa', filename => "$lbplogdir/lazyspa.log", append => 1, stdout => 1 ); #hier mein eigentliches Script
================================================== ==============================
<LOGSTART> 14.12.2021 23:36:07 TASK STARTED
<LOGSTART> Bestway Lazy-Spa plugin started
23:36:07.597 <INFO> LoxBerry Version 2.2.1.2 ( is_raspberry.cfg )
23:36:07.597 <INFO> Bestway Lazy-Spa Version 0.0.1
23:36:07.597 <INFO> Loglevel: 7
23:36:07.597 <INFO> /opt/loxberry/log/plugins/lazy_spa + /opt/loxberry/config/plugins/lazy_spa
23:36:07.602 <INFO> Got mail from config.json
23:36:07.602 <INFO> have everything, fine
Dann landet aber nichts in meiner Log-Datei
Ruf ich mein Skript so auf, bleibt es "hängen" und zwar scheinbar nach bei dem Log->new.
#!/usr/bin/perl require HTTP::Request; use LWP::UserAgent; use Time::HiRes; use LoxBerry::JSON; use LoxBerry::IO; use LoxBerry::Log; use LoxBerry::System; my $cfgfile = "$lbpconfigdir/config.json"; my $log = LoxBerry::Log->new ( name => 'Bestway Lazy-Spa', filename => "$lbplogdir/lazyspa.log", append => 1, stdout => 1 ); LOGSTART "Bestway Lazy-Spa plugin started"; LOGINF "$lbplogdir + $lbpconfigdir"; #hier mein eigentliches Script
Output beim letzten Aufruf:
================================================== ==============================
<LOGSTART> 14.12.2021 23:37:25 TASK STARTED
<LOGSTART> Bestway Lazy-Spa plugin started
<INFO> LoxBerry Version 2.2.1.2 ( is_raspberry.cfg )
<INFO> Bestway Lazy-Spa Version 0.0.1
<INFO> Loglevel: -1
Ich führ das Skript momentan direkt auf dem Loxberry aus (über ssh verbunden).
Hätte gerne von anfang an ein funktionierenden Log

Grüße
Tim
Kommentar