FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: Hackstall am 20 Februar 2023, 19:28:14

Titel: [Gelöst] Hilfe Logfile läuft über nach Update
Beitrag von: Hackstall am 20 Februar 2023, 19:28:14
Hallo ich habe ein Update gemacht und erhalte nun tausende von folgenden Fehlermeldungen:


2023.02.20 19:19:32 1: ERROR evaluating my $CN=   $evalSpecials->{'%CN'};my $DEVICE=   $evalSpecials->{'%DEVICE'};my $DEVICETYPE=\
   $evalSpecials->{'%DEVICETYPE'};my $EVENT=   $evalSpecials->{'%EVENT'};my $EVTPART0=   $evalSpecials->{'%EVTPART0'};my $IGNORE=\
   $evalSpecials->{'%IGNORE'};my $LASTTIMESTAMP=   $evalSpecials->{'%LASTTIMESTAMP'};my $LASTVALUE=   $evalSpecials->{'%LASTVALUE\
'};my $READING=   $evalSpecials->{'%READING'};my $TIMESTAMP=   $evalSpecials->{'%TIMESTAMP'};my $UNIT=   $evalSpecials->{'%UNIT'}\
;my $VALUE=   $evalSpecials->{'%VALUE'};{return undef; {
  if (($READING eq "energy" && $VALUE > 10000)
     {$IGNORE=1}
  }}: syntax error at (eval 486563) line 3, near ")
     {"
syntax error at (eval 486563) line 4, near "}}"

2023.02.20 19:19:32 1: ERROR evaluating my $CN=   $evalSpecials->{'%CN'};my $DEVICE=   $evalSpecials->{'%DEVICE'};my $DEVICETYPE=\
   $evalSpecials->{'%DEVICETYPE'};my $EVENT=   $evalSpecials->{'%EVENT'};my $EVTPART0=   $evalSpecials->{'%EVTPART0'};my $IGNORE=\
   $evalSpecials->{'%IGNORE'};my $LASTTIMESTAMP=   $evalSpecials->{'%LASTTIMESTAMP'};my $LASTVALUE=   $evalSpecials->{'%LASTVALUE\
'};my $READING=   $evalSpecials->{'%READING'};my $TIMESTAMP=   $evalSpecials->{'%TIMESTAMP'};my $UNIT=   $evalSpecials->{'%UNIT'}\
;my $VALUE=   $evalSpecials->{'%VALUE'};{return undef; {
  if (($READING eq "energy" && $VALUE > 10000)
     {$IGNORE=1}
  }}: syntax error at (eval 486564) line 3, near ")
     {"
syntax error at (eval 486564) line 4, near "}}"


Kann mir jemand helfen

Danke
Titel: Antw:Hilfe Logfile läuft über nach Update
Beitrag von: betateilchen am 20 Februar 2023, 19:43:24
Vermutlich hast Du eine Ausschlußklausel eingebaut, die das Loggen eines zu hohen Wertes an einem Energiemessgerät verhindern soll. In dieser Funktion ist ein Syntaxfehler.

Mit dem durchgeführten Update dürfte das eher wenig zu tun haben.
Titel: Antw:Hilfe Logfile läuft über nach Update
Beitrag von: DS_Starter am 20 Februar 2023, 19:50:41
Stimme betateilchen zu .... und
ich glaube in deinem DbLog Attribut valueFn (oder DbLogValueFn) ist eine öffnende Klammer zuviel wenn ich mich nicht täusche:
     
       if (($READING eq "energy" && $VALUE > 10000)
       ....
Titel: Antw:Hilfe Logfile läuft über nach Update
Beitrag von: Hackstall am 20 Februar 2023, 19:51:39
Hi,

ich habe anscheinend den fehlerhaften Eintrag nach Update gefunden.

Er lautet:


attr DBLogging valueFn {\
  if (($READING eq "energy" && $VALUE > 10000) \
     {$IGNORE=1}\
  }


Ich weiss beim besten Willen nicht was diese Anweisung macht. Gibt es das IGNORE nicht mehr?

Komischerweise hat es wohl nach dem Update das DBLogging an den Anfang meiner fhem.cfg verschoben.
Ist das so gewollt oder was ist hier die Ursache.


#######################################################################
##########################     DB LOGGING     #########################
#######################################################################
define DBLogging DbLog /opt/fhem/contrib/dblog/db.conf .*:.*
attr DBLogging DbLogExclude .*
attr DBLogging DbLogSelectionMode Include
attr DBLogging DbLogType Current/History
attr DBLogging alias Database-Log
attr DBLogging asyncMode 1
attr DBLogging cacheLimit 100
attr DBLogging group Grp-Logging
attr DBLogging icon system_backup
attr DBLogging room 9.7_Logging
attr DBLogging syncInterval 15
attr DBLogging valueFn {\
  if (($READING eq "energy" && $VALUE > 10000) \
     {$IGNORE=1}\
  }
Titel: Antw:Hilfe Logfile läuft über nach Update
Beitrag von: Hackstall am 20 Februar 2023, 19:53:37
Danke für Eure Antworten,

es trifft genau das was ich wohl implementiert hatte. und eine Klammer fehlt auch.
Weiss auch nicht wie diese weggekommen ist.

Gruss Andreas
Titel: Antw:Hilfe Logfile läuft über nach Update
Beitrag von: DS_Starter am 20 Februar 2023, 19:55:41
Zitat
Komischerweise hat es wohl nach dem Update das DBLogging an den Anfang meiner fhem.cfg verschoben.
Ist das so gewollt oder was ist hier die Ursache.
Ja das ist so gewollt. Hat etwas mit der Architektur von DbLog seit der Version 5.X.X zu tun.
Titel: Antw:Hilfe Logfile läuft über nach Update
Beitrag von: betateilchen am 20 Februar 2023, 20:02:37
Zitat von: Hackstall am 20 Februar 2023, 19:53:37
und eine Klammer fehlt auch.

Da hat keine Klammer gefehlt, sondern es war eine zuviel.
Hat Heiko ja oben schon beschrieben.