Python fabric SSHException

Bonjour,
j’ai une fonction qui se connecte sur des postes distants avec le module fabric de python et qui exécute en continu des instructions, le code ressemble à ça:

while(True):
    for x in range(..):
        connecter(x)      #la fonction qui utilise fabric pour se connecter sur le poste x
        run('....')     #mes instructions ici

Alors ça fonctionne très bien sur une dizaine de postes sans soucis, le seul problème c’est si par exemple un poste s’éteint l’ensemble de la fonction plante avec une erreur:

J’aimerai bien que cette erreur soit juste ignorée mais je ne sais pas comment faire. En cherchant un peu j’ai l’impression que try puis except pourrait peut-être fonctionner?

Merci

Oui, la syntaxe try except te permettra de l’intercepter et de l’ignorer (est-ce bien souhaitable ?). Tu peux aussi essayer d’opter pour une approche distribuée (threads ou autre) dans laquelle un fil ne fera pas planter l’ensemble.

Oui, je vais essayer les deux solutions, l’avantage des threads c’est que je vais peut-être gagner en rapidité et ça va peut-être m’arranger…

Merci

Avec try except tu peux réagir différemment en fonction de l’erreur (exception).
Un peu de doc : https://docs.python.org/2/tutorial/errors.html