Volkszähler unter Ubuntu auf Raspberry: Daten werden ausgelesen, landen aber nicht in der Datenbank/werden nicht angezeigt

  • Hi,


    vorab: ich bin nicht so ganz tief drin in Datenbanken/Middleware aufsetzen, bei Antworten bin ich sehr über Erklärungen dankbar.

    Mein Setup:

    Ich habe zwei ED300L Zähler (Wärmepumpe und Haushaltsstrom), an die ich je einen IR-Schreib-Lesekopf mit USB-Ausgang von Ardubel hier aus dem Forum angeschlossen habe (Danke nochmal!)

    Zum Auslesen habe ich Ubuntu 21.04 auf einem Raspberry Pi 4 Model B Rev 1.2 mit rpi-imager installiert, dann nur das Booten in die UI deaktiviert und dann anhand der Anleitung Volkszähler installiert (erst die cpp-version von vzlogger, dann die Middleware). Ich habe mich (hoffentlich) genau an die Anleitungen gehalten, aber irgendwie kann vzlogger nicht in die Datenbank schreiben.

    vzlogger kann die Werte auslesen:

    [Jun 11 11:52:47][mtr0] Reading: id=1-0:16.7.0*255/ObisIdentifier:1-0:16.7.0*255 value=38.80 ts=1623405167289

    Aber vzlogger.log schreibt auch folgende Fehlermeldung aus:

    Ich glaube, ich habe noch nicht ganz verstanden, wie Apache und PPM zusammenhängen und auf welchen Pots die laufen sollen (nimmt Apache die Anfrage vom vzlogger auf Port 80 entgegen und schreibt das in die Datenbank, die dann von PPM ausgelesen wird, das auf Port 8080 läuft und das Web-Frontend bereitstellt?).

    Die wichtigsten Konfig-Dateien habe ich mal angehängt.

    Danke schon mal für Eure Antworten!


    Edit: nach einigen Recherchen bin ich auf diesen Eintrag in der /var/log/apache2/error.log gestoßen:

    Fri Jun 11 13:17:27.525770 2021] [core:error] [pid 833:tid 281473511710976] [client 127.0.0.1:51680] AH00037: Symbolic link not allowed or link target not accessible: /var/www/volkszaehler.org

    Es gibt dazu einen Eintrag im Forum, aber die Lösungsvorschläge sind da nicht hilfreich (händisch Ordner kopieren) und in der /etc/apache2/apache2.conf steht schon

    Code
    <Directory /var/www/>
           Options Indexes FollowSymLinks
           AllowOverride All AuthConfig
           Require all granted
    </Directory>



  • ich habe noch nicht ganz verstanden, wie Apache und PPM zusammenhängen

    Apache macht nur Proxy und leitet was auf Port 80 ankommt nach Port 8080 weiter.

    Ob PPM korrekt arbeitet findet man heraus indem man direkt Port 8080 vom Browser aufruft.


    Edit: nach einigen Recherchen bin ich auf diesen Eintrag in der /var/log/apache2/error.log gestoßen:

    Fri Jun 11 13:17:27.525770 2021] [core:error] [pid 833:tid 281473511710976] [client 127.0.0.1:51680] AH00037: Symbolic link not allowed or link target not accessible: /var/www/volkszaehler.org

    Prüfe mal ob alle Verzeichnisse im Pfad das Flag x (ausführbar) haben und bessere bei Bedarf nach chmod +x /var/www/volkszaehler.org.


    Falls Apache unter einem andern User läuft als das Homeverzeichnis in das du VZ installiert hast könnte auch

    Code
    <Directory /var/www/>
        Options +FollowSymlinks -SymLinksIfOwnerMatch

    helfen.



    mfg JAU

    No Shift - No Service

  • Danke schon mal für die Tipps und die Erklärung!

    Wenn ich im Browser den Raspi mit Port 80 aufrufe gibt's ein 403 Forbidden von Apache. Port 8080 zeigt das Frontend, aber mit Fehlern.

    ls -la /var/www/volkszaehler.org gibt

    lrwxrwxrwx 1 root root 25 Jun 11 08:54 /var/www/volkszaehler.org -> /home/pi/volkszaehler.org

    Ich habe mal alle Dateien in /home/pi/volkszaehler.org ausführbar gemacht und die /etc/apache2/apache2.conf sieht wie folgt aus:

    Code
    <Directory /var/www/>
        Options Indexes +FollowSymLinks -SymLinksIfOwnerMatch
        AllowOverride All AuthConfig
        Require all granted
    </Directory>

    Das Errorlog von Apache zeigt zwar keine neuen Fehler, aber in der vzlogger.log gibt es immer noch

    Code
    [Jun 11 20:08:33][chn0] CURL: Received 32 bytes: 'Error 500: Internal Server Error'
    [Jun 11 20:08:33][chn0] CURL: Closing connection 21
    [Jun 11 20:08:33][chn0] CURL Error from middleware: unexpected character

    Hast Du noch eine Idee?


    Edit:

    Wenn ich http://192.168.178.111:8080/middleware.php aufrufe, kommt

    Code
    {"version":"0.3","exception":{"message":"Missing format","type":"Exception","code":0}}
  • Wenn ich im Browser den Raspi mit Port 80 aufrufe gibt's ein 403 Forbidden von Apache.

    Dann muss da auch in einem Log (Access) was dazu stehen.


    Port 8080 zeigt das Frontend, aber mit Fehlern.

    Und was für Fehler? Solche Ratespielchen mag ich garnicht.

    Ich habe mal alle Dateien in /home/pi/volkszaehler.org ausführbar gemacht

    Ich hab eigentlich Verzeichnisse gesagt, nicht Dateien. Wichtig ist dabei wohl das auch /home/pi/volkszaehler.org ausfühbar ist.


    die /etc/apache2/apache2.conf sieht wie folgt aus:

    Ist denn der Umstand das unterschiedliche Nutzer verwendet werden gegeben?


    Das ist kein gültige Anfrage an die Middleware.

    http://demo.volkszaehler.org/m…apabilities/database.json? oder http://demo.volkszaehler.org/m…3d-11eb-bd60-55414bacba75 wären korrekt.



    mfg JAU

    No Shift - No Service