Projet

Général

Profil

Tâche #21435

Scénario #21278: Epic1: Créer les actions dans Salt -Master

Gérer les cas d'erreur dans les actions créées

Ajouté par Bruno Boiget il y a plus de 6 ans. Mis à jour il y a plus de 6 ans.

Statut:
Fermé
Priorité:
Normal
Assigné à:
Début:
25/09/2017
Echéance:
% réalisé:

0%

Temps estimé:
3.00 h
Temps passé:
Restant à faire (heures):
0.0

Description

  • Définit les erreurs possibles à l'exécution de l'action et les renvoyer
  • Vérifier leur prise en compte dans l'API bridge

Révisions associées

Révision 73ffebe4 (diff)
Ajouté par Bruno Boiget il y a plus de 6 ans

manage exceptions in saltmaster service

  • add error definitions in messages and service code
  • add documentation for error management in Creation_Microservice.txt

ref #21435

Révision 65539c8d (diff)
Ajouté par Bruno Boiget il y a plus de 6 ans

manage exceptions in saltmaster service

  • add error definitions in messages and service code
  • add documentation for error management in Creation_Microservice.txt

ref #21435

Révision db5e6c4c (diff)
Ajouté par Bruno Boiget il y a plus de 6 ans

Correction code-block (gestion des erreurs)

ref #21435

Historique

#1 Mis à jour par Bruno Boiget il y a plus de 6 ans

  • Statut changé de Nouveau à En cours

#2 Mis à jour par Bruno Boiget il y a plus de 6 ans

  • Statut changé de En cours à Résolu

#3 Mis à jour par Bruno Boiget il y a plus de 6 ans

  • Restant à faire (heures) changé de 3.0 à 0.25

#4 Mis à jour par Bruno Boiget il y a plus de 6 ans

  • Description mis à jour (diff)
  • Restant à faire (heures) changé de 0.25 à 1.0
  • informations ajoutées dans la documentation (création d'un microservice)
  • les messages remontent bien jusqu'à l'API bridge, mais ne sont pas encore remontés jusqu'à l'utilisateur (il voit une 'internal error')

ex en mettant un mauvais mot de passe pour l'authentification Salt :

saltmaster_1  | [WARNING ] Authentication failure of type "eauth" occurred.
saltmaster_1  | [INFO    ] 127.0.0.1 - - [26/Sep/2017:12:08:42] "POST /login HTTP/1.1" 401 447 "" "python-requests/2.18.4" 
saltmaster_1  | 2017-09-26T12:08:42 ApplicationError: ApplicationError(error=<exec.salt.error.login_error>, args=[], kwargs={'reason': 'Error while authenticated to salt-api : Unauthorized'}, enc_algo=None): Traceback (most recent call last):
saltmaster_1  |   File "/srv/salt_ctrl/salt_ctrl.py", line 30, in exec_command
saltmaster_1  |     assert resp.status_code == 200, resp.reason
saltmaster_1  | AssertionError: Unauthorized
saltmaster_1  | 
saltmaster_1  | During handling of the above exception, another exception occurred:
saltmaster_1  | 
saltmaster_1  | Traceback (most recent call last):
saltmaster_1  |   File "/usr/local/lib/python3.5/dist-packages/txaio/aio.py", line 443, in done
saltmaster_1  |     res = f.result()
saltmaster_1  |   File "/usr/lib/python3.5/asyncio/futures.py", line 274, in result
saltmaster_1  |     raise self._exception
saltmaster_1  |   File "/usr/local/lib/python3.5/dist-packages/txaio/aio.py", line 365, in as_future
saltmaster_1  |     res = fun(*args, **kwargs)
saltmaster_1  |   File "/srv/salt_ctrl/salt_ctrl.py", line 33, in exec_command
saltmaster_1  |     raise ApplicationError(u'exec.salt.error.login_error', reason=err_msg)
saltmaster_1  | autobahn.wamp.exception.ApplicationError: ApplicationError(error=<exec.salt.error.login_error>, args=[], kwargs={'reason': 'Error while authenticated to salt-api : Unauthorized'}, enc_algo=None)
saltmaster_1  | 
api-bridge_1  | 2017/09/26 12:08:42 [aca333f51119/U5OFPkjEYQ-000001] "POST http://api-bridge:3000/v1/exec.salt HTTP/1.1" from 172.18.0.8:39612 - 500 59B in 2.797773373s
api-bridge_1  | 2017/09/26 12:08:42 [aca333f51119/U5OFPkjEYQ-000001] error: error calling remote procedure 'v1.exec.salt': exec.salt.error.login_error: reason=Error while authenticated to salt-api : Unauthorized

Autre problème :

Salt ne provoque pas un état d'erreur si une action demandée n'existe pas, ou si elle échoue sur certains serveurs. (réponse 200 avec liste des messages remontés par les minions).

#5 Mis à jour par Gérald Schwartzmann il y a plus de 6 ans

  • Restant à faire (heures) changé de 1.0 à 0.0

#6 Mis à jour par Joël Cuissinat il y a plus de 6 ans

  • Statut changé de Résolu à Fermé

Formats disponibles : Atom PDF