タグ

ブックマーク / qiita.com/c9katayama (4)

  • AWS Lambda JavaでLambdaFunctionで発生した例外の処理について - Qiita

    はじめに AWS Lambdaで、呼び出し元/呼び出し先ともにJavaを使った際の例外処理についてまとめてみました。 テスト用のクラス Lambda Functionクラス AWS Lambdaに登録するためのクラスです。 package lambdatest; import java.time.LocalDateTime; import com.amazonaws.services.lambda.runtime.Context; public class Lambda { public String ok(Object o, Context context) { context.getLogger().log("OK " + LocalDateTime.now()); return "OK"; } public String timeout(Object o, Context conte

    AWS Lambda JavaでLambdaFunctionで発生した例外の処理について - Qiita
  • 実行時にDynamoDBのテーブル名を変える - Qiita

    はじめに このエントリはAWS SDK for Javaが対象です。 大変便利なAWSのDynamoDBですが、テーブル名に関しては以下のような制約があります。 1AWSアカウント/1リージョン内には同名のテーブルが持てない アクセスユーザーごとに名前空間を変えたりできない 例えばあるシステムがあり、「Hoge」という名前のテーブルにアクセスするプログラムを作っていた場合、同じAWSアカウント/リージョン内に同じシステムを別のユーザーに提供しないといけないようなケースが出てくると、いきなり詰みます。 これを回避するためにはDynamoDBのテーブル名にプレフィックスをつけるなどして名前の衝突を避ける必要がありますが、私のようにそんなことを考えずに作ってしまった場合は、何かしらの方法でテーブル名を差し替える必要が出てきます。 DynamoDB Mapperの機能 AWS SDK for Ja

    実行時にDynamoDBのテーブル名を変える - Qiita
  • AWS Lambda JavaでJRuby - Qiita

    コード コード一式は https://github.com/c9katayama/aws-lambda-jruby にあります。 使い方 githubからclone後、src/main/resources/main.rb にrubyコードを書きます。同ディレクトリ内のファイルは全てLambdaにデプロイされるため、必要なファイルはこのディレクトリに置きます。 stdlibは、JRubyに付属の標準ライブラリが入っています。このディレクトリはaddLibPathでパスが通っているので、ここに入っているrbファイルは とするとmain.rbから使用することができます。 開発 rubyファイル作成時にローカルでテストしたい場合は、 src/test/java/AWSLambdaJRubyTestMain を実行します。 AWSLambdaJRubyは、Lambdaで受け取ったパラメータをJSON

    AWS Lambda JavaでJRuby - Qiita
  • AWS Lambdaを使って、S3のデータ利用量を制限する - Qiita

    はじめに たまに「S3のデータ量に上限をつけたい」という話を聞きますが、今回はタイトル通り、Lambdaでこれが実現できないかどうか試してみました。 仕組み S3へデータがアップロードされた時にLambda Functionが呼び出されるので、その呼び出しを使って、Putされたデータ量をDynamoDBに記録していきます。 ある一定以上のデータ量が加算されたところで、LambdaからS3バケットに対してバケットポリシーの変更を行い、以降はPutできなくします。仕組みは以下の通りです。 実装 はじめに、DynamoDBにテーブルを作成します。キーは文字列型のBucketとしておきます。 適当な名前で、S3バケットを作ります。S3バケットとDynamoDBは同じリージョンで作成します。 以下のコードをLambda Functionとして登録して、最後にLambda FunctionとS3を関連

    AWS Lambdaを使って、S3のデータ利用量を制限する - Qiita
  • 1