The RabbitMQ source connector receives messages from RabbitMQ clusters and writes messages to Pulsar topics.

Configuration

The configuration of the RabbitMQ source connector has the following properties.

Property

NameTypeRequiredSensitiveDefaultDescription
connectionNameStringtruefalse” ” (empty string)The connection name.
hostStringtruefalse” ” (empty string)The RabbitMQ host.
portinttruefalse5672The RabbitMQ port.
virtualHostStringtruefalse/The virtual host used to connect to RabbitMQ.
usernameStringfalsetrueguestThe username used to authenticate to RabbitMQ.
passwordStringfalsetrueguestThe password used to authenticate to RabbitMQ.
queueNameStringtruefalse” ” (empty string)The RabbitMQ queue name that messages should be read from or written to.
requestedChannelMaxintfalsefalse0The initially requested maximum channel number.

0 means unlimited.
requestedFrameMaxintfalsefalse0The initially requested maximum frame size in octets.

0 means unlimited.
connectionTimeoutintfalsefalse60000The timeout of TCP connection establishment in milliseconds.

0 means infinite.
handshakeTimeoutintfalsefalse10000The timeout of AMQP0-9-1 protocol handshake in milliseconds.
requestedHeartbeatintfalsefalse60The requested heartbeat timeout in seconds.
prefetchCountintfalsefalse0The maximum number of messages that the server delivers.

0 means unlimited.
prefetchGlobalbooleanfalsefalsefalseWhether the setting should be applied to the entire channel rather than each consumer.

Example

Before using the RabbitMQ source connector, you need to create a configuration file through one of the following methods.

  • JSON

    {
        "host": "localhost",
        "port": "5672",
        "virtualHost": "/",
        "username": "guest",
        "password": "guest",
        "queueName": "test-queue",
        "connectionName": "test-connection",
        "requestedChannelMax": "0",
        "requestedFrameMax": "0",
        "connectionTimeout": "60000",
        "handshakeTimeout": "10000",
        "requestedHeartbeat": "60",
        "prefetchCount": "0",
        "prefetchGlobal": "false"
    }
    
  • YAML

    configs:
        host: "localhost"
        port: 5672
        virtualHost: "/"
        username: "guest"
        password: "guest"
        queueName: "test-queue"
        connectionName: "test-connection"
        requestedChannelMax: 0
        requestedFrameMax: 0
        connectionTimeout: 60000
        handshakeTimeout: 10000
        requestedHeartbeat: 60
        prefetchCount: 0
        prefetchGlobal: "false"