What are the Slack Archives?
Itβs a history of our time together in the Slack Community! Thereβs a ton of knowledge in here, so feel free to search through the archives for a possible answer to your question.
Because this space is not active, you wonβt be able to create a new post or comment here. If you have a question or want to start a discussion about something, head over to our categories and pick one to post in! You can always refer back to a post from Slack Archives if needed; just copy the link to use it as a reference..
How can we approach debugging ``` Fatal error: Uncaught PhpAmqpLib\Exception\AMQPConnectionClosedExc
Comments
-
maybe check the rabbit mq logs?
when does it happen?0 -
that happens when running
vendor/bin/console -vvv queue:task:start <rabbitqueuename>
0 -
but no issues seen in rabbit logs
0 -
and the container/host running the command can see rabbit otherwise?
0 -
could it be a configuration issue?
0 -
yes, most of the queues run fine
0 -
eventually they hit a queue item that causes this error, and then the queue cannot progress
0 -
could it be a configuration issue?
well that's one of the guesses, but I have no idea what to look for
0 -
if the other queues run fine then I guess not
0 -
sounds like Rabbit is dying though?
0 -
you could maybe enable event logging and see which event is causing the issue?
0 -
0
-
I tried to change heartbeat to 0,
\Spryker\Client\RabbitMq\RabbitMqConfig::AMQP_STREAM_CONNECTION_READ_WRITE_TIMEOUT
to 3600
changed event bulk size from 500 to 1
but still the problem can be reproduced0 -
and dies way earlier than 1 hour
0 -
we had issues with rabbit running out of memory and dying (too many events)
0 -
but if you can isolate a queue item that reliably causes the error that sounds look a good first step I guess, if not the problem is elsewhere
0 -
ah, good idea, let me check the memory usage (although I think I would see this in logs)
0 -
RabbitMQ might block requests, e.g. for memory reasons. then it blocks additional requests (even consuming messages) for a while until cause for blocking is gone.
about memory: you should set the memory threshold (set_vm_memory_high_watermark
) to 80% of the available memory of the RabbitMQ instance.
when using RabbitMQ Docker image, there is the env varRABBITMQ_VM_MEMORY_HIGH_WATERMARK
for this purpose.
see also https://www.rabbitmq.com/memory.html0 -
going to check another thing (reconnect instead of throwing the expection) and see how that goes. if that fails I will try to scale the server up and see how that goes
0 -
so reconnection didn't work which proven what @UKGT7RC7P suggested (memory issues) and i rescaled rabbit host to more ram, which allowed the queue to run successfully
0 -
which is really really bad, as there was no meaningful errors anywhere to prove it (e.g. what ES does when it's out of RAM is to shout about it in logs)
0 -
Is it locally? We saw this problem on AWS because connection on load balancer get closed if the open connection idles for a too long time and doesn't send any data
0 -
no, this is on live DO server, and it wasn't because of the long requests, as I was able to keep the connection alive for longer time
0 -
well, WAS. we already scaled up which helped
0
Categories
- All Categories
- 42 Getting Started & Guidelines
- 7 Getting Started in the Community
- 8 Additional Resources
- 7 Community Ideas and Feedback
- 76 Spryker News
- 929 Developer Corner
- 787 Spryker Development
- 89 Spryker Dev Environment
- 362 Spryker Releases
- 3 Oryx frontend framework
- 35 Propel ORM
- 68 Community Projects
- 3 Community Ideation Board
- 30 Hackathon
- 3 PHP Bridge
- 6 Gacela Project
- 26 Job Opportunities
- 3.2K π Slack Archives
- 116 Academy
- 5 Business Users
- 370 Docker
- 551 Slack General
- 2K Help
- 75 Knowledge Sharing
- 6 Random Stuff
- 4 Code Testing
- 32 Product & Business Questions
- 70 Spryker Safari Questions
- 50 Random