Sind das Fehlermeldungen? Was bederuten die?

Begonnen von Invers, 01 April 2014, 09:54:10

Vorheriges Thema - Nächstes Thema

Invers

Ich bekomme über Putty laufend meldungen wie diese hier angezeigt. Was sit passiert? Was kann ich tun?

^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE voiceRecognitionLastResult.*Test$/ at ./FHEM/91_notify.pm line 66.
^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE voiceRecognitionLastResult.*eckenlampe.*aus.*$/ at ./FHEM/91_notify.pm line 66.
^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE voiceRecognitionLastResult.*eckenlampe.*aus.*$/ at ./FHEM/91_notify.pm line 66.
^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE voiceRecognitionLastResult.*echts.*aus.*$/ at ./FHEM/91_notify.pm line 66.
^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE voiceRecognitionLastResult.*echts.*aus.*$/ at ./FHEM/91_notify.pm line 66.
^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE voiceRecognitionLastResult.*ehlampe.*aus.*$/ at ./FHEM/91_notify.pm line 66.
^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE voiceRecognitionLastResult.*ehlampe.*aus.*$/ at ./FHEM/91_notify.pm line 66.
^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE voiceRecognitionLastResult.*TV.*icht.*aus.*$/ at ./FHEM/91_notify.pm line 66.
^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE voiceRecognitionLastResult.*TV.*icht.*aus.*$/ at ./FHEM/91_notify.pm line 66.
^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE voiceRecognitionLastResult.*TV.*icht.*(an|ein).*$/ at ./FHEM/91_notify.pm line 66.
^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE voiceRecognitionLastResult.*TV.*icht.*(an|ein).*$/ at ./FHEM/91_notify.pm line 66.
^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE voiceRecognitionLastResult.*Test$/ at ./FHEM/91_notify.pm line 66.
^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE voiceRecognitionLastResult.*Test$/ at ./FHEM/91_notify.pm line 66.
Pi3B+ mit SSD/ Bullseye | FB7590 AX | 12 x Dect200 | CUL433+868 | SDuino | HM-LAN | 3 x Heizung FHT + FKontakte | KeyMatic + 4 FB | HM Wandtaster 2-fach m. LED | 6 x Türkont. TFK-TI | HM-Bew.-Melder innen | 3 x Smoked. HM-SEC-SD-2

rudolfkoenig

 
ZitatWas sit passiert?
Das notify hat eine kaputte Regexp, das * in der Regexp verhaelt sich anders als im Glob, was man vom Filesystem kennt.
Hab keine Ahnung wie das passieren konnte, da das notify die Regexp bei der Definition prueft.

ZitatWas kann ich tun?
Notify Definition posten, Regexp fixen.

der-Lolo

Auch ich hatte heute morgen wieder eine menge Meldungen

Zitat^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE .*$/ at fhem.pl line 3593.
^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE .*$/ at fhem.pl line 3593.
^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE .*$/ at fhem.pl line 3593.
^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE .*$/ at fhem.pl line 3593.
^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE .*$/ at fhem.pl line 3593.
^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE .*$/ at fhem.pl line 3593.
2014.04.01 00:01:41 1: Perfmon: possible freeze starting at 00:01:40, delay is 1.66

Ich beschrieb das ganze schoneinmal...
Es scheint immer am Monatsanfang aufzutreten..
http://forum.fhem.de/index.php/topic,20857.msg143887.html#msg143887

betateilchen

Mich würde folgendes interessieren:


  • welche Version fhem.pl setzt Ihr ein (Bei mir gibts in Zeile 3593 weit und breit nix, was damit zusammenhängen könnte)
  • arbeitet Ihr mit Monatslogs?
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Invers

Meine Meldungen sind aus Putty, aber ja, ich arbeite mit Monatslog.

Hier ein define, welches angemeckert wird.
define Sprache_Stehlampe_aus notify *voiceRecognitionLastResult.*ehlampe.*aus.* set Stehlampe off;; set @ ttsSay Stehlampe ausgeschaltet
attr Sprache_Stehlampe_aus room Sprachbefehle
Pi3B+ mit SSD/ Bullseye | FB7590 AX | 12 x Dect200 | CUL433+868 | SDuino | HM-LAN | 3 x Heizung FHT + FKontakte | KeyMatic + 4 FB | HM Wandtaster 2-fach m. LED | 6 x Türkont. TFK-TI | HM-Bew.-Melder innen | 3 x Smoked. HM-SEC-SD-2

der-Lolo

