本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
建立第一個 Lambda 函數
若要開始使用 Lambda,請使用 Lambda 主控台來建立函數。您可以在幾分鐘內建立和部署函數,並在主控台中加以測試。
進行教學課程時,您會學到一些基本 Lambda 概念,例如如何使用 Lambda「事件物件」,將引數傳遞給函數。您還將學習如何從函數返回日誌輸出,以及如何在日誌中查看函數的調用日 CloudWatch 誌。
為了簡化,您可以使用 Python 或 Node.js 執行期建立函數。您可以使用這些轉譯語言,直接在主控台的內建程式碼編輯器中編輯函數程式碼。使用 Java 和 C# 等編譯語言,您必須在本機建置機器上建立部署套件,並將其上傳至 Lambda。若要了解如何使用其他執行期,將函數部署至 Lambda,請參閱其他資源和後續步驟一節中的連結。
提示
若要了解如何建置無伺服器解決方案,請參閱無伺服器開發人員指南。
必要條件
如果您沒有 AWS 帳戶,請完成以下步驟來建立一個。
若要註冊成為 AWS 帳戶
請遵循線上指示進行。
部分註冊程序需接收來電,並在電話鍵盤輸入驗證碼。
當您註冊一個時 AWS 帳戶,將創建AWS 帳戶根使用者一個。根使用者有權存取該帳戶中的所有 AWS 服務 和資源。作為安全最佳實務,請將管理存取權指派給使用者,並且僅使用根使用者來執行需要根使用者存取權的任務。
AWS 註冊過程完成後,會向您發送確認電子郵件。您可以隨時登錄 https://aws.amazon.com/
註冊後,請保護您的 AWS 帳戶 AWS 帳戶根使用者 AWS IAM Identity Center、啟用和建立系統管理使用者,這樣您就不會將 root 使用者用於日常工作。
保護您的 AWS 帳戶根使用者
-
選擇 Root 使用者並輸入您的 AWS 帳戶 電子郵件地址,以帳戶擁有者身分登入。AWS Management Console
在下一頁中,輸入您的密碼。 如需使用根使用者登入的說明,請參閱 AWS 登入 使用者指南中的以根使用者身分登入。
-
為您的 root 使用者開啟多因素驗證 (MFA)。
如需指示,請參閱《使用指南》中的「IAM為 AWS 帳戶 root 使用者啟用虛擬MFA裝置 (主控台)」。
建立具有管理存取權的使用者
-
啟用IAM身分識別中心。
如需指示,請參閱 AWS IAM Identity Center 使用者指南中的啟用 AWS IAM Identity Center。
-
在IAM身分識別中心中,將管理存取權授與使用者。
以具有管理存取權的使用者身分登入
-
若要使用您的 IAM Identity Center 使用者登入URL,請使用建立IAM身分識別中心使用者時傳送至您電子郵件地址的登入資訊。
如需使用IAM身分識別中心使用者登入的說明,請參閱使用指南中的登入 AWS 存取入口網站。AWS 登入
使用主控台建立一個 Lambda 函數
在此範例中,您的函數會取得一個JSON物件,其中包含兩個標示為"length"
和的整數值"width"
。該函數乘以這些值來計算一個面積,並將其作為一個JSON字符串返回。
您的函數也會列印計算的區域,以及其 CloudWatch 記錄群組的名稱。稍後在教學課程中,您將學習如何使用 CloudWatch Logs 來檢視函式叫用的記錄。
若要建立函數,請先使用主控台,建立基本 Hello world 函數。在下一步中,您會新增自己的函數程式碼。
若要使用主控台建立 Hello world Lambda 函數
開啟 Lambda 主控台中的 函數頁面
。 -
選擇 建立函數。
-
選取從頭開始撰寫。
-
在基本資訊窗格中,為函數名稱輸入
。myLambdaFunction
-
針對執行期,選擇 Node.js 20.x 或 Python 3.12
-
將架構設定為 x86_64,然後選擇建立函數。
Lambda 會建立函數,傳回 Hello from Lambda!
訊息。Lambda 也會為函數建立「執行角色」。執行角色是授與 Lambda 函數存取 AWS 服務 和資源權限的 AWS Identity and Access Management (IAM) 角色。對於您的函數,Lambda 建立的角色會授與寫入 CloudWatch 記錄的基本權限。
您現在要使用主控台的內建程式碼編輯器,將 Lambda 建立的 Hello world 程式碼,替換為您自己的函數程式碼。
使用主控台調用 Lambda 函數
若要使用 Lambda 主控台調用函數,請先建立要傳送至函數的測試事件。該事件是一個JSON格式化的文檔,其中包含兩個鍵值對以"length"
及鍵和"width"
。
若要建立測試事件
-
在程式碼來源窗格中選擇測試。
-
選取建立新事件。
-
事件名稱輸入
myTestEvent
。 -
在「事件 JSON」面板中,貼上下列項目以取代預設值:
{ "length": 6, "width": 7 }
-
選擇 Save (儲存)。
現在,您可以測試函數,並使用 Lambda 主控台和記 CloudWatch 錄來檢視函數叫用的記錄。
若要在主控台中測試您的函數並檢視調用記錄
-
在程式碼來源窗格中選擇測試。當您的函數執行完時,您會看到回應和函數日誌顯示在執行結果標籤。您應該會看到類似下列的結果。
在此範例中,您使用主控台的測試功能調用程式碼。這表示您可以直接在主控台中查看函數的執行結果。當您的函數在控制台外部調用時,您需要使用 CloudWatch 日誌。
在日誌中查看函數的調用記錄 CloudWatch
-
開啟主控台的 [記錄群組
] 頁 CloudWatch 面。 -
為函數 (
/aws/lambda/myLambdaFunction
) 選擇日誌群組名稱。這是您的函數列印至主控台的日誌群組名稱。 -
在日誌串流標籤上,為函數調用選擇日誌串流。
您應該會看到類似下列的輸出:
清除
使用完範例函數時,請加以刪除。您還可以刪除存放函數日誌的日誌群組,以及主控台建立的執行角色。
刪除 Lambda 函數
開啟 Lambda 主控台中的 函數頁面
。 -
選擇一個函數。
-
選擇 動作 、刪除 。
-
在 刪除函數 對話方塊中輸入 delete,然後選擇 刪除 。
刪除日誌群組
-
開啟主控台的 [記錄群組] 頁 CloudWatch面
。 -
選取函數的日誌群組 (
/aws/lambda/my-function
)。 -
選擇 動作 、刪除日誌群組 。
-
在 刪除日誌群組 對話方塊中,選擇 刪除 。
刪除執行角色
-
開啟 AWS Identity and Access Management (IAM) 主控台的 [角色] 頁面
。 -
選取函數的執行角色,(例如
myLambdaFunction-role-
)。31exxmpl
-
選擇 刪除 。
-
在 刪除角色 對話方塊中輸入角色名稱,然後選擇 刪除 。
您可以使用和 AWS Command Line Interface (AWS CLI) 自動建立和清理函數、記錄群組 AWS CloudFormation 和角色。
其他資源和後續步驟
既然您已使用主控台建立並測試簡單的 Lambda 函數,接著請採取下列後續步驟:
-
了解將相依項新增程式碼中,並使用 .zip 部署套件加以部署。請從下列連結中選擇您有興趣的語言。
-
進行教學課程使用 Amazon S3 觸發條件調用 Lambda 函數,了解如何設定 Lambda 函數以供另一個 AWS 服務調用。
-
選擇下列任一教學課程,獲得搭配其他 AWS 服務使用 Lambda 更複雜的範例。
-
搭配API閘道使用 Lambda:建立叫RESTAPI用 Lambda 函數的 Amazon API 閘道。
-
使用 Lambda 函數存取 Amazon 資料RDS庫:使用 Lambda 函數透過RDS代理將資料寫入 Amazon Relational Database Service 服務 (AmazonRDS) 資料庫。
-
使用 Amazon S3 觸發條件建立縮圖影像:每次將影像檔案上傳到 Amazon S3 儲存貯體時,使用 Lambda 函數建立縮圖。
-