我正在尝试向AWS的管道中添加一些通知。 我有一个构建阶段,在这里我使用AWS CodeBuild,并且每当构建失败时,我都希望收到一封电子邮件。
我已经遵循了Amazon提供的教程,并且可以很好地通知我有关失败的信息,但是我似乎找不到如何在电子邮件中添加日志的方法。
我创建了以下CloudWatch事件规则,该规则监视整个管道的执行。
{
"source": [
"aws.codepipeline"
],
"detail-type": [
"CodePipeline Pipeline Execution State Change"
],
"detail": {
"state": [
"FAILED",
"SUCCEEDED",
"CANCELED"
],
"pipeline": [
"Pipeline_Trial"
]
}
}
有人可以帮助我确定如何将日志添加到此规则吗?
答案 0 :(得分:3)
来自CodePipeline的事件不包含CodeBuild日志,因此您不能在没有中间内容的情况下将此事件传递给您的电子邮件。
一个解决方案可能是让您的CloudWatch事件以Lambda函数为目标,该函数通过CodeBuild / CloudWatch logs API查找日志。然后,它可以生成包括日志的电子邮件,并通过SNS发送通知。