繁体   English   中英

使用 CLI 列出和删除 EventBridge Lambda 触发器

[英]List & Remove an EventBridge Lambda trigger using the CLI

我需要从 lambda 函数中获取信息并使用 CLI 从此 lambda 中删除现有触发器 (EventBridge)(脚本需要这样做)。

尝试使用list-event-source-mappingsdelete-event-source-mappings但没有成功。

似乎还不支持 EventBridge(只显示 SQS、Kinesis、DynamoDB、MQ、MSK),但也许我错了,有解决方案吗?


编辑:

我有一个有效的 lambda 函数,该函数将触发器与过去已删除的 Eventbridge 规则相关联。 它不再存在于我的帐户中,但是,我仍然在我的 Lambda 触发器下看到它(它还说无法再找到该规则,因为它已被删除 - 同样,它仍然出现在我的 Lambda 触发器中,我想清理它使用 CLI。)我希望从我的 Lambda 中删除关联(触发器),而不是删除作为 Lambda 的 EventBridge TARGET。

您应该能够使用events命令:

aws events list-rule-names-by-target --target-arn <target_arn>

这将列出与指定的target_arn关联的规则的名称。 然后,您可以使用aws events describe-rule命令获取有关每个规则的更多信息,包括规则 ID、计划和模式。

aws events describe-rule --name <rule_name>

现在删除 EventBridge 中 Lambda 函数的触发器:

aws events remove-targets --rule <rule_name> --ids <target_id>

target_id是要删除的触发器的唯一标识符, rule_name是与触发器关联的规则的名称。

您正在寻找的 API 在 EventBridge 事件客户端中:

aws events list-rule-names-by-target --target-arn <lambda-arn>
aws events list-targets-by-rule --rule <rule-name-from-previous>
aws events remove-targets --rule <rule-name-from-previous> --ids <target-id-from-previous>

注意:术语有点混乱。 事件源映射是处理您提到的源的特定轮询类型 Lambda 集成模式的技术术语。 它与 EventBridge 事件无关。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM