Suggestion : commande info healthcheck dans le status container

Salut,

J’utilise ce plugin car j’ai dockerisé zigbee2mqtt et le broker mosquitto, entre autres
Ca me permet en particulier de surveiller la fonction health de ces deux bidules, et aussi de basculer facilement entre les versions latest et latest-dev de z2m

Pour zigbee2mqtt, je le laisse là pour info, en gros ca test si le frontend est accessible. je ne suis pas dev j’ai rien inventé : trouvé sur internet et ca me va

    healthcheck:
      test: "wget --no-verbose --tries=1 --header 'Host: _myhost.com_' --spider http://192.168.1.48:8080 || exit 1"
      start_period: 20s
      interval: 30s
      retries: 5
      timeout: 5s

Donc voila, comme ca fait presque 1 an que le plugin n’a pas eu de mis a jour sur le market :slight_smile: , ca me serai utile si l’état du container pouvait retourner healthy et unhealthy et running le cas échéant, dans la mesure du possible si c’est pas trop galère à récupérer.

Sinon merci pour ce plugin, il marche très bien

Bonjour,

Le plugin renvoie déjà si c’est running ou pas, je ne comprend pas pq vous dites que c’est pas le cas.

Pour le healthcheck, ca dépend: est-ce quelque chose d’accessible dans le frontend de portainer? Le plugin utilise portainer et donc je n’implementerai aucun check qui n’y est pas.

Désolé si je me suis mal exprimé :
renvoyer healthy et unhealthy si la fonction healthcheck est activée
et le cas echéant (pas d’healthcheck) : running et exited - qui existe déjà, ça c’est sûr !

C’est bien dans le frontend de portainer :

Edit : quand portainer est « healthy », la commande info du status d’état du plugin retourne « running »
Et j’ai vu que le endpoint du plugin revoyait le nombre de container « sain », mais sans avoir le détail, ce qui m’intéresse pour envoyer un message en cas de problème ou pour relancer le container concerné

Ok j’essaie de regarder plus en détail la semaine prochaine; pas trop le temps ce week-end

Ok merci :slight_smile:

version beta à tester :wink:

Cool merci c’est rapide, je suis en déplacement cette semaine j’essaie de regarder ça ce soir

Bonsoir,
C’est bon j’ai la nouvelle commande info statut santé !

A tester voir ce que le plugin me dit en cas de défaillance, je surveille mosquitto qui a tendance à fatiguer tous les 2 jours, sans planter mais passe en « unheathly » dans portainer.

En subsidiaire s’il est possible rajouter une colonne « santé » dans le module santé portainer, je pense ça complèterai bien la fonction

Après, ca me va ce week end j’ai trouvé un petit docker autoheal qui s’occupe de surveiller les autres container et qui fait aussi le job en auto

Merci

Bonne idée, je note

Ca sera en beta demain

Bonsoir,
Je viens de rentrer de déplacement, pas trop eu le temps.

Ca a l’air de bien marcher :slight_smile:

J’aurais plus de temps ce weekend pour tester

Bonjour,

J’ai surveillé un peu le plugin, pas vu de trucs bizarres (genres statuts qui ne s’actualisent pas, commandes qui ne fonctionnent pas)

Le seul truc c’est dans le « santé » du plugin, en 2 images au même moment pour résumer (plugin / portainer)

Capture16


ici portainer n’a pas de healthcheck, mosquitto est fatigué et autoheal est stop

C’est pas gênant dans les commandes info des containers car on a 2 statuts (état et santé) donc on peut faire des doubles conditions dans les scénarios, mais pour l’aperçu rapide c’est quand même plus clair dans portainer que dans le plugin.

Je ne comprends pas le point; ce sont les couleurs?

Car « le même moment » ne garantit pas forcément d’avoir « les mêmes infos ».
Si le plugin n’a pas encore refresh il a toujours les anciens statuts; ce qui semble être le cas ici vu les couleurs utilisées car pour l’instant les couleurs changent en fonction du statut et pas de l’état santé.

Donc

  • je dois changer pour que dans tous les cas la couleur corresponde au texte
  • quid d’afficher les 2 valeurs au lieu d’une?
  • ou avoir plus de logique pour savoir quelle valeur afficher entre le statut et la santé? Pour le moment santé s’affiche si not None.
    Par exemple un « exited » devrait toujours être afficher car le « unhealthy » n’est pas relevant? Si coup je dois faire un peu toutes les combinaisons

C’est plus cosmétique qu’utile, car on a déjà tout ce qui faut dans les commandes pour faire ce pour quoi j’avais posé la question.

Pour ce qui est de l’actualisation, je peux garantir qu’elle est synchro, le container autoheal a été éteint hier soir et mosquitto a « planté » dans la nuit, ce matin j’ai refresh le plugin avant de poster les images.

En fait je pensais avoir les même infos que dans portainer, car avoir unhealthy en rouge (container autoheal) alors que le container est stoppé, c’est plus clair s’il est indiqué exited car sa santé n’a plus trop lieu d’être.
Et pour la couleur orange sur un unhealthy je sais pas si ça a été prévu dans le plugin mais au moins ca ressort bien.

Je penche donc plus sur des valeurs logiques qui privilégient le statut :
1 - Si pas de healhcheck : running (vert) ou exited (rouge) + pause &cie
2 - Si running & healthcheck : healthy (vert) ou unheathy (orange)
3 - Si exited & healthcheck : exited (rouge)

Pour la pause je ne sais pas, j’utilise jamais

on est d’accord mais c’est là que je dois bien vérifier ce qui est logique ou pas;
par exemple je pense qu’un container peut être en « pause » mais healthy ou unhealthy malgré tout?
par contre dans tous les autres cas ( created, restarting, removing, exited, dead) je pense que le healthstatus ne sert à rien
p-e que ca peut se limiter à cette logique, je ferai un changement dans ce sens asap

par exemple je pense qu’un container peut être en « pause » mais healthy ou unhealthy malgré tout?

Dans ce cas pour moi c’est « pause » le plus important comme info.
J’ai essayé avec autoheal, mettre en pause dans portainer ou dans le plugin, même en attandant un peu et en synchronisant dans le plugin + F5 etc, la commande info reste « running », et la commande pause du dashboard ne fonctionne pas, il y a surement un problème de ce côté là.

Mais le « pause » à part pour les dev je vois pas l’utilité, je suis basique j’allume et j’éteint :stuck_out_tongue: