Я работаю над ответом от электронной почты в своем приложении, и я использую mandrillapp.com. Как это работает сейчас:Интеграция сторонних сервисов
1. User replies from their email to [email protected]
2. Mandril receives the mail and sends the POST request to preconfigured endpoint of my service
3. I process that post request (create internal app message)
Что касается к шагу 3, я в основном код, который должен создать внутреннее сообщение приложения, завернутое в begin/rescue
. Поэтому любые возможные ошибки будут сообщены мне, что у них было в прошлом.
Однако теперь я столкнулся с пользователем, который утверждает, что письмо было отправлено (шаг 1), я связался с поддержкой мандрилла, который, по их словам, обработал его и отправил на конечную точку (шаг 2).
Так что это оставляет меня только для того, чтобы увидеть, что произошло на шаге 3, в пределах определенного временного диапазона. Мое приложение находится на геройку, а мои журналы, хранящиеся на AWS, я мог вернуться в прошлое к этому конкретному времени, и я мог видеть успешный запрос POST с стороны mandrill.
Что я могу сделать, чтобы поймать этот случай вперед? И исправить это, конечно, потому что я понятия не имею, что происходит сейчас.
Я думал о создании модели с именем Mandrill hooks
, которая имела бы столбец params, который будет сериализованным хэшем, и он сохранит все параметры, которые пришли к моей конечной точке из mandrill.
Тогда я мог проверить количество почтовых ящиков, полученных моей учетной записью, и те, которые были отправлены mandrill, и, надеюсь, я разберу 1 с другим счетом, и поскольку у меня будут данные params в моем db, я смогу воспроизвести случай.
Или есть более разумный подход, поскольку это выглядит наивным даже для меня?
Привет, Хоппер, на данный момент этот ответ является нетерпеливым видом как «ссылка-только-ответ», вы можете подумать о том, чтобы он мог стоять в одиночестве, сохраняя ссылку в дополнении. – bummi
О, спасибо, бамми! Отредактировано для добавления связанного ответа :) – Hopper