Маршрут сообщений о переписке с обменом заголовками
Мне нравится направлять мои сообщения с мертвыми буквами в очереди dlx в соответствии с исходным именем очереди. Моя настройка:
Сообщение мертвой буквы выглядит следующим образом
{
"payload_bytes": 44,
"redelivered": true,
"exchange": "dlx",
"routing_key": "foo-exchange",
"properties": {
"delivery_mode": 2,
"headers": {
"x-death": [
{
"count": 1,
"reason": "rejected",
"queue": "foo-queue",
"time": 1466502931,
"exchange": "foo-exchange",
"routing-keys": ["foo-exchange"]
}
]
}
},
}
У меня есть следующие привязки:
{
{
"source": "header-dlx",
"vhost": "/",
"destination": "foo-dlx-queue",
"destination_type": "queue",
"routing_key": "",
"arguments": {
"x-death": [
{
"queue": "foo-queue"
}
]
}
},
{
"source": "header-dlx",
"vhost": "/",
"destination": "bar-dlx-queue",
"destination_type": "queue",
"routing_key": "",
"arguments": {
"x-death": [
{
"queue": "bar-queue"
}
]
}
}
}
Когда я доставляю сообщения о мертвых письмах на мой обмен header-dlx, который представляет собой простой обмен заголовками, я ожидаю, что сообщение будет перенесено в foo-dlx-queue
, но сообщение было помещено в обе очереди dlx.
Есть идеи, что я делаю не так?