在 Azure Durable Function 更改状态时获取事件
Get events when an Azure Durable Function changes status
我想监视 Azure Durable Orchestrator Function 的 运行 实例的变化(比如完成、失败等)
我知道我可以轮询状态 API 进行更改,但我想知道是否有任何基于推送的功能。我查看了源代码,但我似乎无法找到支持此功能的扩展点、接口等的任何线索。
关于如何实现这一点有什么想法吗?
谢谢!
目前,发布编排生命周期事件(例如创建、完成和失败)仅限于自定义 Azure Event Grid Topic. This feature is currently in preview. Refer Durable Functions publishing to Azure Event Grid (preview)。
持久的功能2.x
将 notifications
部分添加到文件的 durableTask
属性,将 <topic_name>
替换为您选择的名称。如果 durableTask
或 extensions
属性不存在,请按照以下示例创建它们:
{
"version": "2.0",
"extensions": {
"durableTask": {
"notifications": {
"eventGrid": {
"topicEndpoint": "https://<topic_name>.westus2-1.eventgrid.azure.net/api/events",
"keySettingName": "EventGridKey"
}
}
}
}
}
事件架构
以下列表解释了生命周期事件架构:
id
:事件网格事件的唯一标识符。
subject
:事件主题的路径。 durable/orchestrator/{orchestrationRuntimeStatus}
。 {orchestrationRuntimeStatus}
将是 Running
、Completed
、Failed
和 Terminated
。
data
:持久函数特定参数。
hubName
: TaskHub 姓名。
functionName
: Orchestrator 函数名称。
instanceId
:持久函数 instanceId。
reason
:与跟踪事件关联的附加数据。有关详细信息,请参阅 Diagnostics in Durable Functions (Azure Functions)
runtimeStatus
:编排运行时状态。 运行、完成、失败、取消。
eventType
:“orchestratorEvent”
eventTime
:事件时间(UTC)。
dataVersion
:生命周期事件模式的版本。
metadataVersion
:元数据的版本。
topic
:事件网格主题资源。
我想监视 Azure Durable Orchestrator Function 的 运行 实例的变化(比如完成、失败等)
我知道我可以轮询状态 API 进行更改,但我想知道是否有任何基于推送的功能。我查看了源代码,但我似乎无法找到支持此功能的扩展点、接口等的任何线索。
关于如何实现这一点有什么想法吗?
谢谢!
目前,发布编排生命周期事件(例如创建、完成和失败)仅限于自定义 Azure Event Grid Topic. This feature is currently in preview. Refer Durable Functions publishing to Azure Event Grid (preview)。
持久的功能2.x
将 notifications
部分添加到文件的 durableTask
属性,将 <topic_name>
替换为您选择的名称。如果 durableTask
或 extensions
属性不存在,请按照以下示例创建它们:
{
"version": "2.0",
"extensions": {
"durableTask": {
"notifications": {
"eventGrid": {
"topicEndpoint": "https://<topic_name>.westus2-1.eventgrid.azure.net/api/events",
"keySettingName": "EventGridKey"
}
}
}
}
}
事件架构
以下列表解释了生命周期事件架构:
id
:事件网格事件的唯一标识符。subject
:事件主题的路径。durable/orchestrator/{orchestrationRuntimeStatus}
。{orchestrationRuntimeStatus}
将是Running
、Completed
、Failed
和Terminated
。data
:持久函数特定参数。hubName
: TaskHub 姓名。functionName
: Orchestrator 函数名称。instanceId
:持久函数 instanceId。reason
:与跟踪事件关联的附加数据。有关详细信息,请参阅 Diagnostics in Durable Functions (Azure Functions)runtimeStatus
:编排运行时状态。 运行、完成、失败、取消。
eventType
:“orchestratorEvent”eventTime
:事件时间(UTC)。dataVersion
:生命周期事件模式的版本。metadataVersion
:元数据的版本。topic
:事件网格主题资源。