[gelöst] Bug nach heutigen Update (DbLog instabil -> Absturz von FHEM)

Begonnen von CQuadrat, 09 August 2014, 11:49:44

Vorheriges Thema - Nächstes Thema

CQuadrat

Hallo Zusammen,

leider gibt es ja kein Channel, zum melden für allgemeine Bugs, deshalb schreibe ich das hier.

Nach dem mein FHEM seit ca. vier Monaten sehr zuverlässig und stabil lief  ;D , entschloss ich mich gestern dazu, mal wieder ein Update durchzuführen (das erste seit April).

Grund war, dass ich letzte Woche angefangen habe auf DbLog umzusteigen und ich den Eindruck hatte, dass das noch nicht so ganz "rund" läuft.

Jetzt habe ich die folgenden Probleme bzw. Beobachtungen:

  • Führe ich das Update durch Eingabe von "update" im Browser durch, führt dies dazu, dass alle Ereignisse in Browser-Fenster geschrieben werden. Dies hat leider zur Folge, dass man die Meldung am Ende des Updates kaum mitbekommen kann. Dies ist doch bestimmt nicht gewollt. Oder?
  • Aber viel schlimmer: Klicke ich jetzt SVG-Plots, die auf DbLog basieren, zum Editieren an, so stürzt mir FHEM komplett ab  :( 


Viele Grüße

Christoph
FHEM auf Mini-ITX-Server mit Intel Quad-Core J1900:
+ HM: HM-LAN, HM-USB, HM-MOD-UART mit div. HM-Komponenten
+ RFXtrx: Funkwetterstation Bresser mit ext. Thermometer, Regenmesser und Windmesser
+ TUL (KNX-Anbindung), KM271 (per ser2net), SONOS (div. Gimmicks), OneWire, Hue

betateilchen

zu 1: das war aber auch schon vor April so

zu 2: was steht denn im Logfile oder auf der Systemkonsole in dem Fall?
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

CQuadrat

Zitat von: betateilchen am 09 August 2014, 12:06:34
zu 1: das war aber auch schon vor April so

Das war definitiv nicht immer so. Zumindest bei mir.

Zitat von: betateilchen am 09 August 2014, 12:06:34
zu 2: was steht denn im Logfile oder auf der Systemkonsole in dem Fall?

Scheint wohl was im Zusammspiel mysql-Server und FHEM zu sein:

DBD::mysql::st execute failed: MySQL server has gone away at ./FHEM/93_DbLog.pm line 1484.
FHEM auf Mini-ITX-Server mit Intel Quad-Core J1900:
+ HM: HM-LAN, HM-USB, HM-MOD-UART mit div. HM-Komponenten
+ RFXtrx: Funkwetterstation Bresser mit ext. Thermometer, Regenmesser und Windmesser
+ TUL (KNX-Anbindung), KM271 (per ser2net), SONOS (div. Gimmicks), OneWire, Hue

CQuadrat

Nachtrag:

3. longpollSVG funktioniert auch nicht mehr
FHEM auf Mini-ITX-Server mit Intel Quad-Core J1900:
+ HM: HM-LAN, HM-USB, HM-MOD-UART mit div. HM-Komponenten
+ RFXtrx: Funkwetterstation Bresser mit ext. Thermometer, Regenmesser und Windmesser
+ TUL (KNX-Anbindung), KM271 (per ser2net), SONOS (div. Gimmicks), OneWire, Hue

betateilchen

longpollSVG hat mit DbLog m.W. noch nie funktioniert.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

CQuadrat

Da ich erst letzte Woche auf DbLog umgestellt habe (und das jetzt auch wieder deaktiviert ist), basieren die meisten meiner Plots auf FileLogs.
Und da hat bis vorgestern longpollSVG funktioniert. Und bei den gleichen, unveränderten, Plots, funzt es jetzt halt nicht mehr.
FHEM auf Mini-ITX-Server mit Intel Quad-Core J1900:
+ HM: HM-LAN, HM-USB, HM-MOD-UART mit div. HM-Komponenten
+ RFXtrx: Funkwetterstation Bresser mit ext. Thermometer, Regenmesser und Windmesser
+ TUL (KNX-Anbindung), KM271 (per ser2net), SONOS (div. Gimmicks), OneWire, Hue

CQuadrat

Nachtrag 2:

Zitat von: CQuadrat am 10 August 2014, 19:23:08
3. longpollSVG funktioniert auch nicht mehr

longpollSVG funktioniert nur in eingen Räumen (room) nicht. Sehr seltsam  :o
FHEM auf Mini-ITX-Server mit Intel Quad-Core J1900:
+ HM: HM-LAN, HM-USB, HM-MOD-UART mit div. HM-Komponenten
+ RFXtrx: Funkwetterstation Bresser mit ext. Thermometer, Regenmesser und Windmesser
+ TUL (KNX-Anbindung), KM271 (per ser2net), SONOS (div. Gimmicks), OneWire, Hue

whyte

Zitat von: CQuadrat am 09 August 2014, 12:26:17

DBD::mysql::st execute failed: MySQL server has gone away at ./FHEM/93_DbLog.pm line 1484.


MySQL server has gone away
läuft denn der MySQL Server überhaupt noch ?
/etc/init.d/mysql restart

CQuadrat

#8
Ja, der Server läuft noch: ich kann noch SQL-Statements abschicken.

Aber selbst wenn der SQL-Server crasht, müsste doch FHEM noch weiterlaufen. Oder?
FHEM auf Mini-ITX-Server mit Intel Quad-Core J1900:
+ HM: HM-LAN, HM-USB, HM-MOD-UART mit div. HM-Komponenten
+ RFXtrx: Funkwetterstation Bresser mit ext. Thermometer, Regenmesser und Windmesser
+ TUL (KNX-Anbindung), KM271 (per ser2net), SONOS (div. Gimmicks), OneWire, Hue

CQuadrat

So, ich habe jetzt nochmal an meiner Konfiguration herumgespielt und die Anzahl der per DbLog zu loggenden Informationen auf die unglaubliche Anzahl von einem(!) Device reduziert.
<sarkasmus>Jetzt läuft es schon wesentlich stabiler. </sarkasmus> Es werden für ein paar Minuten Daten geloggt. Dann ist Schluss und ich kann/muss mit
set myDbLog rereadcfg
die Verbindung zur Datenbank wieder herstellen. Danach läuft es wieder für ein paar Minuten. Vom Gefühl her würde ich sagen, dass es stabiler läuft, wenn ich nicht mit dem Frontend auf FHEM zugreife.

Die einzige Fehlermeldung die ich bekomme (auf der Konsole) lautet:

DBD::mysql::st execute failed: MySQL server has gone away at ./FHEM/93_DbLog.pm line 1484.
DBD::mysql::st fetchrow_array failed: fetch() without execute() at ./FHEM/93_DbLog.pm line 1485.
^* matches null string many times in regex; marked by <-- HERE in m/^* <-- HERE .open$/ at ./FHEM/01_FHEMWEB.pm line 2040.



Wer weiß Rat, wo ich hier noch nach Schwachpunkten suchen kann? Was könnte man noch loggen?
FHEM auf Mini-ITX-Server mit Intel Quad-Core J1900:
+ HM: HM-LAN, HM-USB, HM-MOD-UART mit div. HM-Komponenten
+ RFXtrx: Funkwetterstation Bresser mit ext. Thermometer, Regenmesser und Windmesser
+ TUL (KNX-Anbindung), KM271 (per ser2net), SONOS (div. Gimmicks), OneWire, Hue

blueberry63

Ich würde zuerst mal alle Plots weglassen.

Ist die MySQL-DB auch auf dem FHEM-Server?
Wie ist denn die System-Auslastung?

Wenn die DB nicht erreichbar ist, bleibt FHEM stehen.

Gruß
Blueberry63
FHEM auf BBB mit Wheezy: 1x CUL_HM_HM_SCI_3_FM, 1x INSTAR CAM3010, 1x HM-LC-SW1-PL2, 1x HM-LC-Bl1PBU-FM, 1x HM-Sen-MDIR-O, Viessmann Heizung, Gaszähler via GPIO, Klingel via HM-LC-Bl1PBU-FM an FBox, Mailcheck, AVR, XBMC, NanoCUL 433+668 an Raspi per Ethernet, Funksteckdosen (Pollin, IT), Automower

CQuadrat

Zitat von: blueberry63 am 14 August 2014, 11:13:14
Ich würde zuerst mal alle Plots weglassen.
Den Verdacht habe ich auch. Absturz (bzw. hängen vom Logging per DbLog) kommt immer nur, wenn ich Plots ansehe oder bearbeite. Also per Webfrontend auf die Datenbank zugreifen.
SQL-Abfragen per Konsole funktionieren einwandfrei.

Zitat von: blueberry63 am 14 August 2014, 11:13:14
Ist die MySQL-DB auch auf dem FHEM-Server?
Wie ist denn die System-Auslastung?
Ja. Der FHEM-Server ist ein Dell-Netbook. Außer Fhem, MySQL und Standarddiensten läuft da nichts; auch kein graphische Oberfläche. Der sollte damit doch locker zurecht kommen.
Systemauslastung ist <=0.1
FHEM auf Mini-ITX-Server mit Intel Quad-Core J1900:
+ HM: HM-LAN, HM-USB, HM-MOD-UART mit div. HM-Komponenten
+ RFXtrx: Funkwetterstation Bresser mit ext. Thermometer, Regenmesser und Windmesser
+ TUL (KNX-Anbindung), KM271 (per ser2net), SONOS (div. Gimmicks), OneWire, Hue

chris1284

Zitat von: blueberry63 am 14 August 2014, 11:13:14
Wenn die DB nicht erreichbar ist, bleibt FHEM stehen.

Gruß
Blueberry63

kann ich nicht bestätigen. fhem läuft fröhlich weiter und sagt halt nur "disconnected"

CQuadrat

So: bis jetzt hatte ich nicht per Frontend auf FHEM zugegriffen und es wurde fleißig geloggt (überprüft per SQL-Abfrage auf der Konsole).

Und dann einmal ein Plot angeschaut und schon hört das Loggen auf.  :(

Versuch den Plot zu editieren -> Totalabsturz von FHEM mit obiger Fehlermeldung  >:(


Nachtrag: mySQL-Server läuft aber noch; kann ebenfalls auf der Konsole überprüft werden. ???
FHEM auf Mini-ITX-Server mit Intel Quad-Core J1900:
+ HM: HM-LAN, HM-USB, HM-MOD-UART mit div. HM-Komponenten
+ RFXtrx: Funkwetterstation Bresser mit ext. Thermometer, Regenmesser und Windmesser
+ TUL (KNX-Anbindung), KM271 (per ser2net), SONOS (div. Gimmicks), OneWire, Hue

chris1284

das problem hatte ich auch schon. das löschen des plots (gplot file, definition des plots) und neu anlegen hat damals geholfen

CQuadrat

Zitat von: chris1284 am 14 August 2014, 18:25:32
das problem hatte ich auch schon. das löschen des plots (gplot file, definition des plots) und neu anlegen hat damals geholfen

Das bringt es leider auch nicht. :(

Ich bin mir aber mittlerweile ziemlich sicher, dass es am Frontend mit 01_FHEMWEB liegt. Ich versuche da, noch etwas mehr per Logs herauszufinden.
FHEM auf Mini-ITX-Server mit Intel Quad-Core J1900:
+ HM: HM-LAN, HM-USB, HM-MOD-UART mit div. HM-Komponenten
+ RFXtrx: Funkwetterstation Bresser mit ext. Thermometer, Regenmesser und Windmesser
+ TUL (KNX-Anbindung), KM271 (per ser2net), SONOS (div. Gimmicks), OneWire, Hue

CQuadrat

FHEM auf Mini-ITX-Server mit Intel Quad-Core J1900:
+ HM: HM-LAN, HM-USB, HM-MOD-UART mit div. HM-Komponenten
+ RFXtrx: Funkwetterstation Bresser mit ext. Thermometer, Regenmesser und Windmesser
+ TUL (KNX-Anbindung), KM271 (per ser2net), SONOS (div. Gimmicks), OneWire, Hue