jMQTT nouveau démon en BETA

J’ai finalisé hier l’intégration du nouveau daemon sur la branche new_daemon :tada:
Je recherche donc des testeurs afin de la vérifier.

EDIT : la branche new_daemon a été mergé dans beta

7 « J'aime »

Si tu me dits comment tester (juste installer et vérifier que ce qui marchait fonctionne ?) je le charge. Peut être me rappeler comment charger la version « new_daemon » ? Sinon, si je cherche, je pense que je vais trouver :smiley:
Edit, j’ai trouvé, ça se passe ici : https://github.com/Domochip/jMQTT/tree/new_daemon

effectivement
image

1 « J'aime »

Installé à l’instant, mes valeurs remontent bien ! :grinning:.
Je te dirai si je vois des instabilités.

Par contre après installation j’avais encore la tache cron php de l’ancienne version qui tournait. J’ai désactivé le plugin puis réactivé et c’est bon elle à disparu.

edit : ça devrait résoudre mon problème de fuite mémoire ! Chaque remontée, c’est lorsque je redémarrais jMQTT

Dans le log j’ai le message :

2021-04-27 15:42:48 jMQTT Received message is not a correct JSON!? : {"cmd":"messageIn","topic":"PRM100/xxxxxxxxxxxx/commandIn","payload":"{"cmd":1}","qos":0,"retain":0}

Une idée pour résoudre ce problème ?

Voilà, installé. Il a juste fallu que je relance l’installation des dépendances.
Pas de message d’erreur dans les logs.
Les données remontent.
« Jusqu’ici tout va bien » :smiley:

Ah oui, celui-là il est gros. Je le corrige dans 10 minutes.

Edit : C’est corrigé

@alexp Ca m’interesse carrément de savoir si ca résoud ton problème de fuite mémoire.
Sur Github, @pirracas77 nous a remonté un problème CPU aussi.

Des news ?

1 « J'aime »

C’est bon plus de problèmes ! Merci @Domochip :grinning:

Nouvelle version rechargée…
RAS.

Sur la version new_daemon , je trouve que la consommation CPU de jmqttd.php est anormalement haute (24% ici)…

Est-il possible d’améliorer ce point ou bien cela est normal ?

Je ne peux pas démarrer le démon avec la branche new_daemon

[2021-04-28 12:28:38][ERROR] : Id 126 : WebSocket client encountered an Error!
[2021-04-28 12:28:38][INFO] : Id 126 : Disconnected from Jeedom
Error en la función daemon_start del plugin :Le port du démon python (55666) est déjà utilisé par le pid 28933 : python3 /var/www/html/plugins/jMQTT/resources/jmqttd/jmqttd.py --plugin jMQTT --loglevel debug --socketport 55666 --apikey XXXXXXXXXXXXXXXXXXXX --pid /tmp/jeedom/jMQTT/jmqttd.py.pid

As-tu recontré ce problème immédiatement après la mise à jour?

Oui, je n’ai pas pu démarrer le démon dès le premier instant.

Il me faudrait les logs pour identifier l’enchainement. Je pense que 2 process python ont été lancés en même temps et du coup, j’ai perdu la trace de l’un d’entre-eux dans le fichier pid

Le daemon plante lorsque j’envoie une commande sur un de mes équipement : [ERROR] : Fatal error : can only concatenate str (not "int") to str

Le virtuel (c’est une liste) :

La commande dans jmqtt :

