[英]AWS API Gateway Custom Authorizer log
如何從 API Gateway 中的自定義授權 lambda 函數獲取日志記錄? 我不想為 API 啟用日志記錄。 我需要從授權 lambda 函數進行日志記錄。 我使用 python lambda 函數並在代碼中打印。 我想查看Cloud Watch日志中的打印結果。 但是在雲手表中看不到日志。 我也沒有收到錯誤。 我錯過了什么?
Lambda 具有執行角色role/service-role/MyLambdaRole 。 此角色具有寫入雲監視的策略。
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "logs:CreateLogGroup", "Resource": "arn:aws:logs:us-east-1:123456:*" }, { "Effect": "Allow", "Action": [ "logs:CreateLogStream", "logs:PutLogEvents" ], "Resource": [ "arn:aws:logs:us-east-1:123456:log-group:MyCustomAuthorizer:*" ] } ] }
我還通過將 CloudWatchLogsFullAccess 策略添加到角色/服務角色/MyLambdaRole角色進行了測試。
{ "Version": "2012-10-17", "Statement": [ { "Action": [ "logs:*" ], "Effect": "Allow", "Resource": "*" } ] }
我從 API Gateway 中刪除了 lambda 函數、IAM 角色、自定義授權方。 使用相同的設置重新創建上述所有內容並發布 API。 它按預期開始工作和記錄。 我不知道是什么阻止了早先登錄到雲監視日志。 詭異的!!
當我設置我的授權方時,我為自定義標頭設置了 Lambda 事件有效負載,但我忽略了在瀏覽器會話中設置該標頭。 根據https://docs.aws.amazon.com/apigateway/latest/developerguide/configure-api-gateway-lambda-authorization-with-console.html的文檔,第 9b 節,API 網關將拋出 401 Unauthorized甚至沒有執行 Lambda 函數的錯誤。 所以這就是問題的根源。
nodejs Lambda 也有同樣的問題
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.