[英]How can I track the progress/status of an asynchronous AWS Lambda invocation?
[英]how to get aws lambda invocation count using javascript sdk
我想獲取特定時間范圍內每個 lambda 函數的調用計數。 我已經使用 cloudwatch sdk 來實現這個。 但是我得到了一個 Metrics 數組,但是沒有關於調用計數的數據。 我的代碼。
var cwparams = {
Namespace: "AWS/Lambda",
MetricName: "Invocations",
};
const cw = await cloudWatch.listMetrics(cwparams).promise();
console.log(cw.Metrics);
我的 output
ResponseMetadata: { RequestId: 'some-id' },
Metrics: [
{
Namespace: 'AWS/Lambda',
MetricName: 'Invocations',
Dimensions: [Array]
},
... more objects like above
]
OwningAccounts: []
維度數組包含這樣的
{ Name: 'FunctionName', Value: 'us-east-1.xxxx-xxxx' },
{ Name: 'Resource', Value: 'us-east-1.xxx-xxxx:xxx' }
如何獲得我想要的 output?
解決了。您可以使用CloudWatch GetMetricStatistics API 檢索特定時間范圍和特定 lambda function 的調用/持續時間。有關詳細信息,請查看GetMetricStatistics AWS Docs
下面粘貼我的答案。
const params = {
Namespace: "AWS/Lambda",
MetricName: "Invocations",
StartTime: "2023-01-04T00:00:00Z",
EndTime: "2023-01-04T23:59:59Z",
Period: 86400, // in seconds
Statistics: ["Maximum", "Minimum", "Average"],
Dimensions: [
{
Name: "FunctionName",
Value: "your-lambda-function-name",
},
],
};
const cw = await cloudWatch.getMetricStatistics(params).promise();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.