Log complet
[2021-04-28 13:24:01][INFO] : Id 74 : Sending message to Jeedom {"cmd": "messageIn", "topic": "homie/zehnderq350/controls/bypass-off", "payload": "572251", "qos": 1, "retain": 0}
[2021-04-28 13:24:02][DEBUG] : Client connected to [127.0.0.1:46144]
[2021-04-28 13:24:02][DEBUG] : Message read from socket: b'{"cmd":"messageOut","id":"74","topic":"homie\/zehnderq350\/controls\/fan-mode\/set","payload":2,"qos":1,"retain":"0","apikey":"xxxxxxxxxxxxxxxxxxxxxxxxxxxxx"}'
[2021-04-28 13:24:02][DEBUG] : Client disconnected from [127.0.0.1:46144]
[2021-04-28 13:24:02][DEBUG] : jeedom_socket received message : {"cmd":"messageOut","id":"74","topic":"homie\/zehnderq350\/controls\/fan-mode\/set","payload":2,"qos":1,"retain":"0","apikey":"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"}
[2021-04-28 13:24:02][ERROR] : Fatal error : can only concatenate str (not "int") to str
[2021-04-28 13:24:02][DEBUG] : Shutdown
[2021-04-28 13:24:02][INFO] : Id 74 : message received (topic="homie/zehnderq350/controls/fan-mode/set", payload="2", QoS=1, retain=0)
[2021-04-28 13:24:02][INFO] : Id 74 : Sending message to Jeedom {"cmd": "messageIn", "topic": "homie/zehnderq350/controls/fan-mode/set", "payload": "2", "qos": 1, "retain": 0}
[2021-04-28 13:24:02][INFO] : Id 74 : message received (topic="homie/zehnderq350/controls/fan-mode", payload="2", QoS=1, retain=0)
[2021-04-28 13:24:02][INFO] : Id 74 : Sending message to Jeedom {"cmd": "messageIn", "topic": "homie/zehnderq350/controls/fan-mode", "payload": "2", "qos": 1, "retain": 0}
[2021-04-28 13:24:02][INFO] : Id 74 : message received (topic="homie/zehnderq350/sensors/fan-exhaust-speed", payload="1978", QoS=1, retain=0)
[2021-04-28 13:24:02][INFO] : Id 74 : Sending message to Jeedom {"cmd": "messageIn", "topic": "homie/zehnderq350/sensors/fan-exhaust-speed", "payload": "1978", "qos": 1, "retain": 0}
[2021-04-28 13:24:02][INFO] : Id 74 : message received (topic="homie/zehnderq350/sensors/fan-supply-speed", payload="2179", QoS=1, retain=0)
[2021-04-28 13:24:02][INFO] : Id 74 : Sending message to Jeedom {"cmd": "messageIn", "topic": "homie/zehnderq350/sensors/fan-supply-speed", "payload": "2179", "qos": 1, "retain": 0}
[2021-04-28 13:24:02][INFO] : Id 74 : message received (topic="homie/zehnderq350/sensors/fan-exhaust-flow", payload="251", QoS=1, retain=0)
[2021-04-28 13:24:02][INFO] : Id 74 : Sending message to Jeedom {"cmd": "messageIn", "topic": "homie/zehnderq350/sensors/fan-exhaust-flow", "payload": "251", "qos": 1, "retain": 0}
[2021-04-28 13:24:02][INFO] : Id 74 : message received (topic="homie/zehnderq350/sensors/bypass-end-date", payload="2021-05-05T04:21:32.0", QoS=1, retain=0)
[2021-04-28 13:24:02][INFO] : Id 74 : message received (topic="homie/zehnderq350/sensors/bypass-timer", payload="572250", QoS=1, retain=0)
[2021-04-28 13:24:02][INFO] : Id 74 : message received (topic="homie/zehnderq350/controls/bypass-on", payload="0", QoS=1, retain=0)
[2021-04-28 13:24:02][INFO] : Id 74 : Sending message to Jeedom {"cmd": "messageIn", "topic": "homie/zehnderq350/sensors/bypass-end-date", "payload": "2021-05-05T04:21:32.0", "qos": 1, "retain": 0}
[2021-04-28 13:24:02][INFO] : Id 74 : Sending message to Jeedom {"cmd": "messageIn", "topic": "homie/zehnderq350/sensors/bypass-timer", "payload": "572250", "qos": 1, "retain": 0}
[2021-04-28 13:24:02][INFO] : Id 74 : message received (topic="homie/zehnderq350/controls/bypass-off", payload="572250", QoS=1, retain=0)
[2021-04-28 13:24:02][INFO] : Id 74 : Sending message to Jeedom {"cmd": "messageIn", "topic": "homie/zehnderq350/controls/bypass-on", "payload": "0", "qos": 1, "retain": 0}
[2021-04-28 13:24:02][INFO] : Id 74 : Sending message to Jeedom {"cmd": "messageIn", "topic": "homie/zehnderq350/controls/bypass-off", "payload": "572250", "qos": 1, "retain": 0}
[2021-04-28 13:24:02][DEBUG] : LoopNetServer Thread stopped
[2021-04-28 13:24:02][INFO] : Id 74 : Disconnected from broker.
[2021-04-28 13:24:02][INFO] : Id 74 : Sending message to Jeedom {"cmd":"connection","state":false}
[2021-04-28 13:24:02][INFO] : Id 74 : Disconnected from Jeedom
[2021-04-28 13:24:02][DEBUG] : Removing PID file /tmp/jeedom/jMQTT/jmqttd.py.pid
[2021-04-28 13:24:02][DEBUG] : Exit 0

Bonjour, je vais splitter le sujet, pour avoir un thème jMQTT nouveau démon en BETA

2 « J'aime »

@alexp C’est corrigé

1 « J'aime »

C’est bon, ta correction fonctionne ! Merci pour ton extrême réactivité :grinning: