I followed the direction on creating an SQS queue (described on this page: https://rubyonjets.com/docs/events/sqs/). It set up beautifully - very simple, quick! I used the “sqs_event :generate_queue” declaration.
Generating an event works fine, calls the Lambda method, but the event is NilClass.
I dug more deeply into Jets. The generated “handlers” folder which has the entry point to the Lambda is receiving the event just fine. So, it is working, but Jets is not delivering the event to my handler function.
class HardJob < ApplicationJob
class_timeout 30 # must be less than or equal to the SQS queue default timeout
sqs_event :generate_queue
def lift
puts "lift event #{JSON.dump(event)}"
end
end
Deployed it and sent a message to the queue and saw it in the logs:
2021-10-07 22:01:37 UTC 2021/10/07/[$LATEST]02ba90e647c54c08b07967573af6e765 START RequestId: dd30590a-0b8f-59a4-8c82-00d37bf33280 Version: $LATEST
2021-10-07 22:01:37 UTC 2021/10/07/[$LATEST]02ba90e647c54c08b07967573af6e765 lift event {"Records":[{"messageId":"ba0a2a15-2986-4f23-bf44-440443aa4ab4","receiptHandle":"AQEBVb6YfplY6KGZz0YPxLeDN6BIh9amj9ZABqeKNyTSAk412oEsLBmStR+0rmOJyCJruyBvlmLa4FZBDaRrmMj86TO165iruNc170XxrrVOHB+BGVtqJhc3hapRt4eGygeoveLn8exr7hFeqjeUYFwa0Kx/sk8IxOWp5+FVFJZnGxNAcgfSmdjg85qU3iF8L7BEAy7paLJeiPe7dI1A9xtMPLJidygrj7K89blbnQaV7LAoRmvLDrbZxxuhHclX3xcCqzNHnR8stoumzNrN/UxLs0GHO5GOtXfIgYUX0LWe2hR85AuEGN0YV6q2ot/qB/W5dTLa5BkdRWuqUBxqlnHJthD2kd3DDNCH73WheT0Iwd+tQ/c6I2N1L/YTfcsyWsROdxgN8hbYdYdXsj3vWAGqszC3zZrziXLrObnboVF9LYS70jQuVtPlUGwXDIQDxk7qYuMk3zEr5AyxylKf3x0lpQ==","body":"{\"test\": \"hello lift\"}","attributes":{"ApproximateReceiveCount":"1","SentTimestamp":"1633644094693","SenderId":"AIDAJTCD6O457Q7BMTLYM","ApproximateFirstReceiveTimestamp":"1633644094702"},"messageAttributes":{},"md5OfBody":"a4a4e288d7422585bc602f409a23cb55","eventSource":"aws:sqs","eventSourceARN":"arn:aws:sqs:us-west-2:536766270177:demo-dev-HardJob-1AKY9MCP5O35P-LiftSqsQueue-1CAH9LFQDUB0Y","awsRegion":"us-west-2"}]}
2021-10-07 22:01:37 UTC 2021/10/07/[$LATEST]02ba90e647c54c08b07967573af6e765 END RequestId: dd30590a-0b8f-59a4-8c82-00d37bf33280
2021-10-07 22:01:37 UTC 2021/10/07/[$LATEST]02ba90e647c54c08b07967573af6e765 REPORT RequestId: dd30590a-0b8f-59a4-8c82-00d37bf33280 Duration: 5.87 ms Billed Duration: 6 ms Memory Size: 1536 MB Max Memory Used: 148 MB Init Duration: 2488.48 ms
Its a little bit hard to see but can see the message that I sent to the queue:
"body":"{\"test\": \"hello lift\"}"
So believe this feature is working. Hope that helps.