FHEM Forum

FHEM => Automatisierung => Thema gestartet von: Bartimaus am 10 Oktober 2018, 10:29:30

Titel: [gelöst]Fehler im Log, finde die Quelle nicht
Beitrag von: Bartimaus am 10 Oktober 2018, 10:29:30
Moin,

schon seit längerem habe ich periodisch, mehrmals täglich, einen Fehler im FHEM-Logfile, dessen Quelle/Ursache ich einfach nicht finde.

2018.10.10 07:30:23.425 1: PERL WARNING: Argument "100 %" isn't numeric in numeric lt (<) at (eval 52249) line 1.

D.h. irgendwo habe ich eine Bedingung in einem AT/NOTIF/DOIF whatever, wo ich einen %Wert abfrage, wo aber keiner ist.

Ich hab sogar schon die fhem.cfg in eine Textdatei kopiert und mit Notepad++ alles durchsucht. Ohne Erfolg.

Wer hat noch Tips ?
Titel: Antw:Fehler im Log, finde die Quelle nicht
Beitrag von: rudolfkoenig am 10 Oktober 2018, 10:42:01
attr global stacktrace
Titel: Antw:Fehler im Log, finde die Quelle nicht
Beitrag von: Bartimaus am 10 Oktober 2018, 10:44:39
Merci, habe ich mal eingeschaltet. Habe gerade nochmal alles durchforstet, und bin auf eine Readingsgroup gestossen, die div. Batterie-Stati abfragt... mal sehen ob es das war.
Titel: [gelöst]Antw:Fehler im Log, finde die Quelle nicht
Beitrag von: Bartimaus am 10 Oktober 2018, 10:56:58
Zitat von: Bartimaus am 10 Oktober 2018, 10:44:39
......bin auf eine Readingsgroup gestossen, die div. Batterie-Stati abfragt... mal sehen ob es das war.

Bingo.... hat stacktrace bestätigt.

Danke
Titel: Antw:[gelöst]Antw:Fehler im Log, finde die Quelle nicht
Beitrag von: Markus M. am 10 Oktober 2018, 18:29:52
Zitat von: Bartimaus am 10 Oktober 2018, 10:56:58
Bingo.... hat stacktrace bestätigt.

Und nun? Wer hat das da hingeschrieben?
Wenn du es nicht selbst warst sondern ein Modul % mit ins Reading schreibt, solltest du nicht drum rum frickeln, sondern dich beim Autor des verursachenden Moduls beschweren.
Titel: Antw:[gelöst]Fehler im Log, finde die Quelle nicht
Beitrag von: Bartimaus am 10 Oktober 2018, 18:56:39
Naja,

hier das Ergebnis vom Stacktrace:


2018.10.10 10:42:29.801 1: PERL WARNING: Argument "100 %" isn't numeric in numeric lt (<) at (eval 65601) line 1.
2018.10.10 10:42:29.801 1: stacktrace:
2018.10.10 10:42:29.802 1:     main::__ANON__                      called by (eval 65601) (1)
2018.10.10 10:42:29.802 1:     (eval)                              called by ./FHEM/33_readingsGroup.pm (357)
2018.10.10 10:42:29.802 1:     main::lookup2                       called by ./FHEM/33_readingsGroup.pm (540)
2018.10.10 10:42:29.802 1:     main::readingsGroup_value2html      called by ./FHEM/33_readingsGroup.pm (1109)
2018.10.10 10:42:29.803 1:     main::readingsGroup_2html           called by ./FHEM/33_readingsGroup.pm (1209)
2018.10.10 10:42:29.803 1:     main::readingsGroup_detailFn        called by ./FHEM/01_FHEMWEB.pm (1928)
2018.10.10 10:42:29.803 1:     main::FW_showRoom                   called by ./FHEM/01_FHEMWEB.pm (1087)
2018.10.10 10:42:29.804 1:     main::FW_answerCall                 called by ./FHEM/01_FHEMWEB.pm (533)
2018.10.10 10:42:29.804 1:     main::FW_Read                       called by fhem.pl (3597)
2018.10.10 10:42:29.804 1:     main::CallFn                        called by fhem.pl (726)


Hier der Verursacher:


Internals:
   CHANGED   
   DEF        d6543407 13
   IODev      ZWDongle_1
   LASTInputDev ZWDongle_1
   MSGCNT     1479
   NAME       Multisensor
   NR         1365
   STATE      0 UV,428 Lux,20.3 C,55 %
   TYPE       ZWave
   ZWDongle_1_MSGCNT 1479
   ZWDongle_1_RAWMSG 0004000d0531051b0100
   ZWDongle_1_TIME 2018-10-10 18:49:43
   ZWaveSubDevice no
   homeId     meineHomeID
   isWakeUp   
   nodeIdHex  0d
   READINGS:
     2018-06-03 11:34:00   CO2-level       27.9 ppm
     2018-06-15 13:26:36   SEND_DATA       failed:00
     2018-09-26 06:34:42   UNPARSED        SENSOR_MULTILEVEL 063104020a0000
     2018-10-10 14:51:04   alarm           HomeSecurity: Tampering - product covering removed, arg 0000
     2018-06-14 13:21:07   basicSet        0
     2018-10-10 18:49:42   battery         100 %
     2018-10-10 18:49:42   batteryPercent  100
     2018-10-10 18:49:42   batteryState    ok


und das hier hat es ausgelöst:

Internals:
   DEF        .*:[Bb]attery
   NAME       ZE.Batterie
   NR         808
   NTFY_ORDER 50-ZE.Batterie
   STATE      Initialized
   TYPE       readingsGroup


Ist also nicht die Schuld eines Modulautors, sondern meine. Ich müsste irgendwie per Regex der ReadingsGroup speziell für den Multisensor beibringen "batteryPercent" statt "battery" abzufragen... ::), bei den anderen BatterieDevices lautet das Reading "battery".

Stehe da aber auf dem Schlauch, weil ich mit Regex bzw. auch mit der Modulbeschreibung(readingsgroup) in der Commandref nicht so ganz klarkomme...