Zammad: Integração com Slack - Não é possível postar webhook (Net :: OpenTimeout: execução expirada)

Criado em 9 out. 2017  ·  3Comentários  ·  Fonte: zammad/zammad

Infos:

  • Versão Zammad usada: 2.0.0
  • Fonte de instalação usada do Zammad: fonte
  • Sistema operacional: Servidor - Debian 9 (x86); Cliente - Windows 10 (x64)
  • Navegador + versão: Firefox 56 (x64)

Comportamento esperado:

  • O webhook é enviado e a notificação do tíquete aparece no canal dedicado do Slack

Comportamento real:

  • O webhook não é enviado com o seguinte erro em 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>">

Passos para reproduzir o comportamento:

  • Adicione o aplicativo "Incoming Webhooks" a um canal / espaço de trabalho do Slack
  • Use o endereço de webhook fornecido para habilitar a integração do Slack nas configurações do Zammad
  • Crie um novo tíquete ou atualize um existente

Postar a mesma solicitação gerada pelo Zammad (Integração> Slack> Registros recentes> Registro HTTP) via bash usando curl -X POST funciona perfeitamente bem.
Pesquisando por erros de Rails semelhantes / relacionados, surgiu apenas uma sugestão para desativar o IPv6 na máquina, mas isso não resolveu o problema.

Alguém mais encontrou este erro "_Net :: OpenTimeout: execução expirada_"?
Obrigado

question

Todos 3 comentários

Olá @ em-ex, Obrigado pelo seu relatório. Você tentou executar curl no mesmo servidor que zammad e você diz que funciona bem?

Acabei de testar a conexão com a folga da minha máquina de desenvolvimento e funciona bem para o zammad 2.0.0

@muhammadn Obrigado por investigar isso!
Sim, o curl post foi testado no mesmo servidor e funcionou:

image

O problema supostamente é como Rails lida com DNS, mas eu não sou um especialista ...

Ok, então fui examinar o código e em app\models\transaction\slack.rb descobri que open_timeout estava definido como 4 . Por ~ desespero ~ curiosidade, mudei para 20 e a notificação do Slack foi enviada.

Eu deveria ter mencionado que o servidor está sendo executado em um hardware muito antigo ... Acho que não há problema em encerrar o problema agora.

Mais uma vez, @muhammadn , obrigado por

Esta página foi útil?
0 / 5 - 0 avaliações