如何递归删除 AWS Cloudwatch 日志流?

How to delete AWS Cloudwatch log streams recursively?

我一直在使用 AWS Lambda,它将日志生成到 AWS Cloudwatch 日志组中,
为了在非生产环境中进行调试,我发现删除所有日志流更容易,
运行 测试生成新日志流的功能。

我不想删除日志组,因为它需要我重新设置到期时间。

我发现有一个 CLI 命令可以删除日志流
但是我想知道我是否可以递归地删除它们?
不删除日志组。

delete-log-stream
--log-group-name <value>
--log-stream-name <value>

参考-
https://docs.aws.amazon.com/cli/latest/reference/logs/delete-log-stream.html

您需要列出所有流并循环遍历它们,一次删除一个。这样就可以了,设置环境变量GROUP即可。

GROUP=YOUR_LOG_GROUP
for STREAM in $(aws logs describe-log-streams --log-group-name $GROUP  --query logStreams[*].logStreamName  --output text)
do  
    echo aws logs delete-log-stream --log-group-name $GROUP  --log-stream-name $STREAM
done