事件网格、Azure Functions 事件处理程序、EventGridTrigger 行为
Event Grid, Azure Functions Event Handler, EventGridTrigger behavior
我试图了解在 Azure Function v2 函数中使用 EventGridTrigger 时 EventGrid 的行为。 This page(在 MS 官方文档中),详细说明了与从事件处理程序返回的状态代码相关的特定行为,但没有具体说明正在使用哪种类型的事件处理程序。我只能根据状态代码的使用假设它是为 webhook 使用而设计的。但是,Azure 门户中的订阅配置具有 Azure Functions 的事件处理程序。使用此事件处理程序时,如何从 azure 函数触发这些特定行为?另外,使用它与使用标准的 webhook 事件处理程序有什么区别?我发现了 Azure Function 事件处理程序提供的 "additional functionality" 的多次提及,但我似乎找不到任何详细说明任何特定内容的文档。
基本上,Message delivery status 只能由端点类型以编程方式处理,例如 WebHook 和 HybridConnection。
对于 EventGridTrigger,处理程序仅允许在重试消息传递时抛出异常。换句话说,没有异常类型强制 BadRequest 状态代码立即触发死信进程(如果配置了死信)。
除此之外,EventGridTrigger 函数没有用处 aeg headers 并且当前版本无法处理具有传递模式的消息 = CloudEventSchemaV1_0 .
请注意,WebHook 和 HybridConnection 处理程序有责任为 validation 握手调用建立响应。 Azure 函数处理程序在 EventGridTrigger 的预处理器中内置了此验证逻辑(目前仅适用于 EventGridSchema 和 CustomInputSchema)
更新:
AEG 事件发送到端点处理程序以下 aeg headers:
aeg-subscription-name=MYSUBSCRIPTION
aeg-delivery-count=0
aeg-data-version=1.0
aeg-metadata-version=1
aeg-event-type=Notification
aeg headers 可以帮助事件处理程序的附加功能,例如; long running process、fan-in 模式等
我试图了解在 Azure Function v2 函数中使用 EventGridTrigger 时 EventGrid 的行为。 This page(在 MS 官方文档中),详细说明了与从事件处理程序返回的状态代码相关的特定行为,但没有具体说明正在使用哪种类型的事件处理程序。我只能根据状态代码的使用假设它是为 webhook 使用而设计的。但是,Azure 门户中的订阅配置具有 Azure Functions 的事件处理程序。使用此事件处理程序时,如何从 azure 函数触发这些特定行为?另外,使用它与使用标准的 webhook 事件处理程序有什么区别?我发现了 Azure Function 事件处理程序提供的 "additional functionality" 的多次提及,但我似乎找不到任何详细说明任何特定内容的文档。
基本上,Message delivery status 只能由端点类型以编程方式处理,例如 WebHook 和 HybridConnection。
对于 EventGridTrigger,处理程序仅允许在重试消息传递时抛出异常。换句话说,没有异常类型强制 BadRequest 状态代码立即触发死信进程(如果配置了死信)。
除此之外,EventGridTrigger 函数没有用处 aeg headers 并且当前版本无法处理具有传递模式的消息 = CloudEventSchemaV1_0 .
请注意,WebHook 和 HybridConnection 处理程序有责任为 validation 握手调用建立响应。 Azure 函数处理程序在 EventGridTrigger 的预处理器中内置了此验证逻辑(目前仅适用于 EventGridSchema 和 CustomInputSchema)
更新:
AEG 事件发送到端点处理程序以下 aeg headers:
aeg-subscription-name=MYSUBSCRIPTION
aeg-delivery-count=0
aeg-data-version=1.0
aeg-metadata-version=1
aeg-event-type=Notification
aeg headers 可以帮助事件处理程序的附加功能,例如; long running process、fan-in 模式等