Un appel de webhook échoue, comment puis-je voir les journaux détaillés ?

enter image description here

0
Anders_K 9 nov. 2020 à 17:03

1 réponse

Meilleure réponse

La page test des webhooks décrit cela les erreurs sont mises dans output.webhook_error.<result_variable>. Par exemple, si votre variable de résultat est webhook_result_1, la sortie est dans output.webhook_error.webhook_result_1.

Comme décrit dans la documentation, si une erreur se produit, dans la section "L'assistant répond" de l'éditeur de nœud de dialogue, le "Si l'assistant reconnaît" anything_else doit être utilisé, vous pouvez donc y mettre The callout generated this error: <? output.webhook_error.webhook_result_1 ?>. .

Cela affichera plus d'informations. Par exemple, si je configure une API pour lancer une erreur, je récupérerai :

The callout generated this error: {"response_code":400,"message":"Webhook call was not successful. Response code is [400].","response_body":{"code":"cff11d18150e8018d5e304ac3fc35c94","error":"There was an error processing your request."},"content_type":"application/json"}.

Si cette erreur se produit lorsque le Bot est utilisé en direct, le corps de la réponse du webhook sera capturé dans les journaux. Si vous utilisez le panneau Try It Out dans l'interface utilisateur, les journaux ne sont pas capturés.

Dans l'interface utilisateur de l'assistant pour la compétence dans l'onglet Analytics, la conversation est affichée. Dans la partie "Conversations utilisateur" de l'interface utilisateur, le texte de la conversation est capturé, mais vous ne verrez l'erreur de webhooks que si vous ajoutez une sortie comme décrit ci-dessus.

L'API peut être utilisée pour récupérer les journaux d'un espace de travail ou d'une compétence qui incluent les détails de l'erreur de webhook. Voir Liste des événements de journal dans un espace de travail. Si vous utilisez une compétence, vous pouvez trouver l'URL à utiliser à partir de l'interface utilisateur de l'assistant. Sur la page de la liste des compétences, sur la compétence particulière, cliquez sur le menu ... et sélectionnez Afficher les détails de l'API. Le Legacy v1 workspace URL: indique l'ID de l'espace de travail à utiliser.

Par exemple, si Legacy v1 workspace URL: est https://gateway.watsonplatform.net/assistant/api/v1/workspaces/ce13f844-c3a7-4f36-97c6-a0ac704024a6/message, l'URL à utiliser pour récupérer les journaux est https://gateway.watsonplatform.net/assistant/api/v1/workspaces/ce13f844-c3a7-4f36-97c6-a0ac704024a6/logs?version=2020-04-01

Dans le journal de l'espace de travail, il y aura les détails de la conversation de l'utilisateur où une erreur de webhook s'est produite dans webhook_error :

"output": {
  "generic": [
      {
          "response_type": "text",
          "text": ""
      },
      {
          "response_type": "text",
          "text": "The callout generated this error: {\"response_code\":400,\"message\":\"Webhook call was not successful. Response code is [400].\",\"response_body\":{\"code\":\"cff11d18150e8018d5e304ac3fc35c94\",\"error\":\"There was an error processing your request.\"},\"content_type\":\"application/json\"}."
      },
      {
          "response_type": "text",
          "text": "Customer email is <? context.webhook_result_1.message ?>."
      }
  ],
  "text": [
      "",
      "The callout generated this error: {\"response_code\":400,\"message\":\"Webhook call was not successful. Response code is [400].\",\"response_body\":{\"code\":\"cff11d18150e8018d5e304ac3fc35c94\",\"error\":\"There was an error processing your request.\"},\"content_type\":\"application/json\"}.",
      "Customer email is <? context.webhook_result_1.message ?>."
  ],
  "nodes_visited": [
      "slot_2_1520179906877",
      "handler_3_1520179906877",
      "node_1_1520179877410",
      "node_9_1530805081298",
      "response_5_1604940050659",
      "node_7_1520180645829"
  ],
  "webhook_error": {
      "webhook_result_1": {
          "response_code": 400,
          "message": "Webhook call was not successful. Response code is [400].",
          "response_body": {
              "code": "cff11d18150e8018d5e304ac3fc35c94",
              "error": "There was an error processing your request."
          },
          "content_type": "application/json"
      }
  },
  "nodes_visited_details": [
2
DSeager 10 nov. 2020 à 15:25