aws-lambda-cpp: LAMBDA_RUNTIME Failed to get next invocation. No Response from endpoint
Hi guys!
I just writing some lambdas in c++ using the aws-lambda-cpp
i checking my log and i have this Error in my log:
[ERROR] [1553201323958] LAMBDA_RUNTIME Failed to get next invocation. No Response from endpoint
do you know if this is normal? because i check and debug my code but i don’t found nothing.
what my lambda do is extract the body from SQS request, and make a slack post with the message.
for that i use curl and have the ssl disable
other thing is i dont see a print message that i have in the main after the
invocation_response handler(invocation_request const &req) {
return invocation_response::success();
}
this is my main:
int main() {
//use AWS namespace and libs
using namespace Aws;
//set the log for the sdk
SDKOptions options;
//init AWS API
InitAPI(options);
{
auto handler_function = [](aws::lambda_runtime::invocation_request const &req) {
return handler(req);
};
run_handler(handler_function);
}
// shutdown the aws api
std::cout << "ShutdownAPI api" << "\n";
ShutdownAPI(options);
std::cout << "exit" << "\n";
//exit
return 0;
}
i dont see the Shutdown and exit print in the cloud-watch log
so the question the ShutdownAPI(options); and the return 0 is never called?
thank you!!!
About this issue
- Original URL
- State: open
- Created 5 years ago
- Comments: 16 (8 by maintainers)
That environment variable is set by AWS. See https://docs.aws.amazon.com/lambda/latest/dg/configuration-envvars.html#configuration-envvars-runtime
I am not 100% sure how that environment variable is empty for you.
The I/O is buffered. You should see the messages if you add
std::cout.flush()at the end, or append<< std::endlwhich has the side-effect of flushing.