使用Logic Apps从Azure Blob存储中删除超过X天的文件

网友投稿 255 2022-10-14

使用Logic Apps从Azure Blob存储中删除超过X天的文件

假定我们有某个应用程序会将文件存储到Azure Blob中,存储在Blob中的数据保存七天,七天以后需要对其进行删除。这需求可以使用Azure PowerShell Runbook来完成,但是我想看看是否可以用很少甚至没有代码来完成。经过一番探索我发现Azure Logic App非常适合这种情况。你可以用Logic App创建一些强大的东西。因此,在本文中,我将向各位展示如何在使用Logic App删除Blob中超过X天的文件。

在搜索连接器和触发器框中搜索“Recurrence”,单击“Recurrence”触发器:

将间隔设置为您希望逻辑应用程序每隔几天运行一次。在此我选择每天都运行,然后单击“显示高级选项”。在这里选择我们希望逻辑应用程序运行的时区和时间。我选择了UTC+8和midnight。完成后单击下一步。

在搜索连接器和触发器框中搜索“blob”,单击“List blobs”触发器:

在搜索连接器和触发器框中搜索“Filte”,单击“Filter array”触发器:

选择list blobs下的Value:

单击“ 在高级模式下编辑”,然后键入以下内容以清除超过7天的文件。然后单击下一步:

@less(item()?['LastModified'], addDays(utcNow(), -7))

在搜索连接器和触发器框中搜索“For each”,单击“For each”触发器:

选择Filter array下的“Body”:

单击“ 添加操作”。

选择“Path”:

让我们测试一下Logic App,确保它能够正常攻错。正如您在我的Blob存储中看到的,我有一些文件,它们有不同的修改日期,很大一部分是超过7天的。

运行完成后我们返回blob可以看到在7天前创建的文件均已被删除:

这种清理Blob存储中文件的方法非常简单,并且不需要像使用Azure自动化Runbook那样需要任何特殊的Azure RunAs帐户。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:使用PowerShell查找和删除所有Azure订阅中的空资源组
下一篇:RabbitMQ消息队列实现延迟任务示例
相关文章

 发表评论

暂时没有评论,来抢沙发吧~