Connect to RabbitMQ for debugging

For debugging purposes, it is useful to directly connect to a service instance in one of the following ways:

  • Connect from your local development environment
  • Connect from the application
  • Connect from your PHP application

Connect from your local development environment

  1. Log in to the magento-cloud CLI and project:

    magento-cloud login
    
  2. Check out the environment with RabbitMQ installed and configured.

    magento-cloud environment:checkout <environment-id>
    
  3. Use SSH to connect to the Cloud environment:

    magento-cloud ssh
    
  4. Retrieve the RabbitMQ connection details and login credentials from the $MAGENTO_CLOUD_RELATIONSHIPS variable:

    echo $MAGENTO_CLOUD_RELATIONSHIPS | base64 -d | json_pp
    

    or

    php -r 'print_r(json_decode(base64_decode($_ENV["MAGENTO_CLOUD_RELATIONSHIPS"])));'
    

    In the response, find the RabbitMQ information, for example:

    {
       "rabbitmq" : [
          {
             "password" : "guest",
             "ip" : "246.0.129.2",
             "scheme" : "amqp",
             "port" : 5672,
             "host" : "rabbitmq.internal",
             "username" : "guest"
          }
       ]
    }
    
  5. Enable local port forwarding to RabbitMQ (if your project is located on a different region such as US-3, EU-5, or AP-3 region, substitute us-3/eu-5/ap-3 for us)

    ssh -L <port-number>:rabbitmq.internal:<port-number> <project-ID>-<branch-ID>@ssh.us.magentosite.cloud
    

    An example for accessing the RabbitMQ management web interface at http://localhost:15672 is:

    ssh -L 15672:rabbitmq.internal:15672 <project-ID>-<branch-ID>@ssh.us.magentosite.cloud
    
  6. While the session is open, you can start a RabbitMQ client of your choice from your local workstation, configured to connect to the localhost:<portnumber> using the port number, username, and password information from the MAGENTO_CLOUD_RELATIONSHIPS variable.

Connect from the application

To connect to RabbitMQ running in an application, install a client, such as amqp-utils, as a project dependency in your .magento.app.yaml file.

For example,

dependencies:
    ruby:
        amqp-utils: "0.5.1"

When you log in to your PHP container, you enter any amqp- command available to manage your queues.

Connect from your PHP application

To connect to RabbitMQ using your PHP application, add a PHP library to your source tree.

Previous pageOpenSearch

Commerce