在 Log Analytics 工作區上設定每日上限
Log Analytics 工作區的每日上限會在達到指定的閾值時停止收集當日剩餘時間的計費資料,以免資料擷取費用非預期增加。 本文說明每日上限的運作方式,以及如何在工作區中設定每日上限。
重要
請謹慎設定每日上限,因為停止收集資料時,觀察與接收有關資源健康情況警示的能力會受到影響。 這也會影響功能有賴於工作區所提供之最新資料的其他 Azure 服務和解決方案。 不建議設定容易經常達到的每日限制目標,而是以此作為不常用的方法,避免因收集的資料量非預期增加而產生非計劃性的費用。
如需降低 Azure 監視器成本的策略,請參閱 成本最佳化和 Azure 監視器。
需要的權限
動作 | 需要的權限或角色 |
---|---|
在 Log Analytics 工作區中設定每日上限 | 您設定每日上限的 Log Analytics 工作區的 Microsoft.OperationalInsights/workspaces/write 權限,例如 Log Analytics 參與者內建角色提供的權限。 |
設定傳統 Application Insights 資源的每日上限 | 您設定每日上限的傳統 Application Insights 資源的 microsoft.insights/components/CurrentBillingFeatures/write 權限,例如,Application Insights 元件參與者內建角色提供的權限。 |
達到 Log Analytics 工作區的每日上限時建立警示 | microsoft.insights/scheduledqueryrules/write 權限,例如,監視參與者的內建角色提供的權限 |
達到傳統 Application Insights 資源的每日上限時建立警示 | microsoft.insights/activitylogalerts/write 權限,例如,監視參與者的內建角色提供的權限 |
檢視每日上限的效果 | 對您查詢的 Log Analytics 工作區的 Microsoft.OperationalInsights/workspaces/query/*/read 權限,例如,Log Analytics 讀取器內建角色所提供的權限。 |
每日上限的運作方式
每個工作區都有可定義自己資料量限制的每日上限。 達到每日上限後,在 Azure 入口網站的所選 Log Analytics 工作區頁面頂端會出現警告橫幅,且系統會將作業事件傳送至 [LogManagement] 類別下的 Operation 資料表。 您可以選擇是否建立警示規則,以在建立此事件時傳送警示。
用於每日上限的資料大小是客戶所定義資料轉換之後的大小。 (深入了解資料收集規則中的資料轉換。)
資料收集會在重設時間後繼續,這是每個工作區重新開始計算當日時間的整點。 無法設定此重設小時。 您可以選擇是否建立警示規則,以在建立此事件時傳送警示。
注意
每日上限無法在精確指定的上限層級停止資料收集,而且預期有一些超出的資料。 如果工作區收到高速率的資料,則超過每日上限的資料收集可能會特別龐大。 如果收集的資料高於上限,則仍會計費。 如需有助於研究每日上限行為的查詢,請參閱檢視每日上限的效果。
使用每日上限的時機
特別具成本意識的組織通常會使用每日上限。 它們不應該是用來做為降低成本的方法,而是做為預防措施,以確保您不會超過特定預算。
當資料收集停止時,您實際上不會監視依賴該工作區的功能和資源。 您可以建立警示規則,以在資料收集達到每日上限之前的某個層級時通知您,而不是依賴每日上限。 通知可讓您在資料收集關閉之前解決任何增加的問題,甚至暫時停用收集較不重要的資源。
Application Insights
您應該設定 Application Insights 和 Log Analytics 的每日上限設定,以限制服務所擷取的遙測資料量。 針對以工作區為基礎的 Application Insights 資源,有效的每日上限是兩個設定的最小值。 針對傳統的 Application Insights 資源,由於其資料不在 Log Analytics 工作區中,因此只會套用 Application Insights 的每日上限。
提示
如果擔心 Application Insights 收集的可計費資料量,建議您設定取樣,將資料量調整為您想要的級距。 使用每日上限作為因應應用程式開始非預期傳送大量遙測資料時的安全方法。
除非針對高流量應用程式要求更高的上限,否則 Application Insights 傳統資源的每日最高上限是 1,000 GB。 在 Azure 入口網站中建立資源時,每日上限會設定為每日 100 GB。 在 Visual Studio 中建立資源時,預設值很小 (每日只有 32.3 MB)。 每日上限預設值的設定是為了協助測試。 這是預期使用者在將應用程式部署至生產環境之前,會提高每日上限。
注意
如果您使用連接字串,使用 區域擷取端點將資料傳送至 Application Insights,則 Application Insights 和 Log Analytics 每日上限設定會在每個區域生效。 如果您只使用檢測金鑰 (ikey) 透過 全域擷取端點 將資料傳送至 Application Insights,則 Application Insights 每日上限設定可能無法跨區域生效,但 Log Analytics 每日上限設定仍適用。
我們已移除某些訂用帳戶類型的信用額度無法用於 Application Insights 的限制。 先前,如果訂用帳戶有消費限制,則 [每日上限] 對話方塊中會有指示,說明如何移除消費限制並讓每日上限提高到每日 32.3 MB 以上。
決定每日上限
為協助您判斷工作區的適當每日上限,請參閱 Azure 監視器成本和使用量,以了解您的資料擷取趨勢。 您也可以參閱分析 Log Analytics 工作區的使用量,這會提供更詳細的工作區使用量分析方法。
使用適用於雲端的 Microsoft Defender 的工作區
重要
從 2023 年 9 月 18 日起,Azure 監視器會在達到每日上限時
對所有計費資料類型設定上限。 在工作區上啟用 適用於伺服器的 Microsoft Defender 時,任何資料類型都沒有特殊行為。
此變更能改善您完全控制高於預期的資料擷取所帶來之成本的能力。
如果您在已啟用適用於伺服器的 Microsoft Defender 工作區上設定每日上限,請確定上限夠高,以容納這項變更。
此外,請務必設定警示 (如下所示),以便在符合每日上限時立即收到通知。
在 2023 年 9 月 18 日之前,如果工作區在 2017 年 6 月 19 日之後啟用 適用於伺服器的 Microsoft Defender 解決方案,則會針對適用於雲端的 Microsoft Defender 或 Microsoft Sentinel 收集某些安全性相關資料類型,儘管已設定任何每日上限。 以下資料類型將受到每日上限的特殊例外的影響 WindowsEvent、SecurityAlert、SecurityBaseline、SecurityBaselineSummary、SecurityDetection、SecurityEvent、WindowsFirewall、MaliciousIPCommunication、LinuxAuditLog、SysmonEvent、ProtectionStatus、Update、UpdateSummary、CommonSecurityLog 和 Syslog
設定每日上限
Log Analytics 工作區
在 Azure 入口網站中設定或變更 Log Analytics 工作區的每日上限:
- 從 [Log Analytics 工作區] 功能表選取您的工作區,然後選取 [使用量和估計成本]。
- 選取頁面頂端的 [每日上限]。
- 選取 [開啟],然後設定每天的資料量限制 (GB/天)。
注意
您會看到工作區的重設小時,但無法設定。
若要使用 Azure Resource Manager 設定每日上限,請依照工作區 - 建立或更新中所述,將 dailyQuotaGb
參數設定低於 WorkspaceCapping
。
傳統 Application Insights 資源
在 Azure 入口網站中設定或變更傳統 Application Insights 資源的每日上限:
- 從 [監視] 功能表中,依序選取 [應用程式]、您的應用程式和 [使用量和估計成本]。
- 選取頁面頂端的 [資料上限]。
- 設定每天的資料量限制 (GB/天)。
- 如果希望在達到每日限制時傳送電子郵件給訂閱管理員,請選取該選項。
- 按資料量限制的百分比,設定每日上限警告層級。
- 如果希望在達到每日上限警告層級時傳送電子郵件給訂閱管理員,請選取該選項。
若要使用 Azure Resource Manager 設定每日上限,請依照工作區 - 建立或更新中所述,設定 dailyQuota
、dailyQuotaResetTime
和 warningThreshold
參數。
達到每日上限時發出警示
當 Log Analytics 工作區達到每日上限時,Azure 入口網站會顯示橫幅,事件則會寫入工作區的 Operations 資料表。 建議您建立警示規則,以在發生這種情況時主動通知您。
若要在達到每日上限時收到警示,請使用下列詳細資料建立 記錄搜尋警示規則。
設定 | 值 |
---|---|
範圍 | |
目標範圍 | 選取 Log Analytics 工作區。 |
Condition | |
訊號類型 | 記錄 |
訊號名稱 | 自訂記錄搜尋 |
查詢 | _LogOperation | where Category =~ "Ingestion" | where Detail contains "OverQuota" |
測量 | 量值:「資料表資料列」 彙總類型: 計數 彙總細微性:5 分鐘 |
警示邏輯 | 運算子:大於 閾值:0 評估頻率:5 分鐘 |
動作 | 選取或新增動作群組,以在超過閾值時通知您。 |
詳細資料 | |
嚴重性 | 警告 |
警示規則名稱 | 已達到每日資料限制 |
傳統 Application Insights 資源
當傳統 Application Insights 資源達到每日上限時,Azure 活動記錄就會使用下列訊號名稱建立事件。 您也可以選擇在達到上限和達到每日上限指定百分比時,傳送電子郵件給訂閱管理員。
- 已達到 Application Insights 元件每日上限警告閾值
- 已達到 Application Insights 元件每日上限
若要建立達到每日上限的警示,請使用下列詳細資料建立活動記錄警示規則。
設定 | 值 |
---|---|
範圍 | |
目標範圍 | 選取您的應用程式。 |
Condition | |
訊號類型 | 活動記錄檔 |
訊號名稱 | 已達到 Application Insights 元件每日上限 Or 已達到 Application Insights 元件每日上限警告閾值 |
嚴重性 | 警告 |
警示規則名稱 | 已達到每日資料限制 |
檢視每日上限的效果
下列查詢可用來追蹤每次重設每日上限的 Log Analytics 工作區每日上限資料量。 在此範例中,工作區的重設小時是 14:00。 變更 DailyCapResetHour
以符合您可以在 [每日上限] 設定頁面上看到的工作區的重設時數。
let DailyCapResetHour=14;
Usage
| where TimeGenerated > ago(32d)
| extend StartTime=datetime_add("hour",-1*DailyCapResetHour,StartTime)
| where StartTime > startofday(ago(31d))
| where IsBillable
| summarize IngestedGbBetweenDailyCapResets=sum(Quantity)/1000. by day=bin(StartTime , 1d) // Quantity in units of MB
| render areachart
當更新管理解決方案不在工作區上執行或解決方案目標已啟用時,將 Update
和 UpdateSummary
資料類型新增至 where Datatype
行 (深入了解)。
下一步
- 請參閱 Azure 監視器記錄定價詳細資料,取得 Log Analytics 工作區資料費用計算及不同組態選項的詳細資料,以便降低費用。
- 請參閱 Azure 監視器記錄定價詳細資料,取得 Log Analytics 工作區資料費用計算及不同組態選項的詳細資料,以便降低費用。
- 如需了解分析工作區資料的詳細資料,請參閱分析 Log Analytics 工作區中的使用量,以便判斷高於預期使用量的來源,並找出減少收集資料量的機會。