Lambdaのboto3/botocoreバージョンを確認する方法の備忘録です。
はじめに
こんにちは、@bioerrorlogです。
Lambdaからboto3を用いてAWS APIを叩くのは、よくあるケースかと思います。
私もよくLambda上でboto3を使いますが、先日Lambdaのboto3バージョンではカバーされていない機能を使用し、エラーになってしまったことがありました。 その際、Lambdaのboto3バージョンを確認する必要がありましたが、ぱっとやり方が思い浮かびませんでした。
そこで今回は、Lambdaのboto3バージョンを確認する方法をメモします。
Lambdaのboto3バージョンを確認する方法
大きく分けて、以下の二つの方法があります。
- ドキュメントからLambdaに使われているboto3バージョンを確認する
- Lambdaを実行してboto3バージョンを確認する
それぞれ見ていきます。
ドキュメントから確認する
まず一つ目のやり方は、ドキュメントからLambdaのboto3バージョンを確認することです。
以下のドキュメントに、Lambdaランタイム毎のboto3/botocoreバージョンが記載されています。
Lambdaのランタイムを確認して、上記ドキュメントからboto3バージョンを確認するのが一番手っ取り早い確認方法かもしれません。
しかし、ドキュメントがちゃんと最新化されているか、は注意する必要があります (特に、日本語ページはしばしば最新版が反映されていないので注意が必要です)。
Lambda上から確認する
二つ目のやり方は、Lambdaを実行してboto3バージョンを確認することです。
boto3/botocoreのバージョンは、boto3.__version__
とbotocore.__version__
で取得することが出来ます。
よって、例えば以下のようにboto3.__version__
とbotocore.__version__
を出力させれば、boto3/botocoreのバージョンを確認できます。
import boto3 import botocore def lambda_handler(event, context): print(f'boto3 version: {boto3.__version__}') print(f'botocore version: {botocore.__version__}')
# 出力結果 boto3 version: 1.16.31 botocore version: 1.19.31
ドキュメントでの確認とは違い、こちらのやり方では確実にLambdaで使用されているboto3のバージョンを調べることが出来ます。
おわりに
今回は、Lambdaのboto3バージョンを確認する方法を簡単にメモしました。
boto3の新しいリリース機能を使いたいときは、Lambdaのboto3バージョンが追い付いていない可能性があります。 そんな時は、さっとLambdaのboto3バージョンを確認できるとよいですね。
boto3には常日頃お世話になっているので、もっと詳しくなっていきたいところです。
[関連記事]