簡體   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