根據數據類型增加Azure Log Analytics的數據保留時間

在日常的運維工作中,日誌是我們分析系統運行情況、問題定位、系統優化分析等操作的主要數據源頭。同時在很多客戶的實際場景中,爲了滿足公司的審計等要求,也會需要對某種特定類型的日誌數據進行持久的存儲,如SecurityEvent等,從而滿足公司的合規性。對於此類的需求,其實我們有多種方式可以滿足,比如使用某些企業級的日誌收集系統等。那麼在Azure中,我們如何來持久的保存某些類型的日誌記錄呢?

其實在2019年10月8日,微軟宣佈支持每種數據類型獨立增加保留時間。這意味着,如果要爲SecurityEvent日誌收集價值6個月的日誌數據,則可以獨立於其他數據類型的保留期限進行收集。具體可以參考官方文檔,在撰寫本文檔時,要增加每種數據類型的保留時間,就需要利用Rest API進行這些更改。

需要注意的是:Usage 和 AzureActivity 不能使用數據類型設置自定義保留策略。默認情況下,它們會保留90天,並且保留90天是免費的。這些數據類型也免收數據攝取費用。他們將最多保留默認的工作空間或90天。

接下來讓我們看看它是如何工作的,首先通過使用之前的方法來研究如何通過使用門戶來增加保留,然後如何利用Rest API來爲每種數據類型配置此功能。

通過Azure Portal調整保留時間
登錄到Azure門戶後,進入Log Analytics Workspace。爲了配置您的數據保留,您將需要導航至“使用和估計成本”,然後導航至“數據保留”:

根據數據類型增加Azure Log Analytics的數據保留時間
然後會彈出“數據保留選項卡”:
根據數據類型增加Azure Log Analytics的數據保留時間

可以看出,我們可以滑動滑塊來增加數據的保留週期。超過31天或更低的價格都包含在我們的定價計劃中。因此,假設我們要捕獲6個月的SecurityEvent日誌數據,但我們想保留30天的其他所有數據保留時間。在2019年10月8日之前,這是不可能的。如果必須收集6個月的SecurityEvent Log數據,我們將有兩個選擇:

  • 將數據保留增加到6個月,並將Log Analytics Workspace中的所有數據保留6個月。不利的一面是將所有數據保留6個月的成本增加。
  • 僅爲Azure SecurityEvent日誌數據創建另一個Log Analytics Workspace,並將數據保留時間設置爲6個月,而收集所有其他數據類型的數據的另一個Log Analytics Workspace保留30天。

但是由於此新功能於2019年10月8日推出,因此不再需要限於以上兩個選項。

通過Rest API根據數據類型調整保留時間

接下來我們將使用ARMClient這個工具來進行一些必要的Rest API調用,從而幫助我們實現將SecurityEvent日誌的保留時間增加到6個月,同時所有其他類型的日誌保留時間不變。我們將使用Chocolatey安裝ARMClient。命令如下:

choco install armclient --source=https://chocolatey.org/api/v2/

根據數據類型增加Azure Log Analytics的數據保留時間

安裝後,可以通過在命令提示符或PowerShell提示符中鍵入ARMClient來驗證安裝是否成功:
根據數據類型增加Azure Log Analytics的數據保留時間

接下來我們看下如何使用ARMClient配置每種數據類型的保留

讓我們使用以下命令登錄PowerShell中的Azure訂閱(此命令將彈出“現代身份驗證”表單,要求輸入組織ID用戶名和密碼):

ARMClient Login

根據數據類型增加Azure Log Analytics的數據保留時間

登錄成功後運行如下命令定義變量:

$Subscription = "00000000-0000-0000-0000-00000000000"
$ResourceGroup = "analytics-rg"
$LogAnalyticsName = "demo0327-LogAnalyticsWS"

根據數據類型增加Azure Log Analytics的數據保留時間

然後運行如下命令來將保留時間設置爲180天

ARMClient Put /subscriptions/$Subscription/resourceGroups/$ResourceGroup/providers/Microsoft.OperationalInsights/workspaces/$LogAnalyticsName/Tables/SecurityEvent?api-version=2017-04-26-preview "{properties: {retentionInDays: 180}}"

根據數據類型增加Azure Log Analytics的數據保留時間
現在,我們的Log Analytics Workspace中爲SecurityEvent收集的數據將保留180天,而沒有指定的tentionInInDays屬性的所有數據將保留我們在門戶中配置的30天。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章