
使用這些基本 REST API 最佳實踐構建出色的 API
我們需要按照請求發生的順序保存請求的歷史記錄。每個日志條目都包含有關請求的信息,包括客戶端 IP 地址、請求日期/時間、請求路徑、HTTP 代碼、提供的字節數、用戶代理等。適用于 Go 的 Moesif AWS Lambda 中間件
我們將定義函數的配置選項。有關更多詳細信息,請參閱Moesif 配置選項
func MoesifOptions() map[string]interface{} {
var moesifOptions = map[string]interface{} {
"Log_Body": true,
}
return moesifOptions
}
現在,我們將添加Moesif Middleware
到我們的 lambda 函數。
func main() {
lambda.Start(moesifawslambda.MoesifLogger(HandleLambdaEvent, MoesifOptions()))
}
集成后,我們將看到所有 API 調用都被捕獲并發送到 Moesif。
身份驗證請求包含憑證,響應包含安全令牌,在日志中記錄憑證和令牌是不安全的。使用 Moesif,我們可以安全地提取所需的信息,同時保持安全性,并且不需要對我們的代碼庫進行大量更改。使用Mask_Event_Model
配置選項,我們可以屏蔽請求/響應標頭字段或請求/響應主體以保護身份驗證信息的機密性。此外,如果我們想刪除對 Moesif 的日志記錄請求和響應主體,我們可以將Log_Body
配置選項設置為false
。我們還可以捕獲從我們的應用程序到第三方(如 Stripe、Github)或我們自己的內部 API 的所有傳出 API 調用。
要了解您的 API 的使用方式,請捕獲 API 請求和響應,并記錄到 Moesif,以便通過 AWS Lambda 分析和實時調試您的 API 流量。有關如何集成 Moesif 的更多詳細信息,您可以從 git clone 并運行此示例應用程序GitHub
原文地址:https://www.moesif.com/blog/aws-lambda/go/How-to-Log-API-Calls-for-AWS-Lambda-Go-functions/