Mqtt2 Demon not ok

Il semble que je ne sois pas le seul à avoir un probleme avec MQTT manager mais aujourd’hui cela ne fonctionne plus chez moi.
J’ai historiquement des anciens plugin MQTT (MQTT de Lunarok et jMQTT) pour lesquels je fonctionnais avec un mosquitto installé à la main.
Quand je suis passé au plugin ZWave JS, j’en ai profité pour aussi passer à MQTT Manager pour etre plus propre, que j’ai reussi à faire fonctionner avec mon Mosquitto en utilisant MQTT Manager en broker distant, configuré avec 127.0.0.1:1883.
J’ai voulu augmenter mon swap aujourd’hui (tentative de ne plus devoir manuellement changer le script d’install de zwaveJS qui ne fonctionne pas par defaut avec un RPI3 cf Dépendances : JS heap out of memory - Raspberry Pi 3)
Au reboot → plus de MQTT manager.
J’ai l’impression que Jeedom a cassé quelque chose sur mon RPI en lisant les logs de MQTT Manager

[2023-10-28 14:35:20]INFO : Démarrage du démon MQTT Manager : sudo  /usr/bin/node /var/www/html/plugins/mqtt2/resources/mqtt2d/mqtt2d.js --loglevel info --socketport 55035 --mqtt_server mqtt://127.0.0.1:1883 --username Jeedom --password xxx --callback http://127.0.0.1:80/plugins/mqtt2/core/php/jeeMqtt2.php --apikey xxx --cycle 0.3 --pid /tmp/jeedom/mqtt2/deamon.pid
[2023-10-28 17:08:32]INFO : Démarrage du démon MQTT Manager : sudo  /usr/bin/node /var/www/html/plugins/mqtt2/resources/mqtt2d/mqtt2d.js --loglevel info --socketport 55035 --mqtt_server mqtt://127.0.0.1:1883 --username Jeedom --password xxx --callback http://127.0.0.1:80/plugins/mqtt2/core/php/jeeMqtt2.php --apikey xxx --cycle 0.3 --pid /tmp/jeedom/mqtt2/deamon.pid
[2023-11-08 03:41:35]INFO : Démarrage du démon MQTT Manager : sudo  /usr/bin/node /var/www/html/plugins/mqtt2/resources/mqtt2d/mqtt2d.js --loglevel info --socketport 55035 --mqtt_server mqtt://127.0.0.1:1883 --username Jeedom --password xxx --callback http://127.0.0.1:80/plugins/mqtt2/core/php/jeeMqtt2.php --apikey xxx --cycle 0.3 --pid /tmp/jeedom/mqtt2/deamon.pid
[2023-11-13 03:43:19]INFO : Démarrage du démon MQTT Manager : sudo  /usr/bin/node /var/www/html/plugins/mqtt2/resources/mqtt2d/mqtt2d.js --loglevel info --socketport 55035 --mqtt_server mqtt://127.0.0.1:1883 --username Jeedom --password xxx --callback http://127.0.0.1:80/plugins/mqtt2/core/php/jeeMqtt2.php --apikey xxx --cycle 0.3 --pid /tmp/jeedom/mqtt2/deamon.pid
[2023-11-26 10:38:48]INFO : Démarrage du démon MQTT Manager : sudo  /usr/bin/node /var/www/html/plugins/mqtt2/resources/mqtt2d/mqtt2d.js --loglevel info --socketport 55035 --mqtt_server mqtt://127.0.0.1:1883 --username Jeedom --password xxx --callback http://127.0.0.1:80/plugins/mqtt2/core/php/jeeMqtt2.php --apikey xxx --cycle 0.3 --pid /tmp/jeedom/mqtt2/deamon.pid
[2023-12-18 23:59:39]INFO : Démarrage du démon MQTT Manager : sudo  /usr/bin/node /var/www/html/plugins/mqtt2/resources/mqtt2d/mqtt2d.js --loglevel info --socketport 55035 --mqtt_server mqtt://127.0.0.1:1883 --username Jeedom --password xxx --callback http://127.0.0.1:80/plugins/mqtt2/core/php/jeeMqtt2.php --apikey xxx --cycle 0.3 --pid /tmp/jeedom/mqtt2/deamon.pid
[2023-12-29 12:44:39]INFO : Démarrage du démon MQTT Manager : sudo  /usr/bin/node /var/www/html/plugins/mqtt2/resources/mqtt2d/mqtt2d.js --loglevel info --socketport 55035 --mqtt_server mqtt://127.0.0.1:1883 --username Jeedom --password xxx --callback http://127.0.0.1:80/plugins/mqtt2/core/php/jeeMqtt2.php --apikey xxx --cycle 0.3 --pid /tmp/jeedom/mqtt2/deamon.pid
[2023-12-29 13:04:40]INFO : Démarrage du démon MQTT Manager : sudo  /usr/bin/node /var/www/html/plugins/mqtt2/resources/mqtt2d/mqtt2d.js --loglevel info --socketport 55035 --mqtt_server mqtt://127.0.0.1:1883 --username Jeedom --password xxx --callback http://127.0.0.1:80/plugins/mqtt2/core/php/jeeMqtt2.php --apikey xxx --cycle 0.3 --pid /tmp/jeedom/mqtt2/deamon.pid
[2023-12-29 14:10:56]WARNING : Service mosquitto non lancé, je lance une installation
[2023-12-29 14:11:03]INFO : Démarrage du démon MQTT Manager : sudo  /usr/bin/node /var/www/html/plugins/mqtt2/resources/mqtt2d/mqtt2d.js --loglevel info --socketport 55035 --mqtt_server mqtts://127.0.0.1:8883 --client_key /var/www/html/plugins/mqtt2/data/ssl/client.key --client_crt /var/www/html/plugins/mqtt2/data/ssl/client.crt --ca /var/www/html/plugins/mqtt2/data/ssl/ca.crt --username  --password  --callback http://127.0.0.1:80/plugins/mqtt2/core/php/jeeMqtt2.php --apikey  --cycle 0.3 --pid /tmp/jeedom/mqtt2/deamon.pid
[2023-12-29 14:11:35]ERROR : Impossible de démarrer le démon MQTT Manager, vérifiez les logs
[2023-12-29 14:12:36]INFO : Démarrage du démon MQTT Manager : sudo  /usr/bin/node /var/www/html/plugins/mqtt2/resources/mqtt2d/mqtt2d.js --loglevel info --socketport 55035 --mqtt_server mqtt://127.0.0.1:1883 --username Jeedom --password xxx --callback http://127.0.0.1:80/plugins/mqtt2/core/php/jeeMqtt2.php --apikey xxx --cycle 0.3 --pid /tmp/jeedom/mqtt2/deamon.pid
[2023-12-29 14:15:14]INFO : Démarrage du démon MQTT Manager : sudo  /usr/bin/node /var/www/html/plugins/mqtt2/resources/mqtt2d/mqtt2d.js --loglevel info --socketport 55035 --mqtt_server mqtt://127.0.0.1:1883 --username Jeedom --password xxx --callback http://127.0.0.1:80/plugins/mqtt2/core/php/jeeMqtt2.php --apikey xxx --cycle 0.3 --pid /tmp/jeedom/mqtt2/deamon.pid
[2023-12-29 14:15:44]ERROR : Impossible de démarrer le démon MQTT Manager, vérifiez les logs

