[Gelöst] "configfile: 0" im Log

Begonnen von mahowi, 14 August 2019, 09:32:22

Vorheriges Thema - Nächstes Thema

mahowi

Ich habe im Log bei jedem Start von FHEM folgendes im Log:
2019.08.14 08:58:21.594 1: configfile: 0
0



In motd steht daher:
Messages collected while initializing FHEM:\
configfile: 0\
0\
\
Autosave deactivated


Wie finde ich heraus, woher die Meldung kommt? In fhem.cfg kann ich nichts Auffälliges finden. Alle Einträge wurden über FHEM angelegt.
CUBe (MAX): HT, FK | CUBe (SlowRF): ESA2000WZ
JeeLink: LaCrosse | nanoCUL433: Smartwares SHS-51001-EU, EM1000GZ
ZME_UZB1: GreenWave PowerNode, Popp Thermostat | SIGNALDuino: HE877, X10 MS14A, Revolt NC-5462,  IT Steckdosen + PIR
tado° | Milight | HUE, Lightify | SmarterCoffee

Christoph Morrison

Hast du schon mal über /opt/fhem nach configfile gegrept?

mahowi

Zitat von: Christoph Morrison am 14 August 2019, 09:48:12
Hast du schon mal über /opt/fhem nach configfile gegrept?
Schon, das ist aber wenig hilfreich. Außer in den Logs und fhem.cfg (durch motd) kommt der Begriff natürlich auch in fhem.pl und diversen Modulen vor, die die Config lesen oder bearbeiten.

Es gibt in der fhem.cfg auch keine Zeilen, in denen eine "0" alleine steht.
CUBe (MAX): HT, FK | CUBe (SlowRF): ESA2000WZ
JeeLink: LaCrosse | nanoCUL433: Smartwares SHS-51001-EU, EM1000GZ
ZME_UZB1: GreenWave PowerNode, Popp Thermostat | SIGNALDuino: HE877, X10 MS14A, Revolt NC-5462,  IT Steckdosen + PIR
tado° | Milight | HUE, Lightify | SmarterCoffee

Christoph Morrison

debug 5 und dann mal neustart schon versucht? Hab's bei mir eben in einem vanilla FHEM gemacht, da kam nix ähnliches. Dann über den Fhem-log nach configfile greppen.
Mehr fällt mir auch gerade nicht ein ...

betateilchen

Setze doch die Meldung erstmal zurück und teste dann, ob sie nach einem FHEM Neustart überhaupt noch auftaucht.


attr global motd none
save
shutdown restart
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

mahowi

So, wie ich die Meldung verstehe, findet FHEM im "configfile", in meinem Fall also fhem.cfg, die Zeilen
0\
0\
\


Die stehen allerdings nicht drin. Ich habe FHEM auch in den letzten Jahren schon mehrfach neu aufgesetzt, die Meldung hatte ich bisher noch nie.

Die Meldung kommt allerdings immer nachdem Einlesen von fhem.save:
2019.08.14 12:13:17.314 1: Including ./log/fhem.save
2019.08.14 12:13:17.965 1: configfile: 0
0



Eventuell steht da also was Falsches drin.

@betateilchen: Das habe ich bereits gemacht. Die Meldung taucht weiterhin auf.
CUBe (MAX): HT, FK | CUBe (SlowRF): ESA2000WZ
JeeLink: LaCrosse | nanoCUL433: Smartwares SHS-51001-EU, EM1000GZ
ZME_UZB1: GreenWave PowerNode, Popp Thermostat | SIGNALDuino: HE877, X10 MS14A, Revolt NC-5462,  IT Steckdosen + PIR
tado° | Milight | HUE, Lightify | SmarterCoffee

betateilchen

#6
Zitat von: mahowi am 14 August 2019, 12:19:55
So, wie ich die Meldung verstehe, findet FHEM im "configfile", in meinem Fall also fhem.cfg, die Zeilen

Das verstehst Du falsch. Das was Dir da angezeigt wird, sind die gesammelten Rückmeldungen der von Dir verwendeten Module beim Anlegen von devices. Irgendein Modul liefert als Rückgabewert beim _Define() eine 0 zurück anstatt undef, und ein vorhandener Rückgabewert wird in diesem Fall von fhem.pl als Fehlermeldung interpretiert.

Zitat von: mahowi am 14 August 2019, 12:19:55
@betateilchen: Das habe ich bereits gemacht. Die Meldung taucht weiterhin auf.

Da die 0 zweimal auftaucht, hast Du vermutlich zwei devices vom gleichen Modultyp. Schau doch mal mit fheminfo, welcher Modultyp bei Dir genau zweimal verwendet wird. Das grenzt die Suche schon ein.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

mahowi

Ich hab's gefunden.  :D

Zumindest weiß ich jetzt, daß fhem.pl die Meldung direkt über $cfgRet auswirft:
  my $ret = CommandInclude(undef, $attr{global}{configfile});
  $cfgRet .= "configfile: $ret\n" if($ret);


Nachdem ich mal nachgesehen habe, was CommandInclude() so macht, habe ich mit verbose 5 nach line.*returned im Log gesucht.
dietpi@fhem:~$ grep -a line.*returned /opt/fhem/log/fhem-2019-08.log
2019.08.14 12:34:04.116 5: fhem.cfg line 1569 returned >0<
2019.08.14 12:34:04.132 5: fhem.cfg line 1571 returned >0<


Damit habe ich dann endlich die Verursacher gefunden.  :)
CUBe (MAX): HT, FK | CUBe (SlowRF): ESA2000WZ
JeeLink: LaCrosse | nanoCUL433: Smartwares SHS-51001-EU, EM1000GZ
ZME_UZB1: GreenWave PowerNode, Popp Thermostat | SIGNALDuino: HE877, X10 MS14A, Revolt NC-5462,  IT Steckdosen + PIR
tado° | Milight | HUE, Lightify | SmarterCoffee

betateilchen

Zitat von: mahowi am 14 August 2019, 12:49:57
Zumindest weiß ich jetzt, daß fhem.pl die Meldung direkt über $cfgRet auswirft:

Fast richtig  ;)

In $cfgRet werden die Meldungen lediglich eingesammelt, ins Log geschrieben und in das globale Attribut motd übertragen.

Die Ausgabe im Frontend erfolgt aus dem globalen Attribut motd durch 01_FHEMWEB.pm bzw. 98_telnet.pm.




Zitat von: mahowi am 14 August 2019, 12:49:57
Damit habe ich dann endlich die Verursacher gefunden.  :)

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