假定我们有某个应用程序会将文件存储到Azure Blob中,存储在Blob中的数据保存七天,七天以后需要对其进行删除。这需求可以使用Azure PowerShell Runbook来完成,但是我想看看是否可以用很少甚至没有代码来完成。经过一番探索我发现Azure Logic App非常适合这种情况。你可以用Logic App创建一些强大的东西。因此,在本文中,我将向各位展示如何在使用Logic App删除Blob中超过X天的文件。
目前成都创新互联公司已为上1000+的企业提供了网站建设、域名、网络空间、绵阳服务器托管、企业网站设计、桃江网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。至于Logic App如何创建,在此我就不做过多的说明了,各位如果有兴趣可以参考我之前的Blog。当我们创建好Logic App以后打开新的逻辑应用程序。我们应该会看到“逻辑应用程序设计器”,点击“逻辑应用程序设计器”—“ Blank Logic App”:
在搜索连接器和触发器框中搜索“Recurrence”,单击“Recurrence”触发器:
将间隔设置为您希望逻辑应用程序每隔几天运行一次。在此我选择每天都运行,然后单击“显示高级选项”。在这里选择我们希望逻辑应用程序运行的时区和时间。我选择了UTC+8和midnight。完成后单击下一步。
在搜索连接器和触发器框中搜索“blob”,单击“List blobs”触发器:
输入连接名。我们会看到一个存储帐户列表,单击要清理的存储帐户。然后点击创建,现在要求我们指定Container。单击文件夹图标,然后选择要清理的Container:
在搜索连接器和触发器框中搜索“Filte”,单击“Filter array”触发器:
选择list blobs下的Value:
单击“ 在高级模式下编辑”,然后键入以下内容以清除超过7天的文件。然后单击下一步:
@less(item()?['LastModified'], addDays(utcNow(), -7))在搜索连接器和触发器框中搜索“For each”,单击“For each”触发器:
选择Filter array下的“Body”:
单击“ 添加操作”。
搜索“Delete blob”,点击“Delete Blob”:
选择“Path”:
到此我们的logic app就已经设计完成,点击保存即可:
让我们测试一下Logic App,确保它能够正常攻错。正如您在我的Blob存储中看到的,我有一些文件,它们有不同的修改日期,很大一部分是超过7天的。
对于刚刚创建的Logic app我们如果想要立即运行只需要点击“Run Trigger”就可以了:
点击运行以后可以在下方看到运行记录:
运行完成后我们返回blob可以看到在7天前创建的文件均已被删除:
这种清理Blob存储中文件的方法非常简单,并且不需要像使用Azure自动化Runbook那样需要任何特殊的Azure RunAs帐户。
另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
售后响应及时
7×24小时客服热线数据备份
更安全、更高效、更稳定价格公道精准
项目经理精准报价不弄虚作假合作无风险
重合同讲信誉,无效全额退款