C# MassTransit-AWS SQS/SNS-向SNS添加标签
我需要以维护SNS标签的方式配置MassTransit库 我可以看到为所创建的SQS队列配置标记的位置,并且按照预期工作。然而,我需要为MassTransit创建的SNS主题做类似的事情 到目前为止,我已经尝试了几件事情,不幸的是,它们都不允许我在SNS资源上创建标签C# MassTransit-AWS SQS/SNS-向SNS添加标签,c#,amazon-sqs,amazon-sns,masstransit,C#,Amazon Sqs,Amazon Sns,Masstransit,我需要以维护SNS标签的方式配置MassTransit库 我可以看到为所创建的SQS队列配置标记的位置,并且按照预期工作。然而,我需要为MassTransit创建的SNS主题做类似的事情 到目前为止,我已经尝试了几件事情,不幸的是,它们都不允许我在SNS资源上创建标签 public IBusControl GetServiceBus() { var serviceBus = Bus.Factory.CreateUsingAmazonSqs(sbc =>
public IBusControl GetServiceBus()
{
var serviceBus = Bus.Factory.CreateUsingAmazonSqs(sbc =>
{
sbc.Host("AmazonRegion", h =>
{
h.Config(
new AmazonSimpleNotificationServiceConfig
{
ServiceURL = _configService.AmazonSnsServiceUrl
//Tags doesn't seems the be available here
});
h.Config(new AmazonSQSConfig
{
ServiceURL = _configService.AmazonSqsServiceUrl
});
h.AccessKey("AccessKey");
h.SecretKey("SecretKey");
});
sbc.ReceiveEndpoint("queueName", e =>
{
e.Consumer<IConsumer<Message>>(_container);
e.Consumer<IConsumer<Fault<Message>>>(_container);
e.QueueTags.Add("TestTag", "DEV");
//Here I can define only Tags for the queue, not for the Topic though
});
});
serviceBus.ConnectSendAuditObservers(_messageAuditStore);
serviceBus.ConnectConsumeAuditObserver(_messageAuditStore);
return serviceBus;
}
我也尝试过这样的手动订阅:
e.Subscribe<T>(cfg =>
{
cfg.TopicTags.Add("TestTag", "test");
});
但那也不管用
我知道可以选择使用MassTransit订阅预先创建的主题,但我觉得这是一个限制,我希望使用MassTransit的灵活性来管理这些类型
这里有我遗漏的东西吗?
谢谢。要配置主题标记/属性,您需要配置主题拓扑,这是通过配置发布拓扑完成的 例如,要为消息类型添加标记,可以指定:
configurator.Publish<Message>(p =>
{
p.TopicTags.Add("hello", "world");
});
在新版本中工作。在6.0.2中,该解决方案不起作用。尽管如此,我还是设法升级了这个软件包,这对我很有帮助。非常感谢。