lambda関数のメモリ監視

メモリのメトリクスは無いのでログから作る

IAM周り

https://docs.aws.amazon.com/ja_jp/lambda/latest/dg/monitoring-cloudwatchlogs.html

admin権限のIAMアカウントで実施したため、未確認

AWSLambdaBasicExecutionRoleAWS

aws iam attach-role-policy --role-name your-role --policy-arn arn:aws:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole

メトリクスフィルターを作成

CloudWatch > ロググループ > 対象関数名にチェック > アクション > メトリクスフィルターを作成

フィルタパターン

[f1=hoge, ...]

「パターンをテスト」で実際にテストして問題ないことを確認する。

フィルター名

関数名-MemoryAllocated

メトリクスの詳細

メトリクス名前空間

LambdaMemory

メトリクス名

フィルター名と同じにする

メトリクス値

$13

同様に使用メモリに対してもメトリクスフィルターを作成する。

使用メモリの場合は、

フィルター名

関数名-MemoryUsed

メトリクス名

関数名-MemoryUsed

メトリクス値

$18

アラームの設定

CloudWatch > Metrics > LambdaMemory グラフ化したメトリクス

UsedとAllocatedを選択する
統計を最大
期間を1分

数式 > 一般 > パーセンテージ

ラベル名「式1」を、関数名-MemoryUsedPercent へ変更

100*(m1/m2) MemoryUser / MemoryAllocated となるようにしてください。

左上のメトリクス名は、関数名-MemoryUsed 関数名-MemoryUsedPercentの右側のアラームを作成 閾値

静的 関数名-MemoryUsedPercent が次の時...

より大きい ... よりも

任意の閾値(0-99) 通知 アラーム状態トリガー

新しいトピックの作成

前の記事 次の記事