- 2024年11月15日
API GatewayのHTTP API(クイック作成)のIaC実装で躓いたこと
既存のAPI Gateway HTTP APIプロジェクトで$defaultルートを廃止する過程で直面した課題と、その解決方法を詳細に解説。クイック作成の特性や、CDKを使用したIaC実装のポイントを紹介し、開発者が陥りやすい落とし穴と、それを避けるためのヒントを提供します。
既存のAPI Gateway HTTP APIプロジェクトで$defaultルートを廃止する過程で直面した課題と、その解決方法を詳細に解説。クイック作成の特性や、CDKを使用したIaC実装のポイントを紹介し、開発者が陥りやすい落とし穴と、それを避けるためのヒントを提供します。
CDKを使ってAppSyncのユニットリゾルバーをJavaScriptで実装。LambdaではなくDynamoDBへのシンプルな操作に最適だが、VTLリゾルバーとの違いに注意が必要。
CloudFormationを使用して、SQSからStep Functionsを実行するためのPipesを実装しました。このプロセスでは、BatchSizeの値を設定し、ステートマシンを非同期実行にし、SQSメッセージからbodyプロパティだけを抽出しました。また、ターゲットの呼び出しタイプには同期と非同期の2つがあり、デフォルトは同期です。この実装は、SQSからStep Functionsを実行したい場合に有用です。
GitLab v17.0 ロールアウト後の問題: $CI_JOB_JWT_V2でAWSクレデンシャルが取得できない対策
自社のJamイベントでAWS CodeWhispererを試用した際の感想として、コメントアウトを使った指示に基づいてコードのサジェスト挙動が異なることを指摘しています。単一行コメントではステップバイステップでサジェストされるのに対し、複数行コメントでは一括でサジェストされる傾向があります。また、特定のコメントがサジェストされる現象については原因不明ですが、GitHubでの検索からAWSのサンプルコードの一部と思われることが示唆されています。この経験から、CodeWhispererの挙動をより深く理解し、効果的に活用するためにはドキュメントの熟読が有効だと感じています。
AWS SDK V3を使ってS3からGetObjectCommandを使ってCSVファイルを取得し、1行ごとにパースする。
AWS JamでSNSの暗号化に取り組んだ際、AWS マネージド型キーではなく、カスタマー管理型のキー(CMK)を使用する必要があることが明らかになった。マネージドキーではキーポリシーを修正できないためである。また、SNSトピックを作成する際の暗号化には特定のKMSを指定し、キーポリシーとアクセスポリシーを適切に設定する必要がある。しかし、SNSの暗号化にマネージドキーを指定した際のエラーが明確でなく、デバッグ方法が不明であるため、問題解決が困難であった。
LocalStackを利用してローカル環境に本番環境に近い環境を作成し、S3からのデータ取得をする方法を紹介します。