Zammad: Интеграция со Slack - невозможно опубликовать веб-перехватчик (Net :: OpenTimeout: срок выполнения истек)

Созданный на 9 окт. 2017  ·  3Комментарии  ·  Источник: zammad/zammad

Информация:

  • Используемая версия Zammad: 2.0.0
  • Используемый источник установки Zammad: источник
  • Операционная система: Сервер - Debian 9 (x86); Клиент - Windows 10 (x64)
  • Браузер + версия: Firefox 56 (x64)

Ожидаемое поведение:

  • Веб-перехватчик отправляется, и уведомление о тикете появляется в выделенном канале Slack.

Фактическое поведение:

  • Webhook не отправляется со следующей ошибкой в ​​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>">

Шаги по воспроизведению поведения:

  • Добавить приложение "Incoming Webhooks" в рабочую область / канал Slack.
  • Используйте указанный адрес веб-перехватчика, чтобы включить интеграцию со Slack в настройках Zammad.
  • Создать новый билет или обновить существующий

Отправка того же запроса, сгенерированного Zammad (Интеграция> Slack> Последние журналы> Журнал HTTP), через bash с использованием curl -X POST отлично работает.
Поиск в Google похожих / связанных ошибок Rails вызвал только предложение отключить IPv6 на машине, но это не решило проблему.

Кто-нибудь еще сталкивался с этой ошибкой «_Net :: OpenTimeout: срок исполнения истек_»?
Спасибо

question

Все 3 Комментарий

Привет @ em-ex, Спасибо за отчет. Вы пытались запустить curl на том же сервере, что и zammad, который, по вашему мнению, работает нормально?

Я только что протестировал подключение к Slack на своей машине разработки, и он работает нормально для zammad 2.0.0.

@muhammadn Спасибо, что
Да, пост curl был протестирован с того же сервера, и он работал:

image

Проблема, предположительно, в том, как Rails обрабатывает DNS, но я не эксперт ...

Хорошо, я пошел исследовать код и в app\models\transaction\slack.rb обнаружил, что open_timeout установлено на 4 . Из ~ отчаяния ~ любопытства я изменил его на 20, и уведомление Slack прошло.

Я должен был упомянуть, что сервер работает на довольно старом оборудовании ... Думаю, сейчас можно закрыть проблему.

Еще раз, @muhammadn, спасибо, что

Была ли эта страница полезной?
0 / 5 - 0 рейтинги