Ce qui me fait tiquer c’est le warning Service mosquitto non lancé, je lance une installation

Je suis completement coincé.

Ce que j’ai reussi à diagnostiquer – même si je ne suis pas expert en linux – c’est

  1. Ca fonctionne si je demarre mosquitto à la main
mosquitto -v
  1. Le service se lance en voulant utiliser
  • un autre mosquitto (/usr/sbin/mosquitto et pas /etc/mosquitto)
  • un autre fichier de config (/var/www/html/plugins/mqtt2/core/class/…/…/data/mosquitto.conf et pas /etc/mosquitto/conf.d)
sudo systemctl status mosquitto.service
● mosquitto.service - Mosquitto MQTT Broker
   Loaded: loaded (/lib/systemd/system/mosquitto.service; enabled; vendor preset: enabled)
   Active: activating (auto-restart) (Result: exit-code) since Fri 2023-12-29 19:29:37 CET; 7s ago
     Docs: man:mosquitto.conf(5)
           man:mosquitto(8)
  Process: 26521 ExecStartPre=/bin/mkdir -m 740 -p /var/log/mosquitto (code=exited, status=0/SUCCESS)
  Process: 26522 ExecStartPre=/bin/chown mosquitto /var/log/mosquitto (code=exited, status=0/SUCCESS)
  Process: 26523 ExecStartPre=/bin/mkdir -m 740 -p /run/mosquitto (code=exited, status=0/SUCCESS)
  Process: 26525 ExecStartPre=/bin/chown mosquitto /run/mosquitto (code=exited, status=0/SUCCESS)
  Process: 26527 ExecStart=/usr/sbin/mosquitto -c /var/www/html/plugins/mqtt2/core/class/../../data/mosquitto.conf (code=exited, status=1/FAILURE)
 Main PID: 26527 (code=exited, status=1/FAILURE)

