KeyError:' awslogs' ... outEvent = str(事件[' awslogs'] ['数据']) - Python

时间:2017-07-06 22:17:58

标签: python amazon-s3 aws-lambda

我收到以下错误:

追踪(最近一次通话): 文件" /var/task/lambda_function.py",第22行,在lambda_handler中 outEvent = str(事件[' awslogs'] ['数据']) KeyError:' awslogs'

正在使用的代码:

rootDir

我使用此处的代码:documentation

错误的屏幕截图:https://gist.github.com/mlapida/1166b18651a185e21a08#file-flowlogs-to-s3-lambda-py 尝试将CloudWatch Logs发送到S3存储桶

任何帮助表示赞赏! 谢谢 沙恩

1 个答案:

答案 0 :(得分:0)

您正尝试使用没有对象事件['awslogs'] ['data']的事件来测试您的函数。

当您通过CloudWatch触发lambda函数时会生成此事件,如下例所示:

{
    "awslogs": {
        "data": "H4sIAAAAAAAAAHWPwQqCQBCGX0Xm7EFtK+smZBEUgXoLCdMhFtKV3akI8d0bLYmibvPPN3wz00CJxmQnTO41whwWQRIctmEcB6sQbFC3CjW3XW8kxpOpP+OC22d1Wml1qZkQGtoMsScxaczKN3plG8zlaHIta5KqWsozoTYw3/djzwhpLwivWFGHGpAFe7DL68JlBUk+l7KSN7tCOEJ4M3/qOI49vMHj+zCKdlFqLaU2ZHV2a4Ct/an0/ivdX8oYc1UVX860fQDQiMdxRQEAAA=="
    }
}

如果您想手动测试您的功能,请确保进入“操作”,“配置事件测试”并在“示例事件模板”中选择“CloudWatch Logs”选项。