溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

使用Logic Apps從Azure Blob存儲(chǔ)中刪除超過X天的文件

發(fā)布時(shí)間:2020-07-24 14:03:58 來源:網(wǎng)絡(luò) 閱讀:1370 作者:wuyvzhang 欄目:云計(jì)算


假定我們有某個(gè)應(yīng)用程序會(huì)將文件存儲(chǔ)到Azure Blob中,存儲(chǔ)在Blob中的數(shù)據(jù)保存七天,七天以后需要對其進(jìn)行刪除。這需求可以使用Azure PowerShell Runbook來完成,但是我想看看是否可以用很少甚至沒有代碼來完成。經(jīng)過一番探索我發(fā)現(xiàn)Azure Logic App非常適合這種情況。你可以用Logic App創(chuàng)建一些強(qiáng)大的東西。因此,在本文中,我將向各位展示如何在使用Logic App刪除Blob中超過X天的文件。

至于Logic App如何創(chuàng)建,在此我就不做過多的說明了,各位如果有興趣可以參考我之前的Blog。當(dāng)我們創(chuàng)建好Logic App以后打開新的邏輯應(yīng)用程序。我們應(yīng)該會(huì)看到“邏輯應(yīng)用程序設(shè)計(jì)器”,點(diǎn)擊“邏輯應(yīng)用程序設(shè)計(jì)器”—“ Blank Logic App”:

使用Logic Apps從Azure Blob存儲(chǔ)中刪除超過X天的文件

在搜索連接器和觸發(fā)器框中搜索“Recurrence”,單擊“Recurrence”觸發(fā)器:

使用Logic Apps從Azure Blob存儲(chǔ)中刪除超過X天的文件

將間隔設(shè)置為您希望邏輯應(yīng)用程序每隔幾天運(yùn)行一次。在此我選擇每天都運(yùn)行,然后單擊“顯示高級選項(xiàng)”。在這里選擇我們希望邏輯應(yīng)用程序運(yùn)行的時(shí)區(qū)和時(shí)間。我選擇了UTC+8和midnight。完成后單擊下一步。

使用Logic Apps從Azure Blob存儲(chǔ)中刪除超過X天的文件

在搜索連接器和觸發(fā)器框中搜索“blob”,單擊“List blobs”觸發(fā)器:

使用Logic Apps從Azure Blob存儲(chǔ)中刪除超過X天的文件

輸入連接名。我們會(huì)看到一個(gè)存儲(chǔ)帳戶列表,單擊要清理的存儲(chǔ)帳戶。然后點(diǎn)擊創(chuàng)建,現(xiàn)在要求我們指定Container。單擊文件夾圖標(biāo),然后選擇要清理的Container:

使用Logic Apps從Azure Blob存儲(chǔ)中刪除超過X天的文件

在搜索連接器和觸發(fā)器框中搜索“Filte”,單擊“Filter array”觸發(fā)器:

使用Logic Apps從Azure Blob存儲(chǔ)中刪除超過X天的文件

選擇list blobs下的Value:

使用Logic Apps從Azure Blob存儲(chǔ)中刪除超過X天的文件

單擊“ 在高級模式下編輯”,然后鍵入以下內(nèi)容以清除超過7天的文件。然后單擊下一步:

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

使用Logic Apps從Azure Blob存儲(chǔ)中刪除超過X天的文件

在搜索連接器和觸發(fā)器框中搜索“For each”,單擊“For each”觸發(fā)器:

使用Logic Apps從Azure Blob存儲(chǔ)中刪除超過X天的文件

選擇Filter array下的“Body”:

使用Logic Apps從Azure Blob存儲(chǔ)中刪除超過X天的文件

單擊“ 添加操作”。

使用Logic Apps從Azure Blob存儲(chǔ)中刪除超過X天的文件

搜索“Delete blob”,點(diǎn)擊“Delete Blob”:

使用Logic Apps從Azure Blob存儲(chǔ)中刪除超過X天的文件

選擇“Path”:

使用Logic Apps從Azure Blob存儲(chǔ)中刪除超過X天的文件

到此我們的logic app就已經(jīng)設(shè)計(jì)完成,點(diǎn)擊保存即可:

使用Logic Apps從Azure Blob存儲(chǔ)中刪除超過X天的文件

讓我們測試一下Logic App,確保它能夠正常攻錯(cuò)。正如您在我的Blob存儲(chǔ)中看到的,我有一些文件,它們有不同的修改日期,很大一部分是超過7天的。

使用Logic Apps從Azure Blob存儲(chǔ)中刪除超過X天的文件

對于剛剛創(chuàng)建的Logic app我們?nèi)绻胍⒓催\(yùn)行只需要點(diǎn)擊“Run Trigger”就可以了:

使用Logic Apps從Azure Blob存儲(chǔ)中刪除超過X天的文件

點(diǎn)擊運(yùn)行以后可以在下方看到運(yùn)行記錄:

使用Logic Apps從Azure Blob存儲(chǔ)中刪除超過X天的文件

運(yùn)行完成后我們返回blob可以看到在7天前創(chuàng)建的文件均已被刪除:

使用Logic Apps從Azure Blob存儲(chǔ)中刪除超過X天的文件

這種清理Blob存儲(chǔ)中文件的方法非常簡單,并且不需要像使用Azure自動(dòng)化Runbook那樣需要任何特殊的Azure RunAs帳戶。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI