获取排队作业总数 laravel -- RabbitMQ

get total number of queued jobs laravel -- RabbitMQ

Laravel 的新手,我正在使用 RabbitMQ,所以,我想要的是在某些特定的 queue 中获得 queued jobs 的总数。

这是我的连接详情

RABBITMQ_HOST=Server
RABBITMQ_PORT=5672
RABBITMQ_VHOST=/
RABBITMQ_LOGIN=user
RABBITMQ_PASSWORD=password
RABBITMQ_QUEUE=testQueue
RABBITMQ_EXCHANGE_NAME=testExchnge

任何线索,或指向一些教程以获得排队的作业总数。

谢谢

对于正在寻找相同事物的任何其他人,找到了解决方案。希望这会有所帮助。

我找到了不错的 Rrabbit MQ HTTP API。那里有很多端点。

要从 Queues 获取消息,这是我的代码。

//laravel[lumen] based code.
public function loadQueueStats()
{
    $url = "http://" . env('RABBITMQ_HOST', '127.0.0.1') . ":" . env('RABBITMQ_PORT', 15672) . "/api/queues";
    $username = env('RABBITMQ_LOGIN', 'guest');
    $password = env('RABBITMQ_PASSWORD', 'guest');
    $response = $this->guzzle->get(
        $url,
        [
            'auth' => [
                $username,
                $password
            ],
        ]
    );
    return $response->json();
}

但是获取特定队列呢?

喜欢; /api/queues/vhost/name/get

接受以下参数;

{"count":5,"ackmode":"ack_requeue_true","encoding":"auto","truncate":50000}