CognitoのIDトークンを簡単に検証したい。する。
API Gateway + Cognito Authorizer + Lambda関数でeventから得られるjsonのメモ
表題そのまま。
Cognito Authorizer差し込んだAPI Gateway経由でLambda関数を起動した時に、Lambda関数のeventから取得できるjsonのメモ。取得日は2022年7月11日。
“API Gateway + Cognito Authorizer + Lambda関数でeventから得られるjsonのメモ” の続きを読む
DynamoDBにboto3で操作した時のレスポンス、エラー出る・出ない
いつも忘れるのでメモ。随時追加していく。
- get_item()
- put_item()
- delete_item()
RAK7246にBasic Stationを入れてAWS LoRaWAN NetworkServerに接続
自前で作る多分最安のLoRaWAN Gateway。プライベートでLoRaWANをいじる奇特な人にはいいかもしれない。
Raspberry Pi Zero WにLoRaなHATを載せたRAK7246を使う。
Take Your First Step into the IoT World with RAK7246 and RAK7246G – RAKwireless – IoT Made Easy
RAK7246GはGPS対応。ちゃんとやればClass Bもできるんだろうけれど、今回はClass Aのデバイスを接続します。
“RAK7246にBasic Stationを入れてAWS LoRaWAN NetworkServerに接続” の続きを読む
2022年1月18日 DyanmoDB、メタバース、アキネータ
最近全然更新ができていないので、それだったらばと、今日やったことを振り返りの意味も込めてつらつらとメモしていこうかと思う。いわゆるラーニングログにもなるだろうし。タイトルを考えるのも面倒だから、トピックのいくつかを抜き出している。
まぁ定期的に日記のようなものを初めてはすぐにやめるのが僕の通例で、今回もいつまで続くやらといったところだが、何も更新がないよりはいいだろう。一つのトピックについて溜まってきたなと思ったら、単元としてまとめて記事化するかもしれない。
AWS SAMでDynamoDBテーブルを作成する時のテンプレート
さくっとLambda関数でDynamoDBに何かしたい時、AWS SAMを使ってやるテンプレートのメモ。
DynamoDBの多対多で隣接リストやった時の冗長性対策どうしよう
DynamoDBウキウキで初めて早速引っかかる問題の一つが多対多とn+1問題だと思うんだが、これについてはAWSのドキュメントに一応解決方法が乗っている。それについて書いた記事がこれ→「DynamoDBで多対多のテーブル設計 – 或る阿呆の記」。
隣接リストというデザインパターンで、初めて見た時はギョッとしたけど、実際やってみるとたしかに効率的にクエリが書ける。テーブルの構造についても、ああつまりRDBの中間テーブルに要素をもたせるとこうなるのか、ということで、個人的には納得もした。
ただこの方式は、冗長である。したがって、同一であるべきアイテムの情報に不整合が発生する可能性がある。それについて、どう対応したもんなんだろうか。
Lambda関数でDeadLetterQueue(DLQ)を試す
AWSのLambda関数をイベントで起動した時、複数回エラーを起こしたら、DeadLetterQueue、すなわちDLQを飛ばしたい。DLQを試すもの。Cloudformation使う。DLQはSNSとSQSが指定できるが、今回はSNSを使う。
AWS Lambdaのロギングを考える
ロギングをどうするかで困っていた。AWS Lambdaでは、プリント出力したものがCloudWatchに保存されてとても便利なのだが、考えもなしにとりあえずポンポン入れていたところ、確かに情報はあるので追えないことはないんだが、地道に時間にあたりをつけて検索するなど、非常に泥臭い作業が要求され、なにかとつらかった。
APIのコール回数など集計したいという要件も出てきて、重い腰をあげてロギングについて頑張って考えました、という話。
“AWS Lambdaのロギングを考える” の続きを読むAWS Lambdaをデプロイした時のダウンタイム
AWS Lambdaをデプロイした時、ダウンタイムは発生するのかについて。
直接答えとなる記述をドキュメントで見つけることができていないのだが、AWSフォーラムの開発者による回答を見るに、新旧両方のバージョンが動作する時間はあるものの、ダウンタイム自体は理屈のうえではなさそう。
“AWS Lambdaをデプロイした時のダウンタイム” の続きを読む