Ich nutze folgendes in einigen SVG-Plots, um die Tageslichtspanne darzustellen:
set y3range [0:1]
#logProxy Func:logProxy_Func2Plot($from,$to,'{logProxy_isDay($sec)}',{week=>60*30,day=>60*10,qday=>60})
plot "<IN>" using 1:2 axes x1y3 title notitle ls l4fill lw 1 with steps,\
(wie hier (https://forum.fhem.de/index.php/topic,23912.msg349474.html#msg349474) und hier (http://www.fhemwiki.de/wiki/LogProxy#Tagesstunden_in_einem_Plot_farblich_hinterlegen) empfohlen)
Wenn nun einer der Plots aufgerufen wird, erscheinen pro Plot folgende 3 Warnungen im Log:
2016.05.30 17:17:50.373 1: PERL WARNING: Argument "" isn't numeric in subtraction (-) at ./FHEM/98_SVG.pm line 1874.
2016.05.30 17:17:50.373 1: PERL WARNING: Argument "" isn't numeric in subtraction (-) at ./FHEM/98_SVG.pm line 1873.
2016.05.30 17:17:50.371 1: PERL WARNING: Argument "" isn't numeric in numeric gt (>) at ./FHEM/98_SVG.pm line 1502.
Ausgabe von version:
fhem.pl 11545 2016-05-29 09:13:16Z rudolfkoenig
98_logProxy.pm 11533 2016-05-27 17:58:39Z justme1968
98_SVG.pm 11540 2016-05-29 08:18:23Z rudolfkoenig
Ich nutze DbLog mit plotfork.
Deine Funktion oder Deine Berechnung liefert keinen Wert zurück. Das Value ist leer.
Danke. Aber das ist mir schon bewusst. Die Funktion ist aber (wie erwähnt) vom Autor offiziell so vorgeschlagen. Ich muss gestehen, ich habe die eigentliche Frage vergessen (die sich aber eigentlich ergibt). Die Frage wäre: Warum gibt diese Funktion leere oder keine Werte zurück (zumindest teilweise, denn die Darstellung ist korrekt)? Das war auch nicht immer so. Die Warnung habe ich erst seit kurzem. Mein Tipp war, dass es etwas mit plotfork zu tun hat, denn das nutze ich erst seit kurzem.
stacktrace liefert (zumindest mir) keine weiteren Hinweise, verbose 5 in logproxy liefert gar nichts:
2016.05.30 17:47:58.882 3: main::CallFn called by fhem.pl (659)
2016.05.30 17:47:58.882 3: main::FW_Read called by fhem.pl (3172)
2016.05.30 17:47:58.882 3: main::FW_answerCall called by ./FHEM/01_FHEMWEB.pm (454)
2016.05.30 17:47:58.882 3: main::SVG_showLog called by ./FHEM/01_FHEMWEB.pm (749)
2016.05.30 17:47:58.882 3: main::SVG_doShowLog called by ./FHEM/98_SVG.pm (1009)
2016.05.30 17:47:58.882 3: main::SVG_render called by ./FHEM/98_SVG.pm (1134)
2016.05.30 17:47:58.881 3: main::__ANON__ called by ./FHEM/98_SVG.pm (1874)
2016.05.30 17:47:58.881 3: stacktrace:
(reverseLog)
Hallo,
ich bekomme die gleichen Meldungen im Log und denke auch, dass es von der LogProxy Funtion kommt.
#logProxy Func:logProxy_Func2Plot($from,$to,'{logProxy_isDay($sec)}',{week=>60*30,day=>60*10,qday=>60})
Immer diese 3 Fehlermedlungen:
2017.02.08 17:55:56 1: PERL WARNING: Argument "" isn't numeric in numeric gt (>) at ./FHEM/98_SVG.pm line 1502.
2017.02.08 17:55:56 1: PERL WARNING: Argument "" isn't numeric in subtraction (-) at ./FHEM/98_SVG.pm line 1873.
2017.02.08 17:55:56 1: PERL WARNING: Argument "" isn't numeric in subtraction (-) at ./FHEM/98_SVG.pm line 1874.
Gibt es da schon eine Lösung?
Grüße
druschba
schau mal ob die meldungen weg sind wenn du in 98_logProxy.pm die zeile 373 return $cur > $sr && $cur < $ss;
durch return ($cur > $sr && $cur < $ss)?1:0;
ersetzt.
gruss
andre
Hallo Andre,
Deine Korrektur funktioniert - keine Fehlermeldung mehr und die Plots werden auch korrekt dargestellt.
Danke!
dru
habs eingecheckt.
gruss
andre