Printf声明不适用于lambda

Abd*_*naf 7 c lambda amazon-web-services node.js node-gyp

我尝试使用node.js创建一个lambda函数.w用C代码编写代码并使用node-gyp将其转换为节点库.lambda功能完美的工作.但它只打印node.js console.log语句.

这是我的node.js代码

'use strict';
console.log('Loading function');

exports.handler = (event, context, callback) => {

var addon = require('./build/Release/testLibraryfromCcode');

addon.sayHello();
console.log("Completed");
}
Run Code Online (Sandbox Code Playgroud)

这是我的C代码

int sayHello()
{
    printf("Haaaaaaaaaaaaai\n");
    fflush(stdout);
    return 0;   
}
Run Code Online (Sandbox Code Playgroud)

我从lambda测试控制台获得了这样的输出

   TART RequestId: 3e8cd5ff-2d41-11e6-af8f-ada8f1249113 Version: $LATEST
    2016-06-08T06:21:32.779Z    3e8cd5ff-2d41-11e6-af8f-ada8f1249113    Loading function
   2016-06-08T06:21:32.779Z 3e8cd5ff-2d41-11e6-af8f-ada8f1249113 Completed
Run Code Online (Sandbox Code Playgroud)

Haaaaai印刷品缺失.我需要在我的C代码中打印printf语句.如果有什么想法?

Abd*_*naf 5

该代码有效。fflush(stdout)用于打印。

int sayHello()
{
    printf("Haaaaaaaaaaaaai\n");
    fflush(stdout);
    return 0;   
}
Run Code Online (Sandbox Code Playgroud)

但是,aws lamda无法直接在Web控制台上打印库打印。我们需要安装awslogs来刷新完整日志。

  1. 安装awslogs

    sudo pip安装awslogs

  2. 用于Waching日志。

    awslogs获取/ aws / lambda / lambdaFunctionName --start =“ 3h”