Fehlermeldungen im Logfile bei Backup und Verwendung von configDB

Begonnen von dlehmann69, 08 März 2014, 19:41:22

Vorheriges Thema - Nächstes Thema

dlehmann69

Hallo,

ich habe heute ein Update durchgeführt. Danach habe ich folgende Meldungen im Logfile von FHEM gefunden.
2014.03.08 19:31:34 3: update get http://fhem.de/fhemupdate4/svn/FHEM/FhemUtils/release.pm
2014.03.08 19:31:34 1: update check Releases => local: Fhem 5.5 (DEVELOPMENT) remote: Fhem 5.5 (DEVELOPMENT)
2014.03.08 19:31:34 3: update get http://fhem.de/fhemupdate4/svn/controls_fhem.txt
2014.03.08 19:31:35 1: update saving statefile
2014.03.08 19:31:35 1: backup Can't open configDB: No such file or directory
2014.03.08 19:31:35 2: Backup with command: tar -cf - configDB ./log/fhem.save ./archive ./CHANGED ./configDB.conf ./configDB.conf~ ./configDB.db ./configDB.pm ./contrib ./docs ./FHEM ./fhem.cfg ./fhem.cfg~ ./fhem.pl ./log ./Unbenanntes Dokument~ ./unused ./www |gzip > ./backup/FHEM-20140308_193135.tar.gz
2014.03.08 19:31:54 1: backup tar: configDB: Cannot stat: No such file or directory
tar: ./Unbenanntes: Cannot stat: No such file or directory
tar: Dokument~: Cannot stat: No such file or directory
tar: Exiting with failure status due to previous errors
2014.03.08 19:31:54 1: backup done: FHEM-20140308_193135.tar.gz (33155082 Bytes)


Das Backup scheint also trotzdem gelaufen zu sein und das Update ist dann auch normal gelaufen. Ansonsten läuft mein FHEM ohne Probleme mit der neuen configDB. Was hat das mit diesen Meldungen auf sich? Wenn mehr Angaben benötigt werden bitte melden.

Grüße
Dirk
FHEM 6.0 Development auf Ubuntu 20.04 GIGABYTE GB-BACE mit Intel(R) Celeron(R) CPU N3150
CUL 3.4 FW 1.53 868 MHz für FS20, FHT
CUL 3.4 FW 1.66 868 MHz für HM
configDB; DbLog
FHT80, FS20, HMS, EM1000WZ, FHTTF, HM-LC-Sw1-DR; Lightify; HM-CC-RT-DN; HM-TC-IT-WM-W-EU; HM-SEC-SCO

betateilchen

Wenn jemand mit configDB arbeitet, macht ein Backup z.B. von ./log/fhem.save keinen Sinn mehr, weil die Datei gar nicht mehr beschrieben wird.

Mit dem Backup hab ich mich noch nie beschäftigt, weil ich das vor dem Update ohnehin nicht ausführen lasse.
Ich schau mir das mal an. Ich vermute, dass im backup-Skript irgendwo die als config-Datei gekennzeichnete Datei mit gesichert wird und im Fall der Nutzung von configDB gibt es diese Datei nicht. Stattdessen wird versucht, das Schlüsselwort zu sichern - macht auch keinen Sinn  :P

Das Ganze dürfte noch eine generelle Baustelle sein, um die man sich mal kümmern muss. Mein Tipp wäre: schalte das Backup ab oder definiere Dir einen eigenen Backup-Befehl, bis das Problem gelöst ist, wenn es Dich wirklich stört. Das Update selbst sollte aber trotzdem funktionieren.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

betateilchen

Der Modulverantwortliche für update und backup hat nun entschieden, die Fehlermeldung dadurch zu beseitigen, dass er configDB Nutzer ab sofort benachteiligt, indem er ihnen die Nutzung der Backup-Funktion einfach komplett verweigert.

Die zu diesem Thema geführte Diskussion kann ab hier nachgelesen werden: Klick mich

Ich persönlich halte diese Entscheidung weder für sinnvoll noch für begründet und schon gar nicht im Sinne der Anwender.
Deshalb werde ich über eine anwenderfreundlichere Lösung der Aufgabe nachdenken.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

betateilchen

Ich schlage allen interessieren Nutzern folgende Lösung vor:

1. Definition eines Alias

define aliasUpdate cmdalias update2 AS configdb backup;;update

2. Ausführen des fhem-Updates mittels des in 1. neu geschaffenen Kommandos update2

Dabei wird zuerst die fhem Installation gesichert, danach das Update durchgeführt.

Zwei Punkte sind zu beachten:

1. Für die Sicherung der benutzten Konfigurationsdatenbank ist der Benutzer grundsätzlich selbst verantwortlich.
2. Falls das Update im Background ausgeführt wird, erfolgt nur eine entsprechende Meldung, aber der EventMonitor zum Mitverfolgen wird nicht aufgerufen.

