Zammad: Intégration Slack - Impossible de publier le webhook (Net :: OpenTimeout: exécution expirée)

Créé le 9 oct. 2017  ·  3Commentaires  ·  Source: zammad/zammad

Infos:

  • Version Zammad utilisée: 2.0.0
  • Source d'installation Zammad utilisée: source
  • Système d'exploitation: Serveur - Debian 9 (x86); Client - Windows 10 (x64)
  • Navigateur + version: Firefox 56 (x64)

Comportement prévisible:

  • Le Webhook est envoyé et la notification de ticket apparaît dans le canal Slack dédié

Comportement réel:

  • Webhook n'est pas envoyé avec l'erreur suivante dans production.log:

E, [2017-10-09T03:41:36.467269 #22391] ERROR -- : Unable to post webhook: https://hooks.slack.com/services/XXXXXXXXX/XXXXXXXXX/XXXXXXXXXXXXXXXXXXXXXXXX: #<UserAgent::Result:0x839650f4 @success=false, @body=nil, @data=nil, @code=0, @content_type=nil, @error="#<Net::OpenTimeout: execution expired>">

Étapes pour reproduire le comportement:

  • Ajouter l'application "Incoming Webhooks" à un espace de travail / une chaîne Slack
  • Utilisez l'adresse Webhook donnée pour activer l'intégration Slack dans les paramètres Zammad
  • Créer un nouveau ticket ou mettre à jour un ticket existant

Publier la même requête générée par Zammad (Intégration> Slack> Journaux récents> Journal HTTP) via bash en utilisant curl -X POST fonctionne parfaitement.
La recherche d'erreurs Rails similaires / liées sur Google n'a soulevé qu'une suggestion de désactiver IPv6 sur la machine, mais cela n'a pas résolu le problème.

Quelqu'un d'autre a-t-il rencontré cette erreur "_Net :: OpenTimeout: exécution expirée_"?
Merci

question

Tous les 3 commentaires

Salut @ em-ex, Merci pour votre rapport. Avez-vous essayé d'exécuter curl sur le même serveur que zammad et vous dites que cela fonctionne correctement?

Je viens de tester la connexion à Slack depuis ma machine de développement et cela fonctionne bien pour zammad 2.0.0

@muhammadn Merci d'avoir examiné cela!
Oui, curl post a été testé à partir du même serveur et cela a fonctionné:

image

Le problème est censé être la façon dont Rails gère le DNS, mais je ne suis pas un expert ...

Ok donc je suis allé examiner le code et dans app\models\transaction\slack.rb j'ai trouvé que open_timeout était réglé sur 4 . Par ~ désespoir ~ curiosité, je l'ai changé en 20 et la notification Slack est passée.

J'aurais dû mentionner que le serveur fonctionne sur du matériel assez ancien ... Je pense que c'est correct de fermer le problème maintenant.

Encore une fois, @muhammadn merci d'avoir pris le temps d'examiner cela!

Cette page vous a été utile?
0 / 5 - 0 notes