1、配置开启aws账单的接收(创建并设置S3桶)
2、创建Athena
1)通过glue的数据库创建
2)Athena处通过语句创建
——以上两种方法都需要用对应的权限
3、创建一个可以同时访问S3、Athena、cloudwatch log 的role角色
4、设置代码配置文件,源码:https://github.com/SpazioDati/python-aws-billing-athena
FOLDER = 'athena_fortest' // 这里配置的文件夹,在运行lambda函数后会在aws账单存储桶下生成
BUCKET = 's3://bucket-billing'
DATABASE = 'billing_athena'
5、创建lambda函数
1)选择“从头开始创作”,填写函数名称、运行语言python3.6、上面创建的role角色名称
2)配置lambda函数的内存(最大)、超时(2分钟以上)参数值并保存
3)选择并配置S3触发器,则会在S3存储桶的事件中生成一条通知(如果删除后再次配置,需要去s3存储桶删除事件通知)。
4)在lambda函数的“代码输入种类”下面选择“上传zip文件”,选择上传python-aws-billing-athena修改后的代码zip包
5)可以通过“配置测试事件”配置一条模拟数据,并点击“测试”进行函数功能测试(功能和权限调试特别有用)。