Hello,
I am having issues with SQS. It seems like no matter how I send a SQS message, it is not going to the queue.
- Send from SQS in the console: Amazon SQS > Queues > MyQueue > Send and receive messages
- Send from Lambda function: I have a dispatcher lambda function set up where the message to be sent is in the test section of Lambdas. This gives the most information. It looks like there is some kind of time out error happening.
- Send from my Application: My application has message-sending built in throughout the codebase for certain features. None of those triggers seem to be doing anything.
None of these messages are showing up in the queue. How did I check?
- In the Queues page, check the Messages Available and Messages in Flight (unchanged)
- In the Send and receive messages page, Poll for messages. Retrieved nothing. Tried adjusting timeouts and max message count. Still nothing.
- In the Application, I am not receiving any messages.
All of this was functional until last week. I noticed this happening since at least earlier this week on Monday (today is Friday).
I don't remember changing any network configurations or anything related to SQS. On Wednesday, there was a delay in messages getting to the queue but they did eventually show up. Today they do not.
All the resources are in US-East-2 (Ohio)
Lambda timeout error:
{
"errorType": "Error",
"errorMessage": "connect ETIMEDOUT",
"trace": [
"Error: connect ETIMEDOUT",
" at Connection._handleConnectTimeout (/var/task/node_modules/mysql/lib/Connection.js:409:13)",
" at Object.onceWrapper (events.js:420:28)",
" at Socket.emit (events.js:314:20)",
" at Socket.EventEmitter.emit (domain.js:483:12)",
" at Socket._onTimeout (net.js:483:8)",
" at listOnTimeout (internal/timers.js:554:17)",
" at processTimers (internal/timers.js:497:7)",
" --------------------",
" at Protocol._enqueue (/var/task/node_modules/mysql/lib/protocol/Protocol.js:144:48)",
" at Protocol.handshake (/var/task/node_modules/mysql/lib/protocol/Protocol.js:51:23)",
" at Connection.connect (/var/task/node_modules/mysql/lib/Connection.js:116:18)",
" at Object.<anonymous> (/var/task/index.js:13:8)",
" at Module._compile (internal/modules/cjs/loader.js:999:30)",
" at Object.Module._extensions..js (internal/modules/cjs/loader.js:1027:10)",
" at Module.load (internal/modules/cjs/loader.js:863:32)",
" at Function.Module._load (internal/modules/cjs/loader.js:708:14)",
" at Module.require (internal/modules/cjs/loader.js:887:19)",
" at require (internal/modules/cjs/helpers.js:74:18)"
]
}
What are the next steps here? What should I try next?
Unless someone created another instance of the environment and connected to the queues, I don't think it's likely there is another consumer.
I checked the queue metrics. It looks like no messages have been sent to the queue since Wednesday, which coincidentally is the last day I saw things working. I also tried sending a message now and could not verify in any way that the message was sent or received.
I would suggest creating a support case.
How do I create a support case?
"Technical support is unavailable under the Basic Support plan. Upgrade your plan to gain access to AWS technical support, architectural guidance, and more."
So is there no way to get help on this without paying for a support plan?
Here on the forums we don't have access to your details; nor do we have the same access that the support team does to support you. We can only give general advice because we cannot see how the underlying services are configured.