2017-07-17 16 views
0

私はresourcesgrouptaggingAPIからget_resourcesを使用してそれを改ページしようとしています。私はラムダ関数とboto3でこれをやっています。boto3 get_resources paginatorはコンソール内では動作しません

base = client.can_paginate('get_resources')を使用すると、documentationの中にはget_resourcesで動作することが示唆されていますが、Falseが返されます。

もう1人がこの問題を抱えており、問題が発生しました here.これは彼にとってはうまくいくようですので、コンソールラムダ環境が動作しなくなる原因を調査しようとしています。ただ、明確にするため

はここにある私の宣言と初期化です:

client = boto3.client('resourcegroupstaggingapi') 
base = client.can_paginate('get_resources') #returns False 
paginator = client.get_paginator('get_resources') 

したがって、ページネーションのためのコンソールを使用すると問題がありますか?

答えて

1

AWSラムダ環境では、常にboto3/botocoreの最新バージョンが実行されているとは限りません。現在、ボトコアバージョン1.5.52(ソース:https://docs.aws.amazon.com/lambda/latest/dg/current-supported-versions.html)を提供しています。あなたがアクセスしようとしているページネーターは、1.5.53でリリースされました(ソース:https://github.com/boto/botocore/commit/144dda7b63f9eccaeae66c040a281208b43e2678

このように、get_resourcesのページ付けがまだサポートされていないバージョンのbotocoreを使用しようとしています。この場合、バンドル前にインストールすることで、その機能をサポートするboto3/botocoreのバージョンをラムダにバンドルする必要があります。

など。ソースコードは、ディレクトリSRCにあった場合:

pip install boto3==1.4.4 cp -r /usr/local/lib/python2.7/site-packages/* src/ cd src zip -rq lambda.zip .

+0

私は、これがそうであったと仮定が、確認と解決策は本当に役立ちます。ありがとう! – user3651225

関連する問題