errorCode 6 Plugin introuvable

Bonjour,

Depuis un certain temps, j’ai une tonne de message d’erreur (lié au plugin MQTT discovery à priori), environ 500 messages par jours.

{"jsonrpc":"2.0","id":147,"method":"healthCounters","errorCode":6,"error":"Exception Error : Exception: Plugin introuvable : MQTTDiscovery in \/var\/www\/html\/core\/class\/plugin.class.php:72\nStack trace:\n#0 \/var\/www\/html\/plugins\/jeemate\/core\/class\/api\/APIJeedom.class.php(62): plugin::byId('MQTTDiscovery')\n#1 \/var\/www\/html\/plugins\/jeemate\/core\/api\/jeemate.api.php(230): jeemate\\API\\APIJeedom::healthCounters()\n#2 {main}"}

Comment procéder pour éviter celà?

Modèle : Google Pixel 6
Système d'exploitation : Android 15 SDK 35
Kernel : Linux aarch64
Application : Store-2.5.2+447111
Plugin : stable (2025-04-18 12:20:05)
Jeedom : 4.4.19
Dernière communication : 2025-04-28 16:19:16
Premium : Activé
DNS : Activé

Salut,

Tu possèdes le plugin Mqttdiscovery ? Il est bien actif ?
Quel est son id ?

Salut,

Non le plugin n’est plus installé, je l’avais juste testé.

Ok, donc il reste des traces de ce plugin sur ton Jeedom car le plugin JeeMate ne fait qu’interroger la fonction update de Jeedom.

Teste un scénario bloc code avec ceci :

$updateList = update::all();
	foreach ($updateList as $update) {
		$result = [
            "name" => $update->getName(),
            "type" => $update->getType(),
            "status" => $update->getStatus()
            ];
		$scenario->setLog(json_encode($result));
	}

Et post une capture du log , tu devrais y voir une ligne avec ton plugin MQTTdiscovery.

je montre aussi mon bout de code :

		$updateList = update::all();
		foreach ($updateList as $update) {
			if (($update->getType() == 'core') && ($update->getStatus() == 'update')) {
				$coreUpdate++;
			} elseif (($update->getType() == 'plugin') && ($update->getStatus() == 'update')) {
				$pluginId = $update->getLogicalId();
				$test = plugin::byId($pluginId);
				if ((isset($test)) && ($test->isActive() == TRUE) && ($update->getConfiguration('doNotUpdate') != '1')) {
					$pluginUpdate++;
				}
			}
		}

Donc dans ton cas c’est plugin::byId($pluginId) qui plante, normal si le plugin n’existe plus, mais pas normal que la fonction update::all renvoie l’id du plugin dans la liste.

Peux etre faire un nettoyage de la base de données :

Log après lancement du scénario :

] - Exécution du sous-élément de type [action] : code
[2025-04-30 10:12:08][SCENARIO] Exécution d'un bloc code
[2025-04-30 10:12:08][SCENARIO] {"name":"alexaapi","type":"plugin","status":"update"}
[2025-04-30 10:12:08][SCENARIO] {"name":"harmonyhub","type":"plugin","status":"update"}
[2025-04-30 10:12:08][SCENARIO] {"name":"homebridge","type":"plugin","status":"update"}
[2025-04-30 10:12:08][SCENARIO] {"name":"JeedomConnect","type":"plugin","status":"update"}
[2025-04-30 10:12:08][SCENARIO] {"name":"jeemate","type":"plugin","status":"update"}
[2025-04-30 10:12:08][SCENARIO] {"name":"meteofrance","type":"plugin","status":"update"}
[2025-04-30 10:12:08][SCENARIO] {"name":"Monitoring","type":"plugin","status":"update"}
[2025-04-30 10:12:08][SCENARIO] {"name":"mqtt2","type":"plugin","status":"update"}
[2025-04-30 10:12:08][SCENARIO] {"name":"MQTTDiscovery","type":"plugin","status":"update"}
[2025-04-30 10:12:08][SCENARIO] {"name":"openenocean","type":"plugin","status":"update"}
[2025-04-30 10:12:08][SCENARIO] {"name":"rfxcom","type":"plugin","status":"update"}
[2025-04-30 10:12:08][SCENARIO] {"name":"speedtestByOokla","type":"plugin","status":"update"}
[2025-04-30 10:12:08][SCENARIO] {"name":"z2m","type":"plugin","status":"update"}
[2025-04-30 10:12:08][SCENARIO] {"name":"zwavejs","type":"plugin","status":"update"}
[2025-04-30 10:12:08][SCENARIO] {"name":"jeedom","type":"core","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"airsend","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"ajaxSystem","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"alarm","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"apcups","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"ash","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"atlas","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"blea","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"calendar","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"camera","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"clink","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"Clock","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"conso","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"consoWidget","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"delestage","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"dialogflow","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"eibd","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"enedis","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"fullyKiosK","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"gcast","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"googlecast","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"groupe","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"gsh","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"heliotrope","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"HomeAssistantConnect","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"horlogehtc","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"htmldisplay","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"humidity","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"jeeasy","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"jeelink","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"jeelog","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"jMQTT","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"lightmanager","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"loxone","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"mail","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"mobile","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"mode","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"monitoring2","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"namesoftheday","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"netatmo","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"networks","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"notificationmanager","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"nut","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"octoprint","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"openvpn","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"orvibo","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"philipsHue","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"pimpJeedom","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"reolink","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"rteEcowatt","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"scan_ip","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"script","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"simupre","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"spotifyconnect","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"squeezeboxcontrol","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"Telejee","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"thermoAlternateView","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"thermostat","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"virtual","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"weather","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"wifilightV2","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"xiaomihome","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] {"name":"zigbee","type":"plugin","status":"ok"}
[2025-04-30 10:12:08][SCENARIO] Fin correcte du scénario

Je ne vois pas MQTT discovery…
j’ai lancé le nettoyage de la bdd, c’est en cours

Salut,

Il est bien présent :
2025-04-30 10:12:08][SCENARIO] {« name »:« MQTTDiscovery »,« type »:« plugin »,« status »:« update »}

En effet, pas logique de le retrouver dans la liste mais sinon, peut-être ajouter un try catch pour éviter les logs à répétition de l’erreur dans ce cas (même si c’est mettre sous le tapis un problème côté Jeedom :wink:)

Oui, c’est ce que je vais faire mais on met des patchs pour des erreurs qui ne devrait pas exister.

En effet je croyais que c’était rangé par ordre alphabétique…
Je ne comprends pas tout… je vous laisses voir.

Pas d’amélioration après nettoyage bdd ?

Après redémarrage Jeedom ?

Dans la liste, c’est le seul que tu as désinstallé et qui est toujours présent ?

Sur la page des mise a jour il nest pas présent ?

Plus de messages d’erreur depuis le nettoyage de la bdd.
Ca doit être OK.

Ce matin, je vois que les messages d’erreur sont de retour

J’ai fait une correction dans le plugin pour ne plus avoir de plantage, mais tu auras quand même un log, ce sera dispo dans la matinée.

Tu as un souci sur ton Jeedom avec le plugin-mqttdiscovery, JeeMate ne fait que mettre le doigt dessus.

Ok, merci pour ton retour

Si seulement il n’y avait que çà comme problème… :unamused:

Je serai toi j’ouvrirai un post / bug sur le core Jeedom afin de savoir pourquoi il reste des traces d’un plugin désinstallé dans update->all()

Ce sujet a été automatiquement fermé après 24 heures suivant le dernier commentaire. Aucune réponse n’est permise dorénavant.