Как отследить сообщение о доставке сетки неудачных / просроченных событий Azure?
Приятно видеть, что сетка событий Azure имеет 24-часовую политику повторов с экспоненциальным откатом для доставки событий с доступностью 99,99%. Однако я столкнулся со сценарием, в котором одно из ожидаемых сообщений сетки событий не достигалось даже через 24 часа.
У меня настроена веб-ловушка для события с темой /subscription/id/resourcegroups/name/providers/Microsoft.Resources/deployments/name, которую я ожидаю после завершения развертывания группы ресурсов, что и было успешно, как я вижу на портале Azure.
Не могли бы вы помочь уточнить вопросы ниже,
- Чтобы проверить, была ли предпринята попытка повторения в течение 24 часов, где я могу найти логи
- Если попытка и повторные попытки исчерпаны, где я могу найти журналы
- Если доставка не произошла, даже если потребитель был доступен из-за сбоя или недоступности сетки событий, где я могу найти журналы
1 ответ
Как уже упоминалось в комментарии Шона, эта поддержка скоро появится.
На основе Microsoft.Azure.Management.EventGrid версии =2.0.0.0 можно ожидать появления нового свойства, такого как deadletterdestination, в подписке на событие, см. Следующий фрагмент полезной нагрузки образца для создания подписки OrUpdating:
{
"properties": {
"deadletterdestination": {
"endpointType": "StorageBlob",
"properties": {
"blobContainerName": "{myContainerName}",
"resourceId": "/subscriptions/{mySubscriptionId}/resourceGroups/{myResourceGroup}/providers/Microsoft.Storage/storageAccounts/{myStorageAccount}"
}
},
"destination": {
"endpointType": "WebHook",
"properties": {
"endpointUrl": "{myEndpointUrl}"
}
},
"filter": {
"isSubjectCaseSensitive": false,
"subjectBeginsWith": null,
"subjectEndsWith": null
},
"labels": ["xxx"],
"eventDeliverySchema": "InputEventSchema",
"retryPolicy": {
"maxDeliveryAttempts": 30,
"eventTimeToLiveInMinutes": 1440
}
}
}
Когда вы помещаете запрос REST (api-version=2018-05-01-preview) для создания подписки на событие с вышеуказанной полезной нагрузкой, ответ не получается со следующим сообщением:
{
"error": {
"code": "InvalidRequest",
"message": "DeadLettering is currently not enabled in the service and support for it is coming soon. Until then, please re-issue the event subscription creation/update request without setting a deadletter destination."
}
}
Я с нетерпением жду этой замечательной функции, в которой каждая подписка может быть источником события для рассылки новостей, и я надеюсь, что будет больше конечных типов для назначения рассылки, таких как EventHub, StorageQueue, ServiceBus, WebHook и т. Д.
Обновить:
Спасибо команде Azure Grid за выпуск предварительного просмотра функции deadletterdestination. Теперь каждая подписка может быть решена, когда будет отправлено письмо. Сегодня мы можем отправить его в хранилище.
Следующий фрагмент экрана показывает тупик, хранящийся в хранилище BLOB-объектов:
Смотрите подробности здесь.