【发布时间】:2021-12-24 17:35:58
【问题描述】:
我有 3 个订阅的服务总线主题,进一步获得了创建服务总线消息的 HttpTrigger Azure 函数。我是服务总线的新手,我的理解是,当我在 Azure 函数中创建消息时,所有三个订阅都应该触发,但在我的情况下,只有一个订阅会触发,而其他两个不会触发。我已经检查了 Azure 服务总线资源管理器,也看不到任何死信,所以我的假设是其他两个订阅没有触发。
Azure Function
[FunctionName("CreateRecord")]
public async Task<IActionResult> Run(
[HttpTrigger(AuthorizationLevel.Function, "post", Route = "POST")] HttpRequest req
, [ServiceBus("MyTopicA", Connection = "MyTopicConnection")] IAsyncCollector<Message> servicebusMessage
)
{
//remaining code
await servicebusMessage.AddAsync(ringGoExemptionMessage);
}
`Azure 服务总线的单一触发器'
[FunctionName("ProcessToElastic")]
public async Task Run([ServiceBusTrigger("MyTopicA", "exemptiontoelastic", Connection = "MyTopicConnection")]
Message message, string lockToken, MessageReceiver messageReceiver, ExecutionContext context,
[ServiceBus("providerexemptionreceivednotification", Connection = "MyTopicConnection")] IAsyncCollector<Message> reScheduleMessages)
{
//
}
Service Bus the once not Trigger
[FunctionName("ProcessToDb")]
public async Task Run([ServiceBusTrigger("MyTopicA", "exemptiontoazuredb", Connection = "MyTopicConnection")] Message message, string lockToken,
MessageReceiver messageReceiver, ExecutionContext context,
[ServiceBus("providerexemptionreceivednotification", Connection = "MyTopicConnection")] IAsyncCollector<Message> reScheduleMessages)
{
}
不确定我确实缺少什么或如何在本地调试 ServiceBus,这意味着我可以调试 Azure Function 但不能调试服务总线??
【问题讨论】:
-
请检查未收到消息的订阅上定义的过滤规则。
标签: c# .net-core azure-functions azureservicebus azure-servicebus-topics