Comment revenir dans un etat stable ?

Broker distant sur l’adresse de loopback ??
Je pense que tu devrais montrer ta config de chaque truc car a mon avis c’est pas optimum et source d’ennui

Bonjour,

Je ne comprends pas ce que vous demandez: si vous avez choisi d’installer mosquitto à la main et que ca ne fonctionne plus, on ne sait pas vous dire comment réparer.

D’ailleurs pourquoi tag mqtt2 ? Si vous n’installez pas mosquitto via ce plugin alors il n’y a rien à faire via ce plugin

J’ai taggué mqtt2 car il y a un faisceau d’indices qui pointent vers le plugin

  1. Le plugin a cherché à installer une installation de Mosquitto alors que je suis en broker distant et c’est justement a ce moment que ca s’est arrêté de fonctionner
  2. le service mosquitto essaye maintenant d’utiliser le fichier de config du repertoire du plugin mqtt2 d’apres « systemctl status mosquitto.service »

et donc que voulez-vous?
gérer mosquitto manuellement vous-même comme avant ou le gérer via le plugin?
si première option, on ne sait rien faire, nous, ici, c’était mon point.

si vous voulez gérer via le plugin:

  • configurez en mode broker local,
  • sauvegardez
  • cliquez sur « installer mosquitto »

J’aimerai conserver la 1ere option car je me sers de mosquitto pour communiquer avec une zipabox.
Mais certes vous ne pouvez rien en rapport avec la config de mon broker tant que le plugin n’a pas pollué cette config mais je souhaite quand même comprendre

  • pourquoi le plugin a lancé une installation de mosquitto (bug?)
  • pourquoi mon service mosquitto utilise un fichier de config du plugin jeedom (pollution par le plugin?)

Je pense que comprendre cela est la clé pour revenir à un état fonctionnel.

En tout cas merci de votre support.

C’est la connexion sécurisée qui pose problème ?

Je pense désinstalller le plugin des que j’ai 5 minutes pour voir ce qui se passe et ferais un retour.

Je suis retombé sur mes pattes en desinstallant/réinstallant le plugin. Merci @mips pour me decider ) partir sur une config avec broker local + installation native de mosquitto par jeedom. J’ai reussi à faire changer la config de ma zipabox (en fin de vie) avec le mot de passe mosquitto généré par jeedom et MQTT Manager recoit bien les messages emis par la zipabox. Tant pis si on ne saura pas ce qui s’est passé.
EDIT: J’ai quand meme vu que mon service jeedom tournait avec les parametres mosquitto qui s’affichent sur la droite quand on choisit broker local (mais invisible si on choisit broker distant) donc j’ai quand meme resolu ce mystere :slight_smile:
image

Pour info, si besoin, vous pouvez rajouter des lignes user:password dans la partie authentication.
Recliquez sur « reinstaller mosquitto » ensuite (après avoir sauvegardé) et vous aurez un autre set de credentials.

Ca peut être utile si le mot de passe d’origine est trop long par exemple

Jeedom utilisera toujours la première ligne, les suivantes c’est pour un usage extra

1 « J'aime »