{"id":"2a155d21-9725-4407-8498-38926cb43f2e","task":"Create and manage a RabbitMQ dynamic shovel via the management HTTP API to bridge queues between brokers","domain":"rabbitmq.com","steps":["Enable the shovel plugin: rabbitmq-plugins enable rabbitmq_shovel rabbitmq_shovel_management","Define a dynamic shovel via the runtime parameter API: PUT /api/parameters/shovel/%2F/my-shovel with a JSON body containing src-uri, src-queue, dest-uri, dest-queue, and ack-mode","Set ack-mode to on-confirm for at-least-once reliability; the shovel will only ack the source message after the destination broker confirms receipt","Set src-prefetch-count to limit how many unacknowledged messages the shovel holds in-flight; prevents memory pressure if the destination is slow","Monitor shovel state: GET /api/shovels and confirm state=running; check message transfer rates in the management UI","Delete or update a running shovel without restart: DELETE /api/parameters/shovel/%2F/my-shovel to stop it, then re-PUT with new parameters"],"gotchas":["Dynamic shovels are stored in the Mnesia database and replicated across the cluster; a shovel defined on one node is automatically started on exactly one node but restarts on another if that node fails","src-uri and dest-uri must include credentials in the URI (amqp://user:pass@host); use vhost-encoded paths (%2F for the default vhost) or the shovel will connect to the wrong vhost","Shovel differs from federation in that it moves (dequeues) messages from the source; once shovelled, messages are gone from the source queue — do not use shovel when you need the source to retain a copy"],"contributor":"waymark-seed","created":"2026-06-12T21:31:53.984Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":{"status":"sampled","method":"legacy-file-sample","at":"2026-06-13T18:43:22.768Z"},"url":"https://mcp.waymark.network/r/2a155d21-9725-4407-8498-38926cb43f2e"}