All Projects → cloudamqp → rabbitmq-vshovel

cloudamqp / rabbitmq-vshovel

Licence: other
RabbitMQ vShovel plugin

Programming Languages

erlang
1774 projects
Makefile
30231 projects

Projects that are alternatives of or similar to rabbitmq-vshovel

rabbitmq-peer-discovery-etcd
etcd-based peer discovery backend for RabbitMQ 3.7.0+
Stars: ✭ 15 (-42.31%)
Mutual labels:  rabbitmq, rabbitmq-plugin
rabbitmq-peer-discovery-aws
AWS-based peer discovery backend for RabbitMQ 3.7.0+
Stars: ✭ 23 (-11.54%)
Mutual labels:  rabbitmq, rabbitmq-plugin
rabbitmq-web-stomp-examples
www.rabbitmq.com/
Stars: ✭ 90 (+246.15%)
Mutual labels:  rabbitmq, rabbitmq-plugin
rabbitmq-management-agent
RabbitMQ Management Agent
Stars: ✭ 16 (-38.46%)
Mutual labels:  rabbitmq, rabbitmq-plugin
rabbitmq-stomp
RabbitMQ STOMP plugin
Stars: ✭ 49 (+88.46%)
Mutual labels:  rabbitmq, rabbitmq-plugin
rabbitmq-tracing
RabbitMQ Tracing
Stars: ✭ 48 (+84.62%)
Mutual labels:  rabbitmq, rabbitmq-plugin
iris
Watch on Kubernetes events, filter and send them as standard wehbook to any system
Stars: ✭ 57 (+119.23%)
Mutual labels:  webhook
Cerberus
A complete Grabber, sending data to a TCP server that you have to host and stocking all in a database.
Stars: ✭ 32 (+23.08%)
Mutual labels:  webhook
commit-hawk
Notify when watched file(s) change in a GitHub repo
Stars: ✭ 24 (-7.69%)
Mutual labels:  webhook
node-twitch-webhook
A Node.js library for Twitch Helix Webhooks
Stars: ✭ 31 (+19.23%)
Mutual labels:  webhook
Distributed-eStore
Ecommerce SPA application with a microservices architecture implemented from scratch. Tech stack - Docker, Consul, Fabio, RabbitMQ, .Net Core, Mediatr, CQRS, React, Redux. .NET Core Microservices template, .NET React Redux, .NET RabbitMQ, .NET Distributed, Docker, .NET Core with Docker.
Stars: ✭ 99 (+280.77%)
Mutual labels:  rabbitmq
GuessWhich
Evaluating Visual Conversational Agents via Cooperative Human-AI Games
Stars: ✭ 20 (-23.08%)
Mutual labels:  rabbitmq
dokku-rabbitmq
a rabbitmq plugin for dokku
Stars: ✭ 41 (+57.69%)
Mutual labels:  rabbitmq
go-teams-notify
A package to send messages to a Microsoft Teams channel
Stars: ✭ 29 (+11.54%)
Mutual labels:  webhook
express-typescript-seed
Node API seed written in typescript using Express, Sequelize, Passport, and RabbitMQ
Stars: ✭ 67 (+157.69%)
Mutual labels:  rabbitmq
rocketchat-gitlab-hook
Add GitLab notifications via a new WebHook in Rocket.Chat
Stars: ✭ 80 (+207.69%)
Mutual labels:  webhook
react-redux-aspnet-core-webapi
No description or website provided.
Stars: ✭ 34 (+30.77%)
Mutual labels:  rabbitmq
epiphany
Cloud and on-premises automation for Kubernetes centered industrial grade solutions.
Stars: ✭ 114 (+338.46%)
Mutual labels:  rabbitmq
Rebus.RabbitMq
🚌 RabbitMQ transport for Rebus
Stars: ✭ 51 (+96.15%)
Mutual labels:  rabbitmq
facebook-send-api-emulator
Facebook Messenger Emulator & Facebook Send API Emulator functionality allowing you to test web hooks on developer's machine.
Stars: ✭ 24 (-7.69%)
Mutual labels:  webhook

RabbitMQ Variable Shovel

RabbitMQ vShovel is a WAN-friendly tool for moving messages from a queue residing on an AMQP source broker, to a remote endpoint of any desired type, such as an HTTP endpoint.

Each endpoint is an implementation of the rabbit_vshovel_endpoint behaviour. The following message shovelling operations and protocol endpoints are currently supported, with more to be introduced as the plugin further grows:

Supported RabbitMQ Versions

This plugin is compatible with RabbitMQ 3.5.x and 3.6.x.

Usage

Packaging

Download pre-compiled versions from https://github.com/cloudamqp/rabbitmq-vshovel/releases

Build

Clone and build the plugin by executing make. To create a package, execute make dist and find the .ez package file in the plugins directory.

Configuration

1. Dynamic configuration

Unix

rabbitmqctl set_parameter vshovel my-vshovel \
  '{"src-uri": "amqp://fred:[email protected]/my_vhost",
    "src-queue": "my-queue", "dest-type":"http",
    "dest-uri":"http://remote-host1.domain", "dest-vsn": "1.1",
    "dest-args": {"method": "post", "keep_alive_timeout" : 10000}}'

Windows

rabbitmqctl set_parameter vshovel my-vshovel ^
  "{""src-uri"": ""amqp://fred:[email protected]/my_vhost"", ^
    ""src-queue"": ""my-queue"", ""dest-type"":""http"", ^
    ""dest-uri"":""http://remote-host1.domain"", ""dest-vsn"": ""1.1"", ^
    ""dest-args"": {""method"": ""post"", ""keep_alive_timeout"":10000}}"

2. Static configuration

[{rabbitmq_vshovel,
     [{vshovels,
         [{my_first_vshovel,
              [{sources,
                  [{brokers,
                      ["amqp://harry:[email protected]/my_vhost",
                       "amqp://john:[email protected]/my_vhost"]},
                   {arguments,
                      [{declarations,
                          [{'exchange.declare',
                              [{exchange, <<"my_fanout">>},
                               {type,      <<"fanout">>},
                                durable]},
                           {'queue.declare',
                              [{arguments,
                                    [{<<"x-message-ttl">>, long, 60000}]}]},
                           {'queue.bind',
                              [{exchange, <<"my_direct">>},
                               {queue,    <<>>}]}
                           ]}]}]},
              {destinations,
                  [{protocol,  http},
                   {address,   "https://56.12.331.123/server"},
                   {arguments, [{keepalive, 10},
                   {method,    post},
                   {ssl,       []}]}]},
              {queue,               <<>>},
              {prefetch_count,      10},
              {ack_mode,            on_confirm},
              {publish_properties,  [{delivery_mode, 2}]},
              {add_forward_headers, true},
              {publish_fields,      [{exchange,   <<"my_direct">>},
                                     {routing_key, <<"from_shovel">>}]},
              {reconnect_delay,     5}]}
          ]}
]}].

3. Verification

Once configured, verify status of the shovel using the following command (on a Unix-like OS):

rabbitmqctl eval 'rabbit_vshovel_status:status().'

and on Windows;

rabbitmqctl eval "rabbit_vshovel_status:status()."

License and Copyright

(c) 84codes AB and Erlang Solutions Ltd. 2016-2017

https://www.cloudamqp.com https://www.erlang-solutions.com/

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].