[英]AWS EventBridge customize event pattern
我想发送具有自定义值的事件模式,如下所示。
{
"source": ["aws.ecr"],
"detail-type": ["ECR Image Action"],
"detail": {
"action-type": ["PUSH", "DELETE"],
"result": ["SUCCESS"],
"git-repository-name": ["github-api-test"], <-- custom
"file-path": ["bin/imgtag.json"] <-- custom
}
}
我想从 Lambda 中获取这些值并按如下方式使用它们。
const handler = async (event, context) => {
const { detail } = event;
const filePath = detail['file-path'];
const gitRepoName = detail['git-repository-name'];
}
但是,如果您将自定义值(文件路径,git-repository-name)放入事件模式中,则该事件将不起作用。
请告诉我如何使用它。
我找到了这个答案。
首先,点击编辑规则,
Select 目标 > 配置输入 > 输入变压器
填写如下。 ( $.detail是发生 ECR 事件时传入的数据之一。)
然后解析lambda function中的事件如下。
const handler = async (event, context) => {
const data = JSON.parse(event);
const gitRepoName = data['git-repository-name'];
const filePath = data['file-path'];
console.log(gitRepoName, filePath);
};
控制台日志 output
github-api-test, bin/imgtag.json
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.