rereadcfg Service.cfg -> Fehler "Cannon open Service.cfg: No such file or directory"

Begonnen von Guest, 14 Oktober 2012, 11:50:54

Vorheriges Thema - Nächstes Thema

Guest

Originally posted by: <email address deleted>

Seit ein paar Tagen funktioniert das selektive Neulesen von
Konfigurationsdateien nicht mehr und bringt immer die aufgeführte
Fehlermeldung. Rereadcfg ohne Parameter funktioniert nach wie vor ohne
Probleme.

Ich habe die meisten Definitionen in include Dateien ausgelagert. Das
sieht folgendermaßen aus:

 include ../ownFhem/Service.cfg

im Logfile - auch wie erwartet

 2012.10.14 11:31:32 1: Including ../ownFhem/Service.cfg

nur, wie gesagt, jetzt beim Aufruf von rereadcfg Service.cfg die
Fehlermeldung

 Cannon open Service.cfg: No such file or directory

(ja, mit dem Schreibfehler "Cannon" statt "Cannot")

Peter

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

rudolfkoenig

                                                   

>  Cannon open Service.cfg: No such file or directory

Cannon:
  geaendert :)

No such file or directory:
  Bis vor kurzem hat rereadconfig alle Argumente ignoriert.
  Seit neuestem wird, falls spezifiziert, die Datei eingelesen.
  Das Argument muss genauso wie beim save bzw. include angegeben werden.

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Guest

Originally posted by: <email address deleted>

On 15 Okt., 10:14, Rudolf Koenig wrote:
> >  Cannon open Service.cfg: No such file or directory
>
> Cannon:
>   geaendert :)
>
> No such file or directory:
>   Bis vor kurzem hat rereadconfig alle Argumente ignoriert.
>   Seit neuestem wird, falls spezifiziert, die Datei eingelesen.
>   Das Argument muss genauso wie beim save bzw. include angegeben werden.

Ok, d.h., bisher wurde einfach immer ein komplettes rereadcfg gemacht
(ohne, dass ich das gemerkt habe).

Im rereadcfg muss aber noch ein Fehler drin sein. Auf der
Telnet Konsole bekomme ich (wenn ich im GUI (verbose 5 gesetzt)
"rereadcfg ../ownFhem/Service.cfg" aufrufe) die Fehlermeldung(en):

# 2012.10.15 21:07:00 1: Including ../ownFhem/Service.cfg
Use of uninitialized value in concatenation (.) or string at ./FHEM/
01_FHEMWEB.pm line 417.
Can't use an undefined value as a HASH reference at ./FHEM/
01_FHEMWEB.pm line 420.

und fhem ist danach beendet.

Peter

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

rudolfkoenig

                                                   

> Im rereadcfg muss aber noch ein Fehler drin sein.

Bin nicht der Ansicht.


> Auf der Telnet Konsole bekomme ich (wenn ich im GUI (verbose 5 gesetzt)
> "rereadcfg ../ownFhem/Service.cfg" aufrufe) die Fehlermeldung(en):

In diesem Service.cfg fehlt "attr global modpath", ich vermute also, dass das
nur ein Teil der Konfiguration ist.
rereadcfg braucht aber ein komplettes fhem.cfg, einzelne include Dateien kann
man nicht neu reinlesen.

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

Guest

Originally posted by: <email address deleted>

On 16 Okt., 08:40, Rudolf Koenig wrote:
> In diesem Service.cfg fehlt "attr global modpath", ich vermute also, dass das
> nur ein Teil der Konfiguration ist.
> rereadcfg braucht aber ein komplettes fhem.cfg, einzelne include Dateien kann
> man nicht neu reinlesen.

Danke für die Erläuterungen - ich glaube, ich hatte das "rereadcfg
fhem-config-file" gründlich missverstanden. Soweit ich das jetzt sehe,
bezieht sich das rereadcfg IMMER auf eine komplette Konfiguration
mitsamt aller include Dateien; include Dateien, die für sich allein
Gültigkeit haben machen wohl eher keinen Sinn? Ein rereadcfg mit
Angabe einer optionalen Konfig Datei sollte sich dann auf eine
komplett andere Konfiguration (Hauptdatei + alle darin angesprochenen
include) beziehen?

Mein Vorschlag für eine überarbeitete commandref Beschreibung
(rereadcfg):
- - - - - - - - -
Re-read the currently active configuration, or, optionally, the
specified configuration.
The sequence of processing:
1. the statefile (as specified in the "statefile" global attribute)
will be saved
2. all devices will be deleted
3. the active configuration (or the specified configuration) will be
read (all devices will be initialized again)
4. the statefile will be reloaded

Upon completion, the global:REREADCFG event will be triggered. All
existing connections including the one issuing the rereadcfg will be
closed.
- - - - - - - - -

Darüber hinaus (und nachdem mittlerweile das "include" fast problemlos
funktioniert) sollte vielleicht zwischen einer Konfiguration und den
einzelnen .cfg Files unterschieden werden. Eine Konfiguration wären
dann sämtliche Definitionen der Haupt-cfg und aller (evtl. über
mehrere Ebenen) mit include eingebundenen .cfg Files.

Default- oder aktive Konfiguration ist dann alles, was über die beim
startfhem angegebene .cfg (bzw. im "configfile" global attribute
spezifizierte Datei) angesprochen wird.

Passt das so oder habe ich da immer noch was falsch verstanden?

Gruß, Peter

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com

rudolfkoenig

                                                   

> Passt das so oder habe ich da immer noch was falsch verstanden?

Ich meine Du hast hier nichts falsches geschrieben. MAn war die Beschreibung
vorher auch eindeutig, ich habe es trotzdem leicht erweitert.

--
To unsubscribe from this group, send email to
fhem-users+unsubscribe@googlegroups.com