如何在 MassTransist 上显示总线配置
How to display Bus configuration on MassTransist
我在 netcore 控制台应用程序上将 MassTransit 与 Rabbit MQ v5.1.4 结合使用。
假设我有以下内容:
public MassTransitConfigurator()
{
bus = Bus.Factory.CreateUsingRabbitMq(sbc =>
{
var host = sbc.Host(Settings.Rabbit.Uri, h =>
{
h.Username(Settings.Rabbit.User);
h.Password(Settings.Rabbit.Pass);
});
sbc.ReceiveEndpoint(host, Settings.Rabbit.Queue, e =>
{
e.Consumer<FooConsumer>();
e.Consumer<BarConsumer>();
});
sbc.ReceiveEndpoint(host, Settings.Rabbit.FaultQueue, e =>
{
e.Consumer<FooFaultConsumer>();
e.Consumer<BarFaultConsumer>();
});
});
}
当我调用可以访问 bus
实例的方法时,我想记录以下内容:
public void StartListening()
{
bus.Start();
// What to do here so that we get something like:
Console.WriteLine($"Listening on: {Settings.Rabbit.Uri}");
Console.WriteLine($" Queues: ");
Console.WriteLine($" - {Settings.Rabbit.Queue}");
Console.WriteLine($" - {Settings.Rabbit.FaultQueue}");
Console.WriteLine($" Event Types: ");
Console.WriteLine($" - {Foo}");
Console.WriteLine($" - {Bar}");
}
但从 bus
获取数据而不是在日志中手动编码。
我看过官方documentation,但我没有看到这样的东西。
备注:
Console.WriteLine
将是一个记录器 class。
Settings
class 是从配置中读取的值。
您可以将总线配置输出为对象图,您可以使用 JSON.NET:
将其转换为 JSON
http://masstransit-project.com/MassTransit/troubleshooting/show-config.html
我在 netcore 控制台应用程序上将 MassTransit 与 Rabbit MQ v5.1.4 结合使用。
假设我有以下内容:
public MassTransitConfigurator()
{
bus = Bus.Factory.CreateUsingRabbitMq(sbc =>
{
var host = sbc.Host(Settings.Rabbit.Uri, h =>
{
h.Username(Settings.Rabbit.User);
h.Password(Settings.Rabbit.Pass);
});
sbc.ReceiveEndpoint(host, Settings.Rabbit.Queue, e =>
{
e.Consumer<FooConsumer>();
e.Consumer<BarConsumer>();
});
sbc.ReceiveEndpoint(host, Settings.Rabbit.FaultQueue, e =>
{
e.Consumer<FooFaultConsumer>();
e.Consumer<BarFaultConsumer>();
});
});
}
当我调用可以访问 bus
实例的方法时,我想记录以下内容:
public void StartListening()
{
bus.Start();
// What to do here so that we get something like:
Console.WriteLine($"Listening on: {Settings.Rabbit.Uri}");
Console.WriteLine($" Queues: ");
Console.WriteLine($" - {Settings.Rabbit.Queue}");
Console.WriteLine($" - {Settings.Rabbit.FaultQueue}");
Console.WriteLine($" Event Types: ");
Console.WriteLine($" - {Foo}");
Console.WriteLine($" - {Bar}");
}
但从 bus
获取数据而不是在日志中手动编码。
我看过官方documentation,但我没有看到这样的东西。
备注:
Console.WriteLine
将是一个记录器 class。Settings
class 是从配置中读取的值。
您可以将总线配置输出为对象图,您可以使用 JSON.NET:
将其转换为 JSONhttp://masstransit-project.com/MassTransit/troubleshooting/show-config.html