WalFlow.Sinks.RabbitMq
0.1.0-alpha.alpha.20260708090623
This is a prerelease version of WalFlow.Sinks.RabbitMq.
dotnet add package WalFlow.Sinks.RabbitMq --version 0.1.0-alpha.alpha.20260708090623
NuGet\Install-Package WalFlow.Sinks.RabbitMq -Version 0.1.0-alpha.alpha.20260708090623
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="WalFlow.Sinks.RabbitMq" Version="0.1.0-alpha.alpha.20260708090623" />
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="WalFlow.Sinks.RabbitMq" Version="0.1.0-alpha.alpha.20260708090623" />
<PackageReference Include="WalFlow.Sinks.RabbitMq" />
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add WalFlow.Sinks.RabbitMq --version 0.1.0-alpha.alpha.20260708090623
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
#r "nuget: WalFlow.Sinks.RabbitMq, 0.1.0-alpha.alpha.20260708090623"
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package WalFlow.Sinks.RabbitMq@0.1.0-alpha.alpha.20260708090623
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=WalFlow.Sinks.RabbitMq&version=0.1.0-alpha.alpha.20260708090623&prerelease
#tool nuget:?package=WalFlow.Sinks.RabbitMq&version=0.1.0-alpha.alpha.20260708090623&prerelease
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
WalFlow.Sinks.RabbitMq
RabbitMQ sink for WalFlow CDC events.
Configuration
{
"RabbitMqSink": {
"HostName": "localhost",
"Port": 5672,
"VirtualHost": "/",
"Authentication": {
"Mode": "UserPassword",
"UserName": "guest",
"Password": "guest",
"UseTls": false,
"SslServerName": null,
"SslCertPath": null,
"SslCertPassphrase": null
},
"ExchangeName": "walflow.cdc",
"ExchangeType": "direct",
"AutoDeclareExchange": true,
"Partitioning": {
"Strategy": "Table"
}
}
}
The resolved shared partition token is used as RabbitMQ routing key.
Settings
| Setting | Type | Default | Supported values | Notes |
|---|---|---|---|---|
HostName |
string |
"localhost" |
valid host name/IP | RabbitMQ broker host |
Port |
int |
5672 |
positive integer | Broker port |
VirtualHost |
string |
"/" |
valid vhost | Target vhost |
Authentication |
RabbitMqAuthenticationOptions |
{} |
object | Preferred auth/TLS container |
Authentication.Mode |
RabbitMqAuthenticationMode |
UserPassword |
UserPassword, External |
External uses SASL EXTERNAL with TLS client cert |
Authentication.UserName |
string? |
"guest" |
non-empty string | Required when Authentication.Mode=UserPassword |
Authentication.Password |
string? |
"guest" |
non-empty string | Required when Authentication.Mode=UserPassword |
Authentication.UseTls |
bool? |
false |
true, false |
Must be true for External auth |
Authentication.SslServerName |
string? |
null |
host name | Optional TLS server name override; defaults to HostName |
Authentication.SslCertPath |
string? |
null |
file path | Required when Authentication.Mode=External |
Authentication.SslCertPassphrase |
string? |
null |
any string | Optional certificate passphrase |
ClientProvidedName |
string? |
null |
any string | Optional client connection name |
ExchangeName |
string |
"walflow.cdc" |
any exchange name | Target exchange |
ExchangeType |
string |
"direct" |
direct, topic, fanout, headers |
Exchange type |
ExchangeDurable |
bool |
true |
true, false |
Exchange durability |
ExchangeAutoDelete |
bool |
false |
true, false |
Auto-delete exchange when unused |
AutoDeclareExchange |
bool |
true |
true, false |
Declare exchange on startup |
MandatoryPublish |
bool |
false |
true, false |
Publish with mandatory flag |
PersistentMessages |
bool |
true |
true, false |
Set persistent delivery mode |
ContentType |
string |
"application/json" |
any MIME type | Published message content type |
IncludeHeaders |
bool |
true |
true, false |
Adds operation and table headers |
MaxRetryAttempts |
int |
3 |
>= 0 |
Publish retries |
RetryDelayMs |
int |
250 |
>= 0 |
Delay between retries |
Partitioning |
SinkPartitioningOptions |
Strategy=Single |
Single, Fixed, Connector, Schema, Table, Operation |
Resolved token is routing key |
Authentication Examples
Username/password (default):
{
"RabbitMqSink": {
"HostName": "rabbit.example.com",
"Port": 5672,
"Authentication": {
"Mode": "UserPassword",
"UserName": "walflow",
"Password": "secret"
},
"ExchangeName": "walflow.cdc"
}
}
External auth with TLS client certificate:
{
"RabbitMqSink": {
"HostName": "rabbit.example.com",
"Port": 5671,
"Authentication": {
"Mode": "External",
"UseTls": true,
"SslServerName": "rabbit.example.com",
"SslCertPath": "/etc/rabbitmq/client.pfx",
"SslCertPassphrase": "changeit"
},
"ExchangeName": "walflow.cdc"
}
}
Inline DI Registration
services.AddSingleton<ISink>(sp =>
{
var options = Options.Create(new RabbitMqSinkOptions
{
HostName = "localhost",
ExchangeName = "walflow.cdc"
});
return new RabbitMqSink(
options,
sp.GetRequiredService<ILogger<RabbitMqSink>>());
});
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
-
net10.0
- Microsoft.Extensions.DependencyInjection (>= 10.0.9)
- Microsoft.Extensions.DependencyInjection.Abstractions (>= 10.0.9)
- Microsoft.Extensions.Logging (>= 10.0.9)
- Microsoft.Extensions.Logging.Abstractions (>= 10.0.9)
- Microsoft.Extensions.Options (>= 10.0.9)
- RabbitMQ.Client (>= 7.2.1)
- WalFlow.Abstractions (>= 0.1.0-alpha.alpha.20260708090623)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on WalFlow.Sinks.RabbitMq:
| Package | Downloads |
|---|---|
|
WalFlow
Meta-package that pulls in the full WalFlow CDC stack for consumers who want the default everything-included setup. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 0.1.0-alpha.alpha... | 84 | 7/8/2026 |
| 0.1.0-alpha.alpha... | 87 | 3/30/2026 |