繁体   English   中英

AWS Lambda 函数如何在执行期间获取依赖项

[英]How AWS Lambda functions get the dependencies during execution

我刚刚开始学习 AWS 和 nodejs。 我试图了解无服务器应用程序中的这个 lambda 在执行时如何获取所需的信息。让我们考虑下面的代码

use strict';

var AWS = require("aws-sdk");

var lambda = new AWS.Lambda({
    apiVersion: '2015-03-31',
    endpoint: 'https://lambda.' + process.env.DYNAMODB_REGION + '.amazonaws.com',
    logger: console
});

所以它的第一个语句创建了一个变量 AWS。 在任何正常的应用程序中,这些依赖项将在节点模块中可用,当我们引用它时,我们将很容易地访问它。 但是在 lambda function 作为无服务器应用程序创建的情况下,它是如何获得依赖性的。

我的第二个问题是,当我们引用 process.env.DYNAMODB_REGION 时,process.env 的价值是什么?

我的第三个问题是否可以创建一个通用记录器文件,将其导入 lambda 并使用它来记录详细信息?

请帮助我了解 lambda function 如何获取所有这些详细信息。

  1. aws-sdk依赖由 Lambda 运行时提供,所以你不必自己下载和 package 。 运行时未提供的任何其他依赖项,您必须在创建 Lambda function 时上传的 zip 文件中添加它们 package。

  2. DYNAMODB_REGION不是由运行时设置的标准环境变量; 创建 lambda 时,您必须自己提供它的值。有关 Lambda 运行时设置的环境变量列表,以及如何设置您自己的环境变量,请参阅https://docs.aws.amazon .com/lambda/latest/dg/configuration-envvars.html

  3. 不确定你在问什么,但对于日志记录,最简单的方法是使用 AWS CloudWatch。 有关更多信息,请参阅https://docs.aws.amazon.com/lambda/latest/dg/nodejs-logging.html

您发布的代码正在访问另一个 lambda function 中的 lambda function。这并不是您为无服务器应用程序创建 lambda function 的方式。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM