Lambda

Lambda(node.js)

AWS API Gateway + Lambda(node.js)でセキュリティグループのマイIPを更新する方法

AWS Lambda(node.js)でセキュリティグループのマイIPを更新する方法リモートワークが増えてきたので、自宅のPC環境からAWSのサービスに接続したいという場合、インバウンドルールにマイIPを設定すると思います。自宅のルータを再...
Lambda(node.js)

AWS Lambda(node.js)でテンプレートエンジンのhandlebars.jsの使い方

AWS Lambda(node.js)でテンプレートエンジンのhandlebars.jsの使い方Lambda(node.js)でテンプレートエンジンを使いたい時があったのでhandlebars.jsを選定して使ってみました。インストールしま...
CloudFront

AWS Lambda@Edgeを作成する方法

AWS Lambda@Edgeを作成する方法 前提 CloudFront + S3構築済CloudFront経由した後(Origin Request)でURIを書き換えたかったのでLambda@Edgeを使ってみました。BASIC認証なども...
gulp

gulp,gulp-zip,node-aws-lambdaを使用してzip圧縮ファイルでLambdaをデプロイまたは圧縮するまで

gulp,gulp-zip,node-aws-lambdaを使用してzip圧縮ファイルでLambdaをデプロイまたは圧縮するまでgulp,gulp-zip,node-aws-lambdaモジュールを使用してローカルで作成したLambdaを圧...
AWS CLI

AWS LambdaをCLIで再デプロイする方法

AWS LambdaをCLIで再デプロイする方法LambdaをCLIで作成するにはaws lambda update-function-codeを使います。update-function-code必須パラメータは以下の通りです。aws la...
AWS CLI

AWS LambdaをCLIで作成する方法

AWS LambdaをCLIで作成する方法LambdaをCLIで作成するにはaws lambda create-functionを使います。create-function必須パラメータは以下の通りです。aws lambda create-f...
Lambda(node.js)

AWS Lambda(node.js)をローカルでデバッグする方法あれこれ

AWS Lambda(node.js)をローカルでデバッグする方法あれこれLambda(node.js)をローカルでデバッグしたいので探してみました。 AWS Cloud9 AWS SAM エントリポイント テストフレームワーク詳しく調べて...
Gradle

AWS Lambda(Java)をVSCodeのGradleプロジェクトで開発する方法

AWS Lambda(Java)をVSCodeのGradleプロジェクトで開発する方法Lambdaの言語は色々ありますが、Java8,11,17がサポートされています。最近Javaもコールドスタート対策されて約10倍くらい早くなったらしいの...
API Gateway

API Gateway+LambdaでヘッダにSet-Cookieを複数設定する方法

API Gateway+LambdaでヘッダにSet-Cookieを複数設定する方法CloudFrontの署名付きCookieを使用しようとしたのですが、3つSet-Cookieを設定する必要があります。ところが、API GatewayはS...
API Gateway

AWS LambdaのエイリアスとAPI Gatewayを関連付ける方法

AWS LambdaのエイリアスとAPI Gatewayを関連付ける方法
AWS

AWS Lambdaのコールドスタートを解決するProvisioned Concurrency機能

AWS Lambdaのコールドスタートを解決するProvisioned Concurrency機能Lambdaは初回起動時にLambda実行環境の初期化処理が伴う為、起動に時間がかかります。そのため、cloudwatch eventsからL...
API Gateway

AWS Lambdaをバージョン管理してステージごとに実行するLambdaのバージョンを分ける方法

AWS Lambdaをバージョン管理してステージごとに実行するLambdaのバージョンを分ける方法Lambdaはバージョン管理しておくことができます。バージョン管理すると$LATESTが最新バージョンのLambdaとなり、このバージョンのみ...
Lambda

AWS Lambdaのレイヤーを使ってnode_modulesとLambdaを分離する方法

AWS Lambdaのレイヤーを使ってnode_modulesとLambdaを分離する方法Lambdaにレイヤーという機能が追加されていました。/opt配下からレイヤーが使えるようです。ちなみに/tmpも使えます。レイヤーは共通ライブラリな...
Lambda(node.js)

AWS LambdaがNode.js8.10からasync/awaitになっていた

AWS LambdaがNode.js8.10からasync/awaitになっていた久々にAWSを使う機会があり、これまた機能がテンコ盛りのように増えているんですが、Node.js6.10のLambdaからNode.js8.10にするとasy...
Lambda(node.js)

Lambda(node.js)でカスタム例外を作成する

Lambda(node.js)でカスタム例外を作成するnode.js v12でErrorオブジェクトを継承したカスタム例外クラスを作ってみます。'use strict'class CustomError extends Error { /*...
Lambda(node.js)

AWS Lambda(node.js)でmapとPromise.allで並列実行する

AWS Lambda(node.js)でmapとPromise.allで並列実行するS3にputObjectする処理をする場合にコーディングによっては処理が遅くなってしまうケースがあります。 await S3.putObject(param...
Lambda

AWS Lambdaはステートレスにする

AWS LambdaはステートレスにするAWS Lambdaで/tmpが一時的に使えます。詳細は「AWS Lambdaでは一時的に/tmp/ディレクトリが使用できる」を参照ください。今回LambdaAともう一つのLambdaBで/tmpを共...
Lambda

AWS Node v4.3終了です

AWS Node v4.3終了ですNode.js v4.3ランタイムを使用した新規の関数作成は2018年7月31日まで、既存の関数の更新は2018年10月31日までとなります。EOLとはEOLとは、End Of Lifeで、「寿命」です。N...
API Gateway

AWS Cognitoで認証した後、認可したAPI GatewayにユーザIDを渡す

AWS Cognitoで認証した後、認可したAPI GatewayにユーザIDを渡すCognitoで認証した後に認可しているAPI GatewayにユーザIDを渡したい場合があるかも知れません。でもないかもしれません。とりあえず渡す方法は一...
AWS

AWS Lambda(Python3.6)からDynamoDBのデータを検索する

AWS Lambda(Python3.6)からDynamoDBのデータを検索するAWS Lambda(Python3.6)からDynamoDBのデータを検索してみます。「AWS Lambda(Python3.6)からDynamoDBにデータ...
AWS

AWS Lambda(Python3.6)からDynamoDBのデータをバッチ登録する

AWS Lambda(Python3.6)からDynamoDBのデータをバッチ登録する
AWS

AWS Lambda(Python3.6)からDynamoDBのデータを削除する

AWS Lambda(Python3.6)からDynamoDBのデータを削除するAWS Lambda(Python3.6)からDynamoDBのデータを削除してみます。削除するにはdelete_itemメソッドを使用します。import b...
AWS

AWS Lambda(Python3.6)からDynamoDBのデータを更新する

AWS Lambda(Python3.6)からDynamoDBのデータを更新するAWS Lambda(Python3.6)からDynamoDBのデータを更新してみます。import boto3;def lambda_handler(even...
DynamoDB

AWS Lambda(Python3.6)からDynamoDBにデータ取得する

AWS Lambda(Python3.6)からDynamoDBにデータ取得する
DynamoDB

AWS Lambda(Python3.6)からDynamoDBにテーブルを作成する

AWS Lambda(Python3.6)からDynamoDBにテーブルを作成するAWS Lambda(Python3.6)からDynamoDBにテーブルを作成してみます。create_tableメソッドを使用します。import boto...
AWS

AWS LambdaをPython3.6で書いてみる入門編です

AWS LambdaをPython3.6で書いてみる入門編です最近node.jsも飽きたのでPython3.6でLambdaを勉強しようと思いました。node.jsだとindex.jsがデフォルトで作成されますが、Python3.6だとla...
AWS

AWS Lambdaがデフォルトで持っている環境変数一覧

AWS Lambdaがデフォルトで持っている環境変数一覧Lambdaはデフォルトで環境変数を持っているので一覧を表示します。exports.handler = (event, context, callback) => { console....
AWS

AWS CognitoとLambdaを連携する

AWS CognitoとLambdaを連携するAWS Cognitoでは、以下のタイミングでLambda関数を呼び出すことができます。サインアップ前認証前カスタムメッセージ認証後確認後認証チャレンジの定義認証チャレンジの作成認証チャレンジレ...
AWS

AWS IoTにクライアント機器から画像(バイナリデータ)を送信する

AWS IoTにクライアント機器から画像(バイナリデータ)を送信するクライアント機器から画像などのバイナリデータを送信してS3にPUTしたい、ということはよくあると思います。が、現状ではクライアント機器から画像をそのままAWS IoTに送信...
AWS

VPC LambdaからVPC上のリソースにアクセスすると初回実行時が遅いのはENIを作成するからです

VPC LambdaからVPC上のリソースにアクセスすると初回実行時が遅いのはENIを作成するからですVPC Lambdaを実行すると、なんか最初の1回目が凄く処理が遅い、と思いました。2回目以降は早いのです。ググってみると、どうもVPC ...
AWS

AWSのVPC Lambdaと非VPC Lambdaの違い

AWSのVPC Lambdaと非VPC Lambdaの違い非VPCのLambdaとVPC対応のLambdaの違いです。なぜ非VPC LambdaがRDSにアクセスできたのか以前書いた記事で「AWS LambdaからRDS(MySQL)にSQ...
lambda(Python)

AWS Lambda(Python3.6)からDynamoDBのデータを登録する

AWS Lambda(Python3.6)からDynamoDBのデータを登録するAWS Lambda(Python3.6)からDynamoDBのデータを登録(挿入)してみます。usersテーブルが存在しているものとします。「AWS Lamb...
Lambda(node.js)

AWS LambdaでJSONからCSVに変換するJSON2CSVを使う

AWS LambdaでJSONからCSVに変換するJSON2CSVを使うJSON形式の配列をCSVに変換するのに便利なJSON2CSVというパーサがあったので使ってみました。使い方は以下のようにrequire('json2csv').Par...
Lambda(node.js)

AWS Lambdaでは一時的に/tmp/ディレクトリが使用できる

AWS Lambdaでは一時的に/tmp/ディレクトリが使用できるLambdaではS3とのやり取りなどのために?一時的なディレクトリとして、/tmp/ディレクトリを使用することができます。fsモジュールを使用して一時的なファイルを作成して、...
Lambda(node.js)

AWS LambdaからRDS(MySQL)にSQLを発行する

AWS LambdaからRDS(MySQL)にSQLを発行するRDS(MySQL)はVPCのパブリックサブネットに配置されている前提とします。LambdaからRDSにアクセスするには同一VPC上にLambdaを置く必要があるかもしれません。...
AWS

Amazon SNSとLambda関数の連携方法

Amazon SNSとLambda関数の連携方法Amazon SNSとLambda関数の連携方法についてです。Amazon SNSのTopicにメッセージを送信し、Lambda関数を実行してみます。まずAmazon SNSの「Topics」...
AWS

Lambda(Node.js)からDynamoDBのテーブルを更新する

Lambda(Node.js)からDynamoDBのテーブルを更新するLambda(Node.js)からDynamoDBのテーブルを更新するLambda(Node.js)からDynamoDBのテーブルを更新します。AWS.DynamoDB....
AWS

Lambda(Node.js)からDynamoDBのテーブルを作成する

Lambda(Node.js)からDynamoDBのテーブルを作成するLambda(Node.js)からDynamoDBのテーブルを作成するLambda(Node.js)からDynamoDBのテーブルを作成してみます。以下を参考にしました。...
AWS

Lambda(Node.js)からDynamoDBを検索する – AWS

Lambda(Node.js)からDynamoDBを検索する - AWSLambda(Node.js)からDynamoDBを検索してみます。scanは全件検索します。var AWS = require('aws-sdk');var dyna...
gulp

Node.jsでプロジェクト内の共通モジュールの依存関係どうするかハマったのでメモ

Node.jsでプロジェクト内の共通モジュールの依存関係どうするかハマったのでメモAWS Lambdaで複数APIを作るプロジェクト内で共通モジュールの依存関係どうやったら良いかで悩んだのでメモです。共通モジュールはcommonフォルダ配下...
Lambda(node.js)

console.log()でオブジェクトの階層が深い場合に[Object]となる場合の対処法 – 【AWS Lambda(node.js)】

console.log()でオブジェクトの階層が深い場合に[Object]となる場合の対処法