AWS lambdaで作成した関数でエラー発生

前提

現在、AWSのDynamoDB,lambda,gateway API等の機能を勉強中です。

実現したいこと

AWS IoTでつくるお手軽スマートホーム

上記の書籍に載っていた内容で、DynamoDBに蓄積されたデータをgateway API機能でアクセスする項目があり、これを自分のAWSアカウントでもやってみようと思いました。

発生している問題・エラーメッセージ

AWSのDynamoDB,lambda,gateway API機能それぞれに必要な設定を実施して、gateway API経由で作成したlambda関数を実行してみるとエラーが発生してDynamoDBに蓄積されたデータを取得できません。

どのように解消したらよいか教えて下さい。

gateway APIで実行時のエラー内容 {"errorMessage": "list index out of range", "errorType": "IndexError", "stackTrace": [" File \"/var/task/lambda_function.py\", line 17, in lambda_handler\n data = get_data()\n", " File \"/var/task/lambda_function.py\", line 13, in get_data\n return response['Items'][0]\n"]}

該当のソースコード

python

import boto3 from boto3.dynamodb.conditions import Key dynamodb = boto3.resource('dynamodb')table = dynamodb.Table('sensor_data') def get_data(): response = table.query( KeyConditionExpression=Key('client_id').eq('data_sender'), ScanIndexForward=False, Limit=1 ) return response['Items'][0] def lambda_handler(event, context): data = get_data() return data

試したこと

ここに問題に対して試したことを記載してください。

補足情報(FW/ツールのバージョンなど)

ここにより詳細な情報を記載してください。

コメントを投稿

0 コメント