In meinem Fall sind es Monatslogs - ich bin zwar nicht täglich beim update dabei, es vergeht aber auch selten eine Woche ohne update - heute morgen habe ich schon ein update gemacht...
Während des Fehlers war aktiv
Zitat2014.04.01 07:03:24 0: Server started with 153 defined entities (version $Id: fhem.pl 5238 2014-03-16 16:23:31Z rudolfkoenig $, os linux, user root, pid 1806)

und seit dem update heute morgen ist aktiv
Zitat2014.04.01 09:15:19 0: Server started with 153 defined entities (version $Id: fhem.pl 5340 2014-03-27 16:19:53Z rudolfkoenig $, os linux, user root, pid 6904)

Invers

So, ich wollte gerade mein Log ansehen. Da kam aber nichts. Nach langer Wartezeit rührte sich doch was. Mein Logfile kann ich wegwerfen. Das ist richtig vollgemüllt. Jetzt bereits 56 MB.
Pi3B+ mit SSD/ Bullseye | FB7590 AX | 12 x Dect200 | CUL433+868 | SDuino | HM-LAN | 3 x Heizung FHT + FKontakte | KeyMatic + 4 FB | HM Wandtaster 2-fach m. LED | 6 x Türkont. TFK-TI | HM-Bew.-Melder innen | 3 x Smoked. HM-SEC-SD-2

betateilchen

#7
falsch:

*voiceRecognitionLastResult.*ehlampe.*aus.*

richtig:

.*voiceRecognitionLastResult.*ehlampe.*aus.*

Wie Rudi ja schon sagte:

Zitat von: rudolfkoenig am 01 April 2014, 10:07:59
Das notify hat eine kaputte Regexp, das * in der Regexp verhaelt sich anders

-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

betateilchen

Zitat von: der-Lolo am 01 April 2014, 10:48:07
und seit dem update heute morgen ist aktiv

beim mir gab es heute gar keine anstehenden Updates - was mich sehr wundert. Aber das ist ein anderes Thema.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

rudolfkoenig

ZitatHier ein define, welches angemeckert wird.

Die Regexp ist kaputt (faengt mit * an), und duerfte eigentlich vom notify Modul nicht akzeptiert werden.
Aber wegen einer Perl-Haarspalterei wird dieses Problem nicht als Fehler sondern als Warnung ausgegeben, was wiederum vom notify Modul nicht abgefangen wird.
- Loesung (vom Benutzer durchzufuehren): Regexp fixen.
- Mein TODO: Warning irgendwie abfragen, weiss aber nicht wie, das im Web vorgeschlagene
local $SIG{__WARN__} = sub { die $_[0] };
hat komische Nebeneffekte (wie FHEM Absturz :) )

betateilchen

Zitat von: rudolfkoenig am 01 April 2014, 10:07:59
Hab keine Ahnung wie das passieren konnte, da das notify die Regexp bei der Definition prueft.

Nein, tut es nicht. Eine Defintion wie z.B.

define n_test notify *test {}

wird anstandslos angelegt.


Internals:
   CFGFN     
   DEF        *test {}
   NAME       n_test
   NR         305
   NTFY_ORDER 50-notifytest
   REGEXP     *test
   STATE      2014-04-01 11:39:12
   TYPE       notify
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

betateilchen

ok - typischer Fall von überschnitten  8)
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

betateilchen

Zitat von: rudolfkoenig am 01 April 2014, 11:37:10
- Mein TODO: Warning irgendwie abfragen, weiss aber nicht wie, das im Web vorgeschlagene

wäre nicht eine Prüfung, ob die Regexp mit einem * anfängt, schon ein großer Schritt vorwärts?
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

betateilchen

Zitat von: der-Lolo am 01 April 2014, 10:48:07
In meinem Fall sind es Monatslogs

Vermutlich hängt es damit zusammen, dass beim ersten Logeintrag des neuen Monats neue Logfiles angelegt werden und dann die falsch angelegten notify ins Spiel kommen.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Invers

Vielen Dank, alle geprüft und korrigiert. Da hat sich wahrscheinlich bei copy/paste ein Fehler eingeschlichen, denn die waren nicht alle falsch, sondern nur einige. Gut, dass ich hier den richtigen zur Vorführung erwischt hatte. :-)
Pi3B+ mit SSD/ Bullseye | FB7590 AX | 12 x Dect200 | CUL433+868 | SDuino | HM-LAN | 3 x Heizung FHT + FKontakte | KeyMatic + 4 FB | HM Wandtaster 2-fach m. LED | 6 x Türkont. TFK-TI | HM-Bew.-Melder innen | 3 x Smoked. HM-SEC-SD-2