[要対応] AWS Lambda 関数の「状態」の拡張について| [Action Required] AWS Lambda Extending State to All Functions
Lambda関数の作成、更新、または呼び出しが確認されたため、このタイトルのメールが送られてきたらしい。メールを読んでもリンク先が英語だったのでよく理解できず。
そんなとき、解説してくれているサイトを発見。
【アップデート】AWS Lambda 関数の「状態」の拡張
https://www.sunnycloud.jp/column/20211018-01-2/
2021年12月6日以降、すべてのLamda関数に適用される話だそうで、自分に関係しそうな所を要約すると、こんな感じ。
・現在Lambda関数を使っていても、呼び出しが数週間無いと「Inactive状態」になる
・Inactive状態でLambda関数を呼び出すと、Pending > Active と状態が移る
・状態の確認には、CLI(コマンドラインツール)かSDKが必要
iOS版100マス計算にてLambdaを使っているので対象で、毎日呼び出されているのでInactive状態になることはないだろうし、影響はないとは思うけど、念の為、Lamda関数の状態を確認してみることにした。
管理画面からLamda関数の状態を確認できないかとログインしてみる。

管理画面から状態はわからない。
説明にある通り、CLIツールを使ってみることにした。
あと、Node.js 10 はサポート対象外になったので更新しないといけないけど、それは後回し。
はじめに、CLIをPCにインストールするところから。
macOS での AWS CLI バージョン 2 のインストール、更新、アンインストール:
https://docs.aws.amazon.com/ja_jp/cli/latest/userguide/install-cliv2-mac.html
AWS CLI バージョン2をインストール。
---------------------------------------------
$ curl "https://awscli.amazonaws.com/AWSCLIV2.pkg" -o "AWSCLIV2.pkg"
$ sudo installer -pkg AWSCLIV2.pkg -target /
---------------------------------------------
これでインストールできたので、インストールの確認。
---------------------------------------------
$ which aws
/usr/local/bin/aws
$ aws --version
aws-cli/2.3.2 Python/3.8.8 Darwin/20.4.0 exe/x86_64 prompt/off
---------------------------------------------
念のため、アンインストールの手順も抜粋(今回はインストールだけ)。
---------------------------------------------
$ which aws
$ ls -l /usr/local/bin/aws
$ sudo rm /usr/local/bin/aws
$ sudo rm /usr/local/bin/aws_completer
$ sudo rm -rf /usr/local/aws-cli
---------------------------------------------
こんなに簡単にCLIが使えるようになるとは思わなかった。
いざ、CLIを使ってみようと思ったけど、その前に設定が必要だった。
設定コマンド:
https://docs.aws.amazon.com/ja_jp/cli/latest/userguide/cli-configure-quickstart.html#cli-configure-quickstart-creds
CLIのコマンド(aws configure)を使うときに、IAMのアクセスキーとシークレットキーが必要とのこと。
管理画面からIAMを確認してみる。

そもそもアクセスキーが存在しなかったので、「アクセスキーの作成」ボタンを押してアクセスキーを作成。
そこから、アクセスキーとシークレットキーを取得。
いざCLIを使ってみる。
---------------------------------------------
$ aws configure
AWS Access Key ID [None]: [アクセスキー]
AWS Secret Access Key [None]: [シークレットキー]
Default region name [None]: ap-northeast-1 ※使用しているリージョン
Default output format [None]: text
---------------------------------------------
これで準備が整ったので、Lambda関数の状態を確認してみる。
Lambda関数の状態確認:
https://docs.aws.amazon.com/ja_jp/lambda/latest/dg/functions-states.html
---------------------------------------------
$ aws lambda get-function-configuration --function-name [Lambda関数名]
※※※※※※※※ 100マス計算の記録更新のAPPからの受信用 arn:aws:lambda:ap-northeast-1:※※※※※※※:function:[Lambda関数名] [Lambda関数名] ※※※※※※ 20XX-0X-XXTXX:XX:XX.XXX+0000 Successful 128 Zip ※※※※※※※※※※:aws:iam::※※※※※※※※※:role/※※※※※※※※※※ nodejs10.x Active X $LATEST
ARCHITECTURES ※※※※
TRACINGCONFIG ※※※※
VPCCONFIG
---------------------------------------------
↑大事なところは※※※やXXXで隠した。
出力結果を見ると、「Active」があるのでちゃんと動作してるっぽい。
これでいいのかなー。
あとは、Node.js10 を最新版に上げて、2021年12月6日以降も無事に動作することを祈るのみ。
変化する状況に対応していくって、大変だー。