Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message
Rabbitmq Management Client

Rabbitmq Management Client Laravel Package

alchemy/rabbitmq-management-client

PHP client for the RabbitMQ Management HTTP API. Query and manage queues, exchanges and more via synchronous Guzzle requests or asynchronous ReactPHP promises. Includes a Guarantee helper to ensure resources exist and match desired settings.

View on GitHub
Deep Wiki
Context7

A OO PHP client for the RabbitMQ Management Plugin API

Frequently asked questions about Rabbitmq Management Client
Can this package be used to monitor RabbitMQ queues in a Laravel application?
Yes, this package provides both synchronous (Guzzle-based) and asynchronous (ReactPHP-based) clients to query RabbitMQ’s management API. You can use it to fetch queue metrics like message counts, consumer lag, or node statuses, which can be integrated into Laravel’s monitoring tools like Telescope or custom dashboards.
Does this work with Laravel’s built-in queue system (e.g., QUEUE_CONNECTION=rabbitmq)?
This package doesn’t replace Laravel’s queue drivers but complements them. You can use it alongside Laravel’s RabbitMQ queue driver to programmatically manage queues (e.g., purging, creating, or configuring) that Laravel workers consume. It’s best for observability or dynamic queue adjustments, not core queue operations.
Is this package compatible with PHP 8.x and Laravel 9/10?
The package’s last release was in 2017, so compatibility with PHP 8.x or modern Laravel versions isn’t guaranteed. You’ll need to test it thoroughly, especially for features like named arguments or union types. If issues arise, you may need to fork or patch the package.
How do I integrate this into Laravel for real-time monitoring?
For real-time monitoring, use the asynchronous ReactPHP client. Pair it with Laravel’s event loop (e.g., via `spatie/laravel-react`) or run it in a separate process. Schedule periodic checks or trigger them via Laravel events to update your application’s state dynamically.
What’s the difference between synchronous and asynchronous clients?
The synchronous client uses Guzzle for immediate HTTP requests, ideal for Laravel’s traditional request-response workflows. The asynchronous client uses ReactPHP for non-blocking calls, suited for real-time monitoring or high-frequency polling. Choose based on whether you need blocking or non-blocking operations.
Can I use this to dynamically create or delete queues in Laravel?
Yes, the package includes methods like `addQueue()`, `deleteQueue()`, and the `Guarantee` helper to ensure queues match desired settings. You can bind this to Laravel’s service container or use it in commands/jobs to manage queues programmatically, such as purging stale queues or adjusting TTLs.
Are there alternatives for managing RabbitMQ in Laravel?
For direct AMQP access, consider `php-amqplib`, which integrates natively with RabbitMQ’s protocol. For Laravel-specific queue management, tools like `laravel-horizon` (for monitoring) or `vladimir-yuldashev/laravel-queue-monitor` may fit better. This package is unique for HTTP API-based management.
How do I handle errors if RabbitMQ is down during a Laravel request?
Wrap API calls in try-catch blocks to handle exceptions like `EntityNotFoundException` or network errors. For critical workflows, implement retries with exponential backoff or fallback to a secondary broker. The synchronous client is easier to debug in Laravel’s context.
Does this package support RabbitMQ 3.12+ features like Federation or Mirroring?
Unlikely, as the package hasn’t been updated since 2017. RabbitMQ’s management API may have evolved, so test thoroughly or fork the package to add support for newer features. Check the [API browser](https://rabbitmq-management-api-client.readthedocs.org) for unsupported endpoints.
How do I install and configure this in Laravel?
Install via Composer: `composer require alchemy/rabbitmq-management-client`. Configure the client URL in your `.env` (e.g., `RABBITMQ_MANAGEMENT_URL=http://localhost:15672`). Bind it to Laravel’s service container in a provider or use it directly in commands/jobs. For async, install `react/event-loop` separately.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
codifyo/ts-generator-bundle
andydefer/laravel-cluster
testo/fiber
mintobit/jobqueue
a4sex/maintenance-bundle
a4sex/entity-date-update
a4sex/client-identifier
a4sex/base-utilites
a4sex/key-value-storage
a4sex/micro-status
chilldev/dependency-injection-extra
datinglibre/datinglibre-app-api
biberltd/corebundle
bricre/symfony-bundle-test
biberltd/logbundle
dominium/http-adapter-bundle
dominium/google-analytics
a4sex/auto-clean-entity
christhompsontldr/laravel-inky
spatie/mailcoach-vapor