Wer die Konfigurationsdatenbank in sqlite führt und die Datenbank im fhem Verzeichnis liegen hat, profitiert übrigens von der Einfachheit dieser Datenbank. Denn da sich die gesamte Datenbank in einer einzigen Datei befindet, wird sie als normaler Bestandteil des Verzeichnisses automatisch mitgesichert :)
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

dlehmann69

Sorry für die späte Rückmeldung. Das Backup scheint zu funktionieren. Ich habe wohl nur noch wegen der Erstellung der Datenbank und der conf Datei in Ubuntu mittels sudo noch Zugriffsprobleme. Den ich bekomme immer die Meldung Can't open configDB: No such file or directory
Auf jeden Fall hat FHEM die entsprechenden Rechte und kann schreiben. Und die Datenbank funktioniert und das Backup enthält alle Dateien. Die Rechte bekomme ich dann auch noch in den Griff.
FHEM 6.0 Development auf Ubuntu 20.04 GIGABYTE GB-BACE mit Intel(R) Celeron(R) CPU N3150
CUL 3.4 FW 1.53 868 MHz für FS20, FHT
CUL 3.4 FW 1.66 868 MHz für HM
configDB; DbLog
FHT80, FS20, HMS, EM1000WZ, FHTTF, HM-LC-Sw1-DR; Lightify; HM-CC-RT-DN; HM-TC-IT-WM-W-EU; HM-SEC-SCO

betateilchen

Das ist kein Problem mit der Rechteverwaltung. Wann bekommst Du diese Meldung, und was steht vor oder hinter dieser Meldung im Log?
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

dlehmann69

Ich habe heute das Update gemacht und bekam wieder die Meldung. Dann habe ich noch einmal ein Update (natürlich mit nichts zu tun) mit verbose=5 gefahren. Folgende Ergebnisse habe ich.


  • im Loglife erscheint diese Meldung nicht
  • die Meldung erscheint bei jedem Update nur auf dem Bildschirm als Abschluss des Vorgangs
FHEM 6.0 Development auf Ubuntu 20.04 GIGABYTE GB-BACE mit Intel(R) Celeron(R) CPU N3150
CUL 3.4 FW 1.53 868 MHz für FS20, FHT
CUL 3.4 FW 1.66 868 MHz für HM
configDB; DbLog
FHT80, FS20, HMS, EM1000WZ, FHTTF, HM-LC-Sw1-DR; Lightify; HM-CC-RT-DN; HM-TC-IT-WM-W-EU; HM-SEC-SCO

betateilchen

Zitat von: dlehmann69 am 15 März 2014, 17:07:45im Loglife

was immer das auch sein mag *g*

Mach mal bitte ein "list global" und poste die Ausgabe hier.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

dlehmann69

Hier die Ausgabe von configDB list global.

search result for device: global in version: 0
--------------------------------------------------------------------------------
attr global altitude 250
attr global archivedir ./archive/
attr global autoload_undefined_devices 1
attr global holiday2we sachsen
attr global latitude 51.136
attr global logfile ./log/fhem-%Y-%m.log
attr global longitude 13.878
attr global modpath .
attr global nrarchive 1
attr global sendStatistics onUpdate
attr global statefile ./log/fhem.save
attr global uniqueID ./FHEM/FhemUtils/uniqueID
attr global userattr DbLogExclude devStateIcon devStateStyle icon sortby webCmd
attr global verbose 3
FHEM 6.0 Development auf Ubuntu 20.04 GIGABYTE GB-BACE mit Intel(R) Celeron(R) CPU N3150
CUL 3.4 FW 1.53 868 MHz für FS20, FHT
CUL 3.4 FW 1.66 868 MHz für HM
configDB; DbLog
FHT80, FS20, HMS, EM1000WZ, FHTTF, HM-LC-Sw1-DR; Lightify; HM-CC-RT-DN; HM-TC-IT-WM-W-EU; HM-SEC-SCO

betateilchen

Zum einen kann ich mir schwer vorstellen, dass Du wirklich alle fhem-Module auf dem aktuellen Stand hast,
zum zweiten kannst Du mal folgendes Testen:

attr global backup_before_update 0

Solange Du mit dem Standard-Backup von fhem in Kombination mit configDB arbeitest, wirst Du die Fehlermeldung nicht wegbekommen, da Rudi nicht bereit ist, den backup-Prozeß entsprechend anzupassen. Deshalb hatte ich oben bereits die alternative Vorgehensweise beschrieben.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

dlehmann69

Ich meinte natürlich Logfile von FHEM selbst  ;)

Deine Anpassung mit dem eigenen Updatebefehl hatte ich bereits umgesetzt. Trotzdem kam die Meldung nach erfolgtem Update.

Ich habe dann heute ein Update gezogen, nach dem ich das neue Attribute eingefügt habe. FHEM sollte also auf Stand sein. Nach einem Neustart dann noch einmal ein Update gemacht. Die Fehlermeldung bleibt aber wie erwähnt und auch nur auf dem Bildschirm nach dem Update. Im Logfile steht nichts. Das Backup läuft ganz normal durch.
FHEM 6.0 Development auf Ubuntu 20.04 GIGABYTE GB-BACE mit Intel(R) Celeron(R) CPU N3150
CUL 3.4 FW 1.53 868 MHz für FS20, FHT
CUL 3.4 FW 1.66 868 MHz für HM
configDB; DbLog
FHT80, FS20, HMS, EM1000WZ, FHTTF, HM-LC-Sw1-DR; Lightify; HM-CC-RT-DN; HM-TC-IT-WM-W-EU; HM-SEC-SCO

betateilchen

Mich würde mal das Logging des Updates im Filelog selbst interessieren.

Passiert das auch, wenn Du die beiden Schritte getrennt voneinander manuell ausführst (backup + update) ?
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

dlehmann69

backup funktioniert natürlich erwartungsgemäß nicht mit der Meldung not supported for configDB. configdb backup funktioniert ohne Fehlermeldung. Bei update kommt dann auf dem FHEM Bildschirm nach nothing to do die besagte Meldung. Möchtest du die Meldungen aus dem Filelog mit verbose=5? Auf verbose=3 kommt nur folgendes

2014.03.18 21:33:30 3: update get http://fhem.de/fhemupdate4/svn/FHEM/FhemUtils/release.pm
2014.03.18 21:33:30 1: update check Releases => local: Fhem 5.5 (DEVELOPMENT) remote: Fhem 5.5 (DEVELOPMENT)
2014.03.18 21:33:30 3: update get http://fhem.de/fhemupdate4/svn/controls_fhem.txt
2014.03.18 21:33:30 1: update nothing to do...


Ich habe das Ganze aber auch nochmal mit verbose=5 laufen lassen. Ich sehe da aber keine entsprechende Meldung.
FHEM 6.0 Development auf Ubuntu 20.04 GIGABYTE GB-BACE mit Intel(R) Celeron(R) CPU N3150
CUL 3.4 FW 1.53 868 MHz für FS20, FHT
CUL 3.4 FW 1.66 868 MHz für HM
configDB; DbLog
FHT80, FS20, HMS, EM1000WZ, FHTTF, HM-LC-Sw1-DR; Lightify; HM-CC-RT-DN; HM-TC-IT-WM-W-EU; HM-SEC-SCO

betateilchen


2014.03.18 21:45:51 3: update get http://fhem.de/fhemupdate4/svn/FHEM/FhemUtils/release.pm
2014.03.18 21:45:51 1: update check Releases => local: Fhem 5.5 (DEVELOPMENT) remote: Fhem 5.5 (DEVELOPMENT)
2014.03.18 21:45:51 3: update get http://fhem.de/fhemupdate4/svn/controls_fhem.txt
2014.03.18 21:45:52 1: update excluded by configuration: HttpUtils.pm
2014.03.18 21:45:52 1: update nothing to do...


Sieht bei mir genau so aus. Nur dass die Fehlermeldung nicht kommt.

Irgendwas muss da bei Dir noch faul sein. Nur hab ich grade keine Idee, was das sein könnte.
Nach dem Update kann es eigentlich keinen Zugriff mehr auf irgendeine Konfigurationsmöglichkeit geben.
Die einzige Möglichkeit, die mir zu der Fehlermeldung einfällt, ist die Möglichkeit, dass irgendwie noch das originale Backup in die Suppe spuckt.

Hast Du den alias wie von mir vorgeschlagen definiert oder daran irgendwas geändert?
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

dlehmann69

Eigentlich wie von dir vorgeschlagen. Hier mal das List aus der DB dazu.

search result for device: aliasUpdate in version: 0
--------------------------------------------------------------------------------
define aliasUpdate cmdalias update2 AS configdb backup;;update


Aber der Fehler kommt ja auch bei dem einzelnen Befehl "update" über das Eingabefeld in FHEM.
FHEM 6.0 Development auf Ubuntu 20.04 GIGABYTE GB-BACE mit Intel(R) Celeron(R) CPU N3150
CUL 3.4 FW 1.53 868 MHz für FS20, FHT
CUL 3.4 FW 1.66 868 MHz für HM
configDB; DbLog
FHT80, FS20, HMS, EM1000WZ, FHTTF, HM-LC-Sw1-DR; Lightify; HM-CC-RT-DN; HM-TC-IT-WM-W-EU; HM-SEC-SCO