[vz-users] Network Error Gateway Timeout
Tilman Glötzner
tilman_1 at gloetzner.net
So Dez 3 12:44:22 CET 2023
Hallo nochmal
a) Mir ist noch eingefallen, dass es beim Start RPI Unregelmäßigkeiten
gab und volkszaehler nicht starten wollte. Ich habe ihn mehrfach von
Hand starten müssen, bis er lief. Die Fehlermeldungen waren:
[Nov 28 01:50:56][main] log level is 3
[Nov 28 01:50:56][s0] failed to set policy to SCHED_FIFO for
counter_thread
[Nov 28 01:50:56][s0] failed to set policy to SCHED_FIFO for
counter_thread
[Nov 28 01:50:56][s0] failed to set policy to SCHED_FIFO for
counter_thread
[Nov 28 01:50:56][] Startup failed: open direction failed
Ausserdem musste ich auch die middleware von Hand starten. Die lief dann
aber mit dem ersten Versuch.
b) Ausserdem habe ich ein paar Warnungen von SQL in
/var/log/mysql/error.log gefunden
2023-12-03 4:04:52 2490 [Warning] Aborted connection 2490 to db:
'volkszaehler' user: 'vz' host: 'localhost' (Got an error reading
communication packets)
2023-12-03 11:42:34 2578 [Warning] Aborted connection 2578 to db:
'volkszaehler' user: 'vz' host: 'localhost' (Got an error writing
communication packets)
2023-12-03 11:42:58 2588 [Warning] Aborted connection 2588 to db:
'volkszaehler' user: 'vz' host: 'localhost' (Got an error writing
communication packets)
2023-12-03 11:43:00 2562 [Warning] Aborted connection 2562 to db:
'volkszaehler' user: 'vz' host: 'localhost' (Got an error writing
communication packets)
c) Wäre es möglich, dass z.B. der Index von data beim Starten korrupt
geworden ist und es deshalb zu den Performance-Problemen kommt? Kann man
den Index einer Tabelle regenerieren oder zumindest überprüfen?
Danke und Gruß
Tilman
On 01.12.23 11:18, Tilman Glötzner wrote:
> Hallo
>
> ich verwende volkszaehler mit einem Raspberry Pi Model B Rev 2 mit
> 512 MB RAM. Nach einem Neustart am 28.11. erhalte ich mit der
> Einstellung Current praktisch immer einen Timeout-Fehler. Wenn ich die
> Anzahl der Signale auf 1 reduziere und einen Zeitbereich von circa 1/2
> Tag auswähle geht es zumeist. Auch das Betrachten von Daten über einen
> Monate mit der Auflösung 1 Tag bzw 1 Jahr mit der Auflösung 1 Tag
> funktioniert. Desweiteren fällt auf, die Spalte mit den Zählerständen
> nicht mehr gezeigt wird.
>
> Hier ein Ausschnitt aus dem Log während eines Prozess, der im Timeout
> endet:
>
> ec 1 10:39:05 logger systemd[1]: Starting Clean php session files...
> Dec 1 10:39:08 logger systemd[1]: phpsessionclean.service: Succeeded.
> Dec 1 10:39:08 logger systemd[1]: Started Clean php session files.
> Dec 1 10:40:01 logger CRON[13678]: (root) CMD (flock -n
> /tmp/flock-vz_aggregate.lock php
> /var/www/volkszaehler.org/bin/aggregate run -m delta -l minute
> >/dev/null)
> Dec 1 10:50:01 logger CRON[14171]: (root) CMD (flock -n
> /tmp/flock-vz_aggregate.lock php
> /var/www/volkszaehler.org/bin/aggregate run -m delta -l minute
> >/dev/null)
> Dec 1 10:52:54 logger php[3438]: Maximum execution time of 30 seconds
> exceeded. Closing worker.
> Dec 1 10:52:54 logger php[3438]: Maximum execution time of 30 seconds
> exceeded. Closing worker.
>
>
> Was noch auffällt, ist der Timestamp des Locks. Den RPI ich für den
> Einbau einer Erweiterung um 0:35 h (Local Time) am 28.11. herunter
> gefahren und um 1:53h wieder hochgefahren. Eigentlich war der Rechner
> zum Zeitpunkt des Timestamps aus. Was mir unklar ist: Muss das Lock
> nach beenden der aggregate-Scripte wieder gelöscht werden?
>
> ls -la /tmp/flock-vz_aggregate.lock
> -rw-r--r-- 1 root root 0 Nov 28 01:30 /tmp/flock-vz_aggregate.lock
>
>
> An Sensoren frage ich 3 Zähler mittels S0-GPIO ab, ausserdem 1
> Smart-Zaehler per IR. Desweiteren einen Solarakku über ein
> pythonskript und modbus on tcp, und einen Gaszähler mittels python
> script (holt die Zählerdaten von einen Program lokal über tcp). Die
> Datenbank lebt auf einer USB-SSD-Festplatte (ASM1051E SATA 6Gb/s bridge)
>
> Die Optimierungen der Datenbank mittels cronjobs habe ich schon vor
> längerer Zeit implementiert (sieht man auch im Log).
>
> Die Frage ist nun, wo ich Potential habe, die Performance soweit zu
> verbessern, dass es keine Timeouts mehr gibt. Gleichzeitig würde ich
> ungerne Daten aus der Datenbank löschen.
>
>
> Danke und Gruß
>
> Tilman
>
Mehr Informationen über die Mailingliste volkszaehler-users