本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
建立第一個 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並建立管理使用者,以免將根使用者用於日常任務。
保護您的 AWS 帳戶根使用者
-
選擇根使用者並輸入 AWS 帳戶 您的電子郵件地址,以帳戶擁有者AWS Management Console
身分登入 。在下一頁中,輸入您的密碼。 如需使用根使用者登入的說明,請參閱 AWS 登入 使用者指南中的以根使用者身分登入。
-
為您的根使用者開啟多重要素驗證 (MFA)。
如需指示,請參閱 IAM 使用者指南 中的為您的 AWS 帳戶 根使用者 (主控台) 啟用虛擬MFA裝置。
建立具有管理存取權的使用者
-
啟用IAM身分中心。
如需指示,請參閱 AWS IAM Identity Center 使用者指南中的啟用 AWS IAM Identity Center。
-
在 IAM Identity Center 中,將管理存取權授予使用者。
如需使用 IAM Identity Center 目錄 作為身分來源的教學課程,請參閱 AWS IAM Identity Center 使用者指南 中的使用 設定使用者存取權 IAM Identity Center 目錄。
以具有管理存取權的使用者身分登入
-
若要使用 IAM Identity Center 使用者登入,請使用您建立 IAM Identity Center 使用者時URL傳送到您電子郵件地址的登入。
如需使用 IAM Identity Center 使用者登入的協助,請參閱 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 也會為函數建立「執行角色」。執行角色是 AWS Identity and Access Management (IAM) 角色,授予 Lambda 函數存取 AWS 服務 和資源的許可。針對您的函數,Lambda 建立的角色會授予基本許可來寫入 CloudWatch Logs。
您現在要使用主控台的內建程式碼編輯器,將 Lambda 建立的 Hello world 程式碼,替換為您自己的函數程式碼。
使用主控台調用 Lambda 函數
若要使用 Lambda 主控台調用函數,請先建立要傳送至函數的測試事件。事件是格式化文件,其中包含兩個具有 金鑰"length"
和 JSON 的索引鍵值對"width"
。
若要建立測試事件
-
在程式碼來源窗格中選擇測試。
-
選取建立新事件。
-
事件名稱輸入
myTestEvent
。 -
在事件JSON面板中,透過貼上下列內容來取代預設值:
{ "length": 6, "width": 7 }
-
選擇 Save (儲存)。
您現在測試您的函數,並使用 Lambda 主控台和 CloudWatch 日誌來檢視函數調用的記錄。
若要在主控台中測試您的函數並檢視調用記錄
-
在程式碼來源窗格中選擇測試。當您的函數執行完時,您會看到回應和函數日誌顯示在執行結果標籤。您應該會看到類似下列的結果。
在此範例中,您使用主控台的測試功能調用程式碼。這表示您可以直接在主控台中查看函數的執行結果。在主控台外叫用函數時,您需要使用 CloudWatch Logs。
在 CloudWatch 日誌中檢視函數的調用記錄
-
開啟 CloudWatch 主控台的日誌群組
頁面。 -
為函數 (
/aws/lambda/myLambdaFunction
) 選擇日誌群組名稱。這是您的函數列印至主控台的日誌群組名稱。 -
在日誌串流標籤上,為函數調用選擇日誌串流。
您應該會看到類似下列的輸出:
清除
使用完範例函數時,請加以刪除。您還可以刪除存放函數日誌的日誌群組,以及主控台建立的執行角色。
刪除 Lambda 函數
開啟 Lambda 主控台中的 函數頁面
。 -
選擇一個函數。
-
選擇 動作 、刪除 。
-
在 刪除函數 對話方塊中輸入 delete,然後選擇 刪除 。
刪除日誌群組
-
開啟主控台的 CloudWatch日誌群組頁面
。 -
選取函數的日誌群組 (
/aws/lambda/my-function
)。 -
選擇 動作 、刪除日誌群組 。
-
在 刪除日誌群組 對話方塊中,選擇 刪除 。
刪除執行角色
-
開啟 AWS Identity and Access Management (IAM) 主控台的角色頁面
。 -
選取函數的執行角色,(例如
myLambdaFunction-role-
)。31exxmpl
-
選擇 刪除 。
-
在 刪除角色 對話方塊中輸入角色名稱,然後選擇 刪除 。
您可以使用 和 () 自動化建立和清除函數、日誌群組 AWS CloudFormation 和 AWS Command Line Interface 角色AWS CLI。
其他資源和後續步驟
既然您已使用主控台建立並測試簡單的 Lambda 函數,接著請採取下列後續步驟:
-
了解將相依項新增程式碼中,並使用 .zip 部署套件加以部署。請從下列連結中選擇您有興趣的語言。
-
進行教學課程使用 Amazon S3 觸發條件調用 Lambda 函數,了解如何設定 Lambda 函數以供另一個 AWS 服務調用。
-
選擇下列任一教學課程,獲得搭配其他 AWS 服務使用 Lambda 更複雜的範例。
-
搭配API閘道使用 Lambda:建立RESTAPI叫用 Lambda 函數的 Amazon API Gateway。
-
使用 Lambda 函數存取 Amazon RDS 資料庫 :使用 Lambda 函數透過 RDS Proxy 將資料寫入 Amazon Relational Database Service (Amazon RDS) 資料庫。
-
使用 Amazon S3 觸發條件建立縮圖影像:每次將影像檔案上傳到 Amazon S3 儲存貯體時,使用 Lambda 函數建立縮圖。
-