本地Azure功能服务总线触发器不拾取消息,但没有信息

问题描述 投票:0回答:1

我有一个非常令人沮丧的问题

 [FunctionName("MyFunction")]
 public async Task MyFunctionAsync(
 [ServiceBusTrigger("%AzureTopicName%", "mysubscription", Connection = "event-bus-connection")] Message message)
 { 
    //My logic here
 }

这永远不会被击中

我已检查并验证所有配置,没有问题

消息正在写入服务总线,如果存在配置问题,则不会发生这种情况

但是,即使消息在订阅中,我的触发器也永远不会被触发

有人见过这个吗?

这是本地执行而不是Azure

保罗

azure servicebus
1个回答
0
投票
  1. 验证函数代码中使用的连接字符串、订阅、主题名称是否正确。从服务总线命名空间获取连接字符串以在函数代码中使用。

enter image description here

  1. 检查消息是否正在移至死信队列或消息是否正在由其他函数处理。

我已按照以下步骤操作并能够触发服务总线主题触发的 Azure 功能。

  • 创建了服务总线主题触发器 Azure Function。

  • 创建了服务总线、主题以及主题内的订阅。

enter image description here

代码片段:

[FunctionName("Function1")]
public void Run([ServiceBusTrigger("mytopic", "mysubscription", Connection = "demo")]string mySbMsg, ILogger log)
{
    log.LogInformation($"C# ServiceBus topic trigger function processed message: {mySbMsg}");
}

local.settings.json:

{
    "IsEncrypted": false,
  "Values": {
    "AzureWebJobsStorage": "UseDevelopmentStorage=true",
    "FUNCTIONS_WORKER_RUNTIME": "dotnet",
    "demo": "Endpoint=sb://<ServiceBus_name>.servicebus.windows.net/;SharedAccessKeyName=RootManageSharedAccessKey;SharedAccessKey=GRWoe2XXXXXXXXXXXXXXbEd8Ing="
  }
}
  • 发送消息:

enter image description here

控制台输出:

Functions:

        Function1: serviceBusTrigger

For detailed output, run func with --verbose flag.
[2024-03-31T10:41:54.990Z] Host lock lease acquired by instance ID '000000000000000000000000F72731CC'.
[2024-03-31T10:42:15.389Z] Executing 'Function1' (Reason='(null)', Id=b57524a6-4fb8-4586-9bfb-c88e23d137bb)
[2024-03-31T10:42:15.394Z] Trigger Details: MessageId: 129a51488e34478db8ff88c43308da8b, SequenceNumber: 1, DeliveryCount: 1, EnqueuedTimeUtc: 2024-03-31T10:42:12.1620000+00:00, LockedUntilUtc: 2024-03-31T10:43:12.2400000+00:00, SessionId: (null)
[2024-03-31T10:42:15.433Z] C# ServiceBus topic trigger function processed message: Hello
[2024-03-31T10:42:15.490Z] Executed 'Function1' (Succeeded, Id=b57524a6-4fb8-4586-9bfb-c88e23d137bb, Duration=205ms)
© www.soinside.com 2019 - 2024. All rights reserved.