[Gelöst] Wieder mal Perl Warnung und mit stacktrace keine Lösung gefunden

Begonnen von DieterN, 28 März 2024, 13:57:29

Vorheriges Thema - Nächstes Thema

DieterN

Hallo liebe Gemeinde
Ich bekommen unregelmässig folgende Log Einträge:
 12:43:00 1: PERL WARNING: Argument "o" isn't numeric in subtraction (-) at ./FHEM/98_SVG.pm line 1377.
2024.03.28 12:43:00 1: stacktrace:
2024.03.28 12:43:00 1:     main::__ANON__                      called by ./FHEM/98_SVG.pm (1377)
2024.03.28 12:43:00 1:     main::SVG_getSteps                  called by ./FHEM/98_SVG.pm (1838)
2024.03.28 12:43:00 1:     main::SVG_render                    called by ./FHEM/98_SVG.pm (1236)
2024.03.28 12:43:00 1:     main::SVG_doShowLog                 called by ./FHEM/98_SVG.pm (1127)
2024.03.28 12:43:00 1:     main::SVG_showLog                   called by ./FHEM/01_FHEMWEB.pm (1011)
2024.03.28 12:43:00 1:     main::FW_answerCall                 called by ./FHEM/01_FHEMWEB.pm (609)
2024.03.28 12:43:00 1:     main::FW_Read                       called by fhem.pl (3985)
2024.03.28 12:43:00 1:     main::CallFn                        called by fhem.pl (786)

leider finde ich nicht heraus woher sie kommen.
Hoffe jemand kann mir helfen.
Ich habe alle meine Plots durchsucht und sie Funktionieren soweit.

BG Dieter
Fhem Server: BananaPI M2 auf SSD;  11xJeelink(Temp), 6xFHT8Vs(Stellmotoren), CUL_HM (Fensterkontakte); MQTT2 (8fach Relais) (Fussbodenheizung) und 4x Temp

JoWiemann

Hallo Dieter,

bitte einmal sehr aufmerksam die Definitionen Deiner SVG Devices ansehen. Irgendwo hast Du wohl ein o (Oh) anstatt einer 0 hinterlegt.

Grüße Jörg
Jörg Wiemann

Slave: RPi B+ mit 512 MB, COC (868 MHz), CUL V3 (433.92MHz SlowRF); FHEMduino, Aktuelles FHEM

Master: CubieTruck; Debian; Aktuelles FHEM

DieterN

#2
Zitat von: JoWiemann am 28 März 2024, 14:13:58Hallo Dieter,

bitte einmal sehr aufmerksam die Definitionen Deiner SVG Devices ansehen. Irgendwo hast Du wohl ein o (Oh) anstatt einer 0 hinterlegt.

Grüße Jörg
Hallo Jörg
das mache ich schon seit Tagen.
Ich dachte mit stacktrace erfahre ich woher das kommt.
Zudem funktionieren alle meine Plots.
Alles schon 100mal gecheckt, aber nur halt bei den SVG Plots direkt. Nicht in den gplot definitionen
Fhem Server: BananaPI M2 auf SSD;  11xJeelink(Temp), 6xFHT8Vs(Stellmotoren), CUL_HM (Fensterkontakte); MQTT2 (8fach Relais) (Fussbodenheizung) und 4x Temp

JoWiemann

Zitat von: DieterN am 28 März 2024, 14:38:34Hallo Jörg
das mache ich schon seit Tagen.
Ich dachte mit stacktrace erfahre ich woher das kommt.
Zudem funktionieren alle meine Plots.
Alles schon 100mal gecheckt, aber nur halt bei den SVG Plots direkt. Nicht in den gplot definitionen

Du kannst einfach mal in der fhem.cfg bzw. in den *.gplot Dateien nach einem o suchen. Oder Du setzt mit:

attr TYPE=SVG verbose 5

alle SVG Devices auf verbose 5. Das dann umfangreicherer Log könnte den Kandidaten finden.

Grüße Jörg
Jörg Wiemann

Slave: RPi B+ mit 512 MB, COC (868 MHz), CUL V3 (433.92MHz SlowRF); FHEMduino, Aktuelles FHEM

Master: CubieTruck; Debian; Aktuelles FHEM

DieterN

#4
Zitat von: JoWiemann am 28 März 2024, 14:52:17attr TYPE=SVG verbose 5

Das werde ich jetzt versuchen.

Das o suchen habe ich schon in den gplot Dateien und fhem config gemacht.

Danke für den Tipp
Fhem Server: BananaPI M2 auf SSD;  11xJeelink(Temp), 6xFHT8Vs(Stellmotoren), CUL_HM (Fensterkontakte); MQTT2 (8fach Relais) (Fussbodenheizung) und 4x Temp

DieterN

Also mit verbose 5 kommt keine Info.
Wenn ich die plots einzeln aufrufe, kommt auch kein Eintrag in den log.
Wenn ich aber über den Room "Plots" alle meine Plots aufrufen, kommt der Fehlereintrag.
2024.03.28 15:04:45 1: PERL WARNING: Argument "o" isn't numeric in subtraction (-) at ./FHEM/98_SVG.pm line 1377.
2024.03.28 15:08:42 1: PERL WARNING: Argument "o" isn't numeric in subtraction (-) at ./FHEM/98_SVG.pm line 1377.
2024.03.28 15:10:36 1: PERL WARNING: Argument "o" isn't numeric in subtraction (-) at ./FHEM/98_SVG.pm line 1377.
 Mit verbose 5 gesetzt!!!
Fhem Server: BananaPI M2 auf SSD;  11xJeelink(Temp), 6xFHT8Vs(Stellmotoren), CUL_HM (Fensterkontakte); MQTT2 (8fach Relais) (Fussbodenheizung) und 4x Temp

erwin

Das "o" könnte in der Range def im plot file sein, oder auch in den Daten, wenn kein range definiert ist! (autorange calc).
Der Fehler kommt jedenfalls bei dem Versuch den y-range (max-min) auszurechnen... 
l.g. erwin
FHEM aktuell auf RaspberryPI Mdl 1-4
Maintainer: 00_KNXIO.pm 10_KNX.pm
User: CUNO2 (868 SLOWRF) - HMS100xx, FS20, FHT, 1-Wire  - 2401(iButton), 18x20, 2406, 2413 (AVR), 2450,..,MQTT2, KNX, SONOFF, mySENSORS,....
Hardware:  Busware ROT, Weinzierl IP731, 1-Wire GW,...

DieterN

Hi Danke
aber hast du das auch gelesen?
Wenn ich die plots einzeln aufrufe, kommt auch kein Eintrag in den log.
Wenn ich aber über den Room "Plots" alle meine Plots aufrufen, kommt der Fehlereintrag.

Wie kann das zusammen hängen?
Fhem Server: BananaPI M2 auf SSD;  11xJeelink(Temp), 6xFHT8Vs(Stellmotoren), CUL_HM (Fensterkontakte); MQTT2 (8fach Relais) (Fussbodenheizung) und 4x Temp

rudolfkoenig

ZitatWenn ich die plots einzeln aufrufe, kommt auch kein Eintrag in den log.
Das waere ein Wunder.

Die Fehlermeldung kommt aus der Routine, die Anhand minimum und maximum die vertikalen Markierungen in der Anzeige berechnet.
Ich wuerde:
- die Logs einzeln im Detailfenster anschauen
- pruefen, ob in "Range as [min:max]" (wenn gesetzt) nicht doch ein o statt 0 verwendet wurde.
- wenn das nicht hilft, dann auf die Warnung im FHEM-Log achten, "Show preprocessed input" in der SVG Detailfenster aufrufen, die Stelle mit dem o in den Daten finden und FileLog / DbLog / etc per Konfiguration ueberzeugen, die Daten ohne "o" zu liefern.

Ich tippe auf explizit gesetzten Range.

erwin

... gelesen ja - verstanden: nein,auch weil du nicht geschrieben hast wie du "einzeln" zu den plots kommst.
Wenn dem so ist (was ich für unwahrscheinlich halte), würde ich jeden plot in einen extra raum verschieben und checken, wo es passiert.
l.g. erwin
FHEM aktuell auf RaspberryPI Mdl 1-4
Maintainer: 00_KNXIO.pm 10_KNX.pm
User: CUNO2 (868 SLOWRF) - HMS100xx, FS20, FHT, 1-Wire  - 2401(iButton), 18x20, 2406, 2413 (AVR), 2450,..,MQTT2, KNX, SONOFF, mySENSORS,....
Hardware:  Busware ROT, Weinzierl IP731, 1-Wire GW,...

DieterN

Zitat von: erwin am 28 März 2024, 16:28:59.. gelesen ja - verstanden: nein,auch weil du nicht geschrieben hast wie du "einzeln" zu den plots kommst.
Wenn dem so ist (was ich für unwahrscheinlich halte), würde ich jeden plot in einen extra raum verschieben und checken, wo es passiert.

Das tutz mir leid. Also
ich habe zu Raum(wohnz, Küche usw..) natürlich einen eigenen Room.
Wenn ich auf die SVG Plots zugreife, kommt kein Fehler.
Wenn ich über den Room PLOTS (inden alle meinen Plots sind) gehe kommt die Fehlermeldung. Sonst nicht. Deswegen habe ich nirgends wo was gefunden in den Konfig Dateien. Das währe ja einfach gewesen. ;D
Fhem Server: BananaPI M2 auf SSD;  11xJeelink(Temp), 6xFHT8Vs(Stellmotoren), CUL_HM (Fensterkontakte); MQTT2 (8fach Relais) (Fussbodenheizung) und 4x Temp

DieterN

Zitat von: rudolfkoenig am 28 März 2024, 16:25:42
ZitatWenn ich die plots einzeln aufrufe, kommt auch kein Eintrag in den log.
Das waere ein Wunder.

Die Fehlermeldung kommt aus der Routine, die Anhand minimum und maximum die vertikalen Markierungen in der Anzeige berechnet.
Ich wuerde:
- die Logs einzeln im Detailfenster anschauen
- pruefen, ob in "Range as [min:max]" (wenn gesetzt) nicht doch ein o statt 0 verwendet wurde.
- wenn das nicht hilft, dann auf die Warnung im FHEM-Log achten, "Show preprocessed input" in der SVG Detailfenster aufrufen, die Stelle mit dem o in den Daten finden und FileLog / DbLog / etc per Konfiguration ueberzeugen, die Daten ohne "o" zu liefern.

Ich tippe auf explizit gesetzten Range.
Hallo Rudolf
Zitat von: rudolfkoenig am 28 März 2024, 16:25:42Das waere ein Wunder.
Das verstehe ich nicht. Wenn eine min: max Definition falsch ist, ist sie doch immer falsch und nicht unterschiedlich, wenn man sich alle Plots anschaut oder einzeln.
Fhem Server: BananaPI M2 auf SSD;  11xJeelink(Temp), 6xFHT8Vs(Stellmotoren), CUL_HM (Fensterkontakte); MQTT2 (8fach Relais) (Fussbodenheizung) und 4x Temp

DieterN

Zitat von: DieterN am 28 März 2024, 16:48:01- pruefen, ob in "Range as [min:max]" (wenn gesetzt) nicht doch ein o statt 0 verwendet wurde.
Habe ich nirgends man. gesetzt. Verwende immer die Automatik.
Zitat von: DieterN am 28 März 2024, 16:48:01- die Logs einzeln im Detailfenster anschauen
Habe ich natürlich gemacht.
Zitat von: DieterN am 28 März 2024, 16:48:01wenn das nicht hilft, dann auf die Warnung im FHEM-Log achten, "Show preprocessed input" in der SVG Detailfenster aufrufen, die Stelle mit dem o in den Daten finden und FileLog / DbLog / etc per Konfiguration ueberzeugen, die Daten ohne "o" zu liefern.
da bin ich jetzt ratlos. wie ich da vorgehen muss
Fhem Server: BananaPI M2 auf SSD;  11xJeelink(Temp), 6xFHT8Vs(Stellmotoren), CUL_HM (Fensterkontakte); MQTT2 (8fach Relais) (Fussbodenheizung) und 4x Temp

rudolfkoenig

ZitatWenn eine min: max Definition falsch ist, ist sie doch immer falsch und nicht unterschiedlich, wenn man sich alle Plots anschaut oder einzeln.
Genau.
Gilt auch dann, wenn min/max aus den Daten kommen.
Aus diesem Grund waere deine Beobachtung ein Wunder.

Zitatda bin ich jetzt ratlos. wie ich da vorgehen muss
Einzeln _alle_ SVGs in der Detailansicht anschauen, und dabei paraellel das FHEM-Log beobachten.
Die Liste der SVGs kriegt man auch mit "list TYPE=SVG"

DieterN

Zitat von: rudolfkoenig am 28 März 2024, 17:07:40Einzeln _alle_ SVGs in der Detailansicht anschauen, und dabei paraellel das FHEM-Log beobachten
Das habe ich natürlich schon längst getestet.
Da kommt kein Fehler im Log.
Nur wenn ich über den Room(PLots, wo alle Plots aus allen Zimmern zusammengefasst sind) aufrufen, kommt der Fehler LOg.
Das ist ja das komische
Fhem Server: BananaPI M2 auf SSD;  11xJeelink(Temp), 6xFHT8Vs(Stellmotoren), CUL_HM (Fensterkontakte); MQTT2 (8fach Relais) (Fussbodenheizung) und 4x Temp