问题标签 [azure-servicebus-subscriptions]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2932 浏览

azure - 通过 CorrelationFilter 和 Azure Functions App 创建主题过滤器规则

我想通过 CorrelationFilter 为与主题关联的订阅创建过滤规则,因为它比 SQLFilter 更快。

规则:任何包含等于字符串的标头的消息将转到一个订阅,另一个字符串将转到不同的订阅。例如:

类似于下面通过 Service Bus Explorer 以蓝色突出显示的那个。

在此处输入图像描述 以下是可以实现这一目标的其他方法。

代码中的 SQLFilter https://dzone.com/articles/everything-you-need-know-about-5

SQLFilter https://github.com/Azure/azure-service-bus/tree/master/samples/DotNet/Microsoft.Azure.ServiceBus/TopicFilters

PS https://docs.microsoft.com/en-us/powershell/module/azurerm.servicebus/New-AzureRmServiceBusRule?view=azurermps-6.13.0

0 投票
1 回答
813 浏览

azure - 如何在 Azure 服务总线主题订阅的消息中指定发件人订阅?

在 azure servicebus 中,我有一个订阅主题。当该主题收到消息时,订阅必须将消息转发到日志队列。如何指定转发的消息来自该主题?我需要转发消息中的主题名称。

我试过这个但不起作用。我不知道我是否做错了。

0 投票
1 回答
3582 浏览

azureservicebus - 向 Azure 服务总线订阅添加筛选条件

我正在使用 Azure 服务总线资源管理器来管理现有 Azure 服务总线主题的订阅。现在我们有了一个新的主题,它将接收来自多个源系统的消息。基于源系统,我需要创建不同的订阅。以下是我们收到的示例消息

消息1:

消息2:

我需要创建两个带有过滤条件的订阅

订阅1:with filter as "source": "system1"

订阅2:with filter as "source": "system2"

请帮助我为我需要使用服务总线资源管理器创建的上述服务总线订阅正确过滤表达式。

0 投票
1 回答
1684 浏览

azureservicebus - 将 Azure 服务总线队列迁移到 C# 中的主题和订阅

是否可以仅通过重新配置路径名将 Azure 服务总线队列迁移到主题和订阅?

是否需要更改任何代码?

如果我保持名称相同,第 3 方是否必须更改他们的代码?

0 投票
1 回答
136 浏览

.net-core - 无法使用 Microsoft.Azure.ServiceBus 库在 Azure 服务总线订阅筛选器上设置基于 TimeSpan 的参数

使用较旧的“Windows.Azure.ServiceBus”库,我可以设置一个将 TimeSpan 作为其参数的 SqlFilter,但是当我使用“Microsoft.Azure.ServiceBus”库尝试相同时,它会失败并出现以下错误:

对象不属于支持的类型:TimeSpan。HTTP 仅支持以下类型:string,int,long,bool,double,DateTime

我正在尝试做的事情:

  1. 我想在我的主题上有 2 个订阅(highPriority、normalPriority)
  2. 消息有一个名为“StartDate”的用户属性
  3. 如果 StartDate <= 1 天,那么它应该去 highPriority 订阅,否则它应该去 normalPriority。[即 (StartDate - sys.EnqueuedDateTimeUtc) <= 24 小时]。

有效的代码(使用旧的 .net-framework Windows.Azure.ServiceBus 包时):

其中,此代码(使用:Microsoft.Azure.ServiceBus)不起作用:

上面的代码抛出以下错误:

对象不属于支持的类型:TimeSpan。HTTP 仅支持以下类型:string,int,long,bool,double,DateTime

如果不是 managementClient.UpdateRuleAsync,我尝试使用以下代码:

它失败了,出现以下错误(ServiceBusException):

消息服务无法处理请求;请重试操作。有关异常类型和正确异常处理的详细信息,请参阅 http://go.microsoft.com/fwlink/?LinkId=761101

微软链接指向异常列表和FilterException,但它不是!

这是第二个异常的堆栈跟踪:

在 Microsoft.Azure.ServiceBus.Amqp.AmqpSubscriptionClient.OnAddRuleAsync(RuleDescription description) 在 C:\source\azure-service-bus-dotnet\src\Microsoft.Azure.ServiceBus\Amqp\AmqpSubscriptionClient.cs:Microsoft.Azure 的第 132 行.ServiceBus.SubscriptionClient.AddRuleAsync(RuleDescription description) 在 C:\source\azure-service-bus-dotnet\src\Microsoft.Azure.ServiceBus\SubscriptionClient.cs:C:\Users\ UserQuery.Main() 中的第 499 行XXXX\AppData\Local\Temp\LINQPad6_quhgasgl\niqvie\LINQPadQuery.cs:82 行

所以我的问题是:

  1. 我可以使用 .net 标准库使用 TimeSpan 参数吗?或者如果我想使用 TimeSpans,我是否必须使用旧的 .net 框架库。

  2. 有没有更好的方法来实现我正在尝试做的事情,一种可以与较新的 .net 标准库一起使用的方法?(仅供参考:我考虑将计算作为参数(十进制)发送,然后参数将是双精度数,而不是 TimeSpan)。事实上,这就是我最终可能会做的事情。

0 投票
0 回答
128 浏览

azure - Azure Functions 2 的 Azure 服务总线触发器输入/输出的共享访问签名支持

Azure Service Bus 触发器用于 Azure Functions for Topic 和订阅,我想知道 Azure Service Bus 触发器输入和输出是否支持共享访问签名(SAS)?

https://docs.microsoft.com/en-us/azure/service-bus-messaging/service-bus-sas https://docs.microsoft.com/en-us/azure/azure-functions/functions-bindings -服务总线

输出

输入

}

任何想法?

如果不支持,任何解决方法

0 投票
1 回答
1119 浏览

azure - Azure 主题订阅筛选器/订阅规则

我创建了一个示例客户端,它侦听附加到服务总线主题的订阅。现在,每当在该主题中发布消息时,它都会被收听订阅者的客户端捕获。(如下文所述)

https://github.com/Azure/azure-service-bus/tree/master/samples/DotNet/GettingStarted/Microsoft.Azure.ServiceBus/TopicSubscriptionWithRuleOperationsSample

现在我想添加一个过滤器/规则,以便只有通过过滤器中定义的特定条件的消息才应提供给订阅。

例如,下面是以字符串形式给出的消息内容 json,

如何创建仅接收消息的订阅规则"occupation": "actor"。根据 azure 文档,我们需要 SqlFilter 但是到目前为止还没有运气,

https://docs.microsoft.com/en-us/azure/service-bus-messaging/topic-filters

https://www.terraform.io/docs/providers/azurerm/r/servicebus_subscription_rule.html#example-usage-sql-filter-

我们正在使用 terraform 在 azure 云中创建资源。上面链接中建议的模块,但是如何定义 sql_filter 来考虑"occupation":"actor"

filter_type = "SqlFilter" sql_filter = "???"

我已经尝试如下,但得到无效字符“:”

sql_filter = "'occupation':'actor'"

0 投票
0 回答
385 浏览

azure - Azure 服务总线主题订阅 REST API

如何使用 Azure REST API 订阅服务总线主题?我想创建一个带有“启用会话”的订阅,因为消息的顺序对我来说非常重要。我现在有下面的代码,它注册了一个消息处理程序。

但是,我想使用 REST API 来实现它。这可能吗?

0 投票
1 回答
48 浏览

macos - 如何在 Mac(或在线)上查看 Azure 服务总线主题订阅的配置规则?

我已经在 Azure 服务总线中配置/定义了一个转发订阅,它有一个我想查看的过滤规则,但 Azure 门户没有显示过滤器,它甚至没有显示订阅的“forwardTo”属性是什么. 我使用的是 Mac,如何查看这些?

0 投票
0 回答
55 浏览

biztalk - 带有 biztalk 服务器 2016 的 Azure 服务总线

我正在寻找有关将 Azure 服务总线与 Biztalk 服务器 2016 一起使用以在高流量组中排队一些 Web 请求的任何反馈