MQTT Gateway wird nach restart gleich wieder beendet

Einklappen
X
 
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge
  • chris.s
    Extension Master
    • 24.05.2016
    • 106

    #1

    MQTT Gateway wird nach restart gleich wieder beendet

    Hallo,
    ich hab Loxberry 3.0.1.3 komplett neu installiert (mehrmals).
    Ich möchte mit dem MQTT Gateway Wetterdaten aus Weather 4Loxone per http an meinen Miniserver V1 übertragen.

    Der mqtt Gateway läuft erst mal, sobald aber unter Gateway Settings ein Receiving Miniserver angegeben wurde
    und der Gateway neu gestartet wird, beendet er sich nach 1-2 Sekunden wieder.

    Wenn ich in der general.json Datei den Miniserver wieder lösche, kann ich den MQTT Gateway wieder starten und läuft auch weiter.

    Mosquitto läuft laut Anzeige immer.

    In den Logs kann ich nichts finden was mir weiterhilft.
  • Prof.Mobilux
    Supermoderator
    • 25.08.2015
    • 5372

    #2
    Vielleicht können uns die Logs ja helfen? Man weiß es nicht.... Vielleicht können uns die Screenshots von Deinen Einstellungen weiterhelfen? Vielleicht.

    Was feststeht: Mit einer Fehlermeldung: "Geht nicht" wird Dir wohl niemand wirklich helfen können....
    🇺🇦 Hilfe für die Menschen der Ukraine: https://www.loxforum.com/forum/proje...Cr-die-ukraine


    LoxBerry - Beyond the Limits

    Kommentar

    • chris.s
      Extension Master
      • 24.05.2016
      • 106

      #3
      Sorry, da hast Du natürlich recht - hier weitere Infos:

      mqttgateway.log im Anhang
      mosquitto.log im Anhang

      Im /system_tmpfs/apache2/error.log finde ich nach dem mqtt restart noch folgendes:
      6.2026 09:53:08 TASK STARTED
      Updating MQTT configuration
      INFO: LoxBerry Version 3.0.1.3 ( is_hwmodel_RPi_3_Model_B_armv7l.cfg is_arch_armv7l.cfg )
      INFO: Loglevel: 7
      open_configs
      mosquitto_restart
      restart_gateway
      Can't call method "write" on an undefined value at /opt/loxberry/sbin/mqtt-handler.pl line 353.
      END failed--call queue aborted.
      pgrep: pattern that searches for process name longer than 15 characters will result in zero matches
      Try `pgrep -f' option to match against the complete command line.

      Christian Fenzls Lösung hab ich schon ausprobiert:
      https://www.loxforum.com/forum/proje...ht-gespeichert


      Meine mqttgateway.json sieht so aus:

      {
      "Main": {
      "convert_booleans": true,
      "cpuperf": "5",
      "expand_json": true,
      "msno": "1",
      "pollms": 30.1011282540877,
      "resetaftersendms": "13",
      "toMS_delimiter": "|",
      "udpport": "11883",
      "use_http": true,
      "use_udp": false
      },
      "subscriptions": [
      {
      "id": "w4l/#",
      "toMS": []
      }
      ]
      }

      Der Health Ceck spuckt noch folgendes aus:
      05.06.2026 08:01: Healthcheck reports 1 errors. Please run Healthcheck for details.
      Current errors:
      MQTT Gateway not running (no PID). Last known status: MQTT Server state: Connected and subscribed to MQTT Server. Config state: Configfile present. UDP-IN state: UDP-IN socket connected. Your keepaliveepoch is older than 5 minutes and seems not to be refreshed.​​

      Alle anderen Einstellung sind absolut Standard - wie gesagt neu installiert.

      Die Miniserver ist über das Terminal des Loxberry erreichbar - mit curl kann ich auch über http Werte setzen.

      Einen Fehler habe ich noch im Weather4Lox Plugin:

      04.06.2026 22:27:53 TASK STARTED
      Weather4Lox Wetter Online GRABBER process started
      INFO: LoxBerry Version 3.0.1.3 ( is_hwmodel_RPi_3_Model_B_armv7l.cfg is_arch_armv7l.cfg )
      INFO: Weather 4 Loxone Version 4.15.0.14
      INFO: Loglevel: 7
      This is /opt/loxberry/bin/plugins/weather4lox/grabber_wetteronline.pl Version 4.15.0.14
      Using timezone: Europe/Berlin, current local system time is 2026-06-04T22:27:53
      CRITICAL: Missing Perl module Math::Function::Interpolator - cannot continue. You may reinstall the plugin or manually try to install the missing module via 'cpanm Math::Function::Interpolator' as root.
      CRITICAL: Can't locate Math/Function/Interpolator.pm in @INC (you may need to install the Math::Function::Interpolator module) (@INC entries checked: /opt/loxberry/libs/perllib /etc/perl /usr/local/lib/arm-linux-gnueabihf/perl/5.40.1 /usr/local/share/perl/5.40.1 /usr/lib/arm-linux-gnueabihf/perl5/5.40 /usr/share/perl5 /usr/lib/arm-linux-gnueabihf/perl-base /usr/lib/arm-linux-gnueabihf/perl/5.40 /usr/share/perl/5.40 /usr/local/lib/site_perl) at (eval 308) line 1.
      04.06.2026 22:27:53 TASK FINISHED





      Angehängte Dateien

      Kommentar

      • Prof.Mobilux
        Supermoderator
        • 25.08.2015
        • 5372

        #4
        Funktioniert die Verbindung zum Miniserver (im Miniserver Widget mal auf Test klicken, ob er Admin Rechte hat)? Und der dort angegebene User kann auch auf die VIs des Miniservers schreiben?

        Geht die Namensauflösung noch? Das W4L Plugin hat aktuell einen Bug und zerschiesst die DNS-Konfiguration des LoxBerry. Wenn Du anstatt der IP den Hostnamen für Deinen Miniserver angegeben hast, wird er diesen nicht finden.
        🇺🇦 Hilfe für die Menschen der Ukraine: https://www.loxforum.com/forum/proje...Cr-die-ukraine


        LoxBerry - Beyond the Limits

        Kommentar

        • chris.s
          Extension Master
          • 24.05.2016
          • 106

          #5
          Verbindung Funktioniert - ich hab mal für den Anfang den Adminuser genommen, der sollte doch hoffentlich alle Rechte haben.
          Die Namensauflösung geht da ich W4L V4.15.0.14 installiert habe.

          In der Miniserverkonfiguration hab ich die IP-Adresse eingetragen.

          Muss ich am Miniserver irgendetwas konfigurieren? Ich bin ein bissl ratlos.




          Kommentar

          • chris.s
            Extension Master
            • 24.05.2016
            • 106

            #6
            Ich hab bisher zum Testen nur einen virtuellen Texteingang loxberry_mqttgateway_keepaliveepoch konfiguriert.

            Kommentar

            • Prof.Mobilux
              Supermoderator
              • 25.08.2015
              • 5372

              #7
              Nein, am Miniserver ist nichts zu machen - zumindest nichts, was das Gateway beeinflussen sollte. Ich verstehe es auch nicht so ganz, gestern um 22 Uhr funktionierte ja alles nach Deinem Log (halt nur ohne konfigurierten Miniserver, was er dann auch erkannt hat).

              Hatte ich noch nie so ein Thema.
              🇺🇦 Hilfe für die Menschen der Ukraine: https://www.loxforum.com/forum/proje...Cr-die-ukraine


              LoxBerry - Beyond the Limits

              Kommentar

              • Jan W.
                Lox Guru
                • 30.08.2015
                • 1573

                #8
                chris.s: ich habe zufällig in diesen Beitrag geschaut und wg. der Fehlermeldungen vom weather4lox bin ich aufmerksam geworden:

                die 'CRITICAL' Meldungen deuten darauf hin, dass das benötige Perl Modul nicht während der Installation des Weather4Lox Plugins installiert wurde. Ohne das Modul funktioniert der Grabber für WetterOnline nicht. Dann kann der natürlich auch keine Werte via MQTT an den MS senden. Folgefehler nach solchen kritischen Meldungen sind nicht auszuschließen, d.h. das System läuft nicht richtig.

                Mit v4.15.0.14 sollte das Problem mit der nicht funktionierenden DNS Namensauflösung hoffentlich behoben sein. Vielleicht gibt es aber ein anderes Problem?

                annst Du bitte das Installation-Log vom Plugin posten? Über die Plugin-Verwaltung ist das erreichbar.

                Vielleicht auf der Shell als root das fehlende Modul manuell installieren und auftretende Fehlermeldungen ebenfalls posten.

                Code:
                loxberry# cpanm Math::Function::Interpolator
                Vor kurzem hatte ich DietPI auf einem rPI 5 mit Trixie neu aufgesetzt und dann den Loxberry über das aktuelle Skript v3.0.1.3 installiert. Außer dem DNS Problem, hat alles funktioniert.

                zu der Fehlermeldung mit MQTT: die Meldung "Can't call method "write" on an undefined value at /opt/loxberry/sbin/mqtt-handler.pl line 353." deutet für mich darauf hin, dass in dem 'END' Block, wo der Befehl $mqttobj->write(); steht, die Variable undefiniert ist und das Skript daher vorzeitig beendet wird.

                Prof.Mobilux: ich sehe zwar keinen Fehler in der Loxberry GUI und ein manueller Restart des MQTT Gateways funktioniert bei mir, aber der 'END' Block scheint nicht bis zum Ende ausgeführt zu werden. Zum Testen hatte ich am Anfang und Ende des o.a. Perl Skriptes eine 'LOGDEB' Meldung ergänzt und ich sehe nur die Erste.

                Das Apache Log, welches ich nur über die linux shell sehen kann, zeigt die gleiche Fehlermeldung, wie in # 3.

                In der GUI sehe ich:
                Software error - Cannot open file: Permission denied at /opt/loxberry/webfrontend/htmlauth/system/tools/logfile.cgi line 232.vDepending of what you have done, report this error to the plugin developer or the LoxBerry-Core team. Further information you may find in the error logs.

                Am Rande: Es gibt 2 unterschiedliche 'MQTT' Packages für Logs: MQTT und Mqtt (Letzteres wird vom mqtt-handler.pl verwendet). Das ist kein wirklicher Fehler, aber verwirrt.

                Zusammenfassend würde ich sagen, dass es zwar ein kleines Problem mit dem mqtt-handler.pl gibt, aber das bei mir auch vorhanden ist und keine Auswirkungen hat. Das Problem mit dem Anzeigen des Apache Logs im Log-Manager der GUI, ist ebenfalls getrennt zu betrachten und nicht die Ursache für die Probleme.

                Letzte Frage: Wie hast Du den MS im Loxberry konfiguriert?
                Miniserver v14.5.12.7, 2x Ext., 2x Relay Ext., 2x Dimmer Ext., DMX Ext., 1-Wire Ext., Gira KNX Tastsensor 3 Komfort, Gira KNX Präsenzmelder, Fenster- und Türkontakte, Loxone Regen- und Windsensor, Gira Dual Q Rauchmelder vernetzt, 1x Relais-Modul
                Loxberry: SmartMeter, MS Backup, CamConnect, Weather4Lox
                Lüftung: Helios KWL EC 370W ET mit Modbus TCP - via Pico-C
                Heizung: Stiebel Eltron WPF 5 cool (Sole-Wasser WP) mit ISG, FB-Heizung mit 18 Kreisen, Erdsonde - via modbus/TCP
                Node-RED: IKEA Tradfri

                Kommentar

                • chris.s
                  Extension Master
                  • 24.05.2016
                  • 106

                  #9
                  Hallo Jan,
                  das perl Modul habe ich nachinstalliert - die Fehlermeldung kommt nicht mehr.
                  Mein MQTT Problem hat das aber wohl leider nicht gelöst.

                  Anbei Bild meiner Miniserver Konfiguration - Benutzername und Passwort sind natürlich drin.
                  Prüfung ist positiv.

                  Angehängte Dateien

                  Kommentar

                  • chris.s
                    Extension Master
                    • 24.05.2016
                    • 106

                    #10
                    Ich hab jetzt noch etwas rumprobiert:

                    Wenn ich in der Miniserverkonfiguration keine IP-Adresse sondern den Hostnamen MS02 eintrage, dann läuft der MQTT Gateway weiter.
                    Allerdings werden keine Werte übertragen - da der loxberry den Hostnamen wahrscheinlich nicht auflösen kann (meine DNS Konfiguration hier ist etwas kompliziert)

                    Gleiches wenn ich einfach irgendeinen nicht existierenden Hostnamen eintrage.

                    Gibt es grundsätzlich ein Problem wenn die IP-Adresse eingetragen ist?
                    Oder wenn der Miniserver tatsächlich erreicht werden kann?

                    Habe jetzt den ms02 einfach in die /etc/hosts Datei eingetragen
                    Ip kann jetzt vom loxberry aufgelöst und erreicht werden - siehe da der mqtt Gateway beendet sich wieder.

                    Zuletzt geändert von chris.s; vor 16 Minuten.

                    Kommentar

                    • Jan W.
                      Lox Guru
                      • 30.08.2015
                      • 1573

                      #11
                      chris.s: ich habe eine ähnliche config für MS mit IP-Adresse.

                      Kannst Du bitte noch das Install-Log vom Plugin schicken?

                      Sind bei Dir neben dem Grabber für WetterOnline noch weitere aktiv?
                      Miniserver v14.5.12.7, 2x Ext., 2x Relay Ext., 2x Dimmer Ext., DMX Ext., 1-Wire Ext., Gira KNX Tastsensor 3 Komfort, Gira KNX Präsenzmelder, Fenster- und Türkontakte, Loxone Regen- und Windsensor, Gira Dual Q Rauchmelder vernetzt, 1x Relais-Modul
                      Loxberry: SmartMeter, MS Backup, CamConnect, Weather4Lox
                      Lüftung: Helios KWL EC 370W ET mit Modbus TCP - via Pico-C
                      Heizung: Stiebel Eltron WPF 5 cool (Sole-Wasser WP) mit ISG, FB-Heizung mit 18 Kreisen, Erdsonde - via modbus/TCP
                      Node-RED: IKEA Tradfri

                      Kommentar

                      Lädt...