@@ -3,7 +3,7 @@ title: Analyze usage in a Log Analytics workspace in Azure Monitor
3
3
description : Methods and queries to analyze the data in your Log Analytics workspace to help you understand usage and potential cause for high usage.
4
4
ms.topic : conceptual
5
5
ms.reviewer : Dale.Koetke
6
- ms.date : 10/23/2023
6
+ ms.date : 08/14/2024
7
7
---
8
8
9
9
# Analyze usage in a Log Analytics workspace
@@ -175,46 +175,6 @@ find where TimeGenerated between(startofday(ago(1d))..startofday(now())) project
175
175
| sort by eventCount desc nulls last
176
176
```
177
177
178
- ### Querying for data volumes excluding known free data types
179
- The following query will return the monthly data volume in GB, excluding all data types which are supposed to be free from data ingestion charges:
180
-
181
- ``` kusto
182
- let freeTables = dynamic([
183
- "AppAvailabilityResults","AppSystemEvents","ApplicationInsights","AzureActivity","AzureNetworkAnalyticsIPDetails_CL",
184
- "AzureNetworkAnalytics_CL","AzureTrafficAnalyticsInsights_CL","ComputerGroup","DefenderIoTRawEvent","Heartbeat",
185
- "MAApplication","MAApplicationHealth","MAApplicationHealthIssues","MAApplicationInstance","MAApplicationInstanceReadiness",
186
- "MAApplicationReadiness","MADeploymentPlan","MADevice","MADeviceNotEnrolled","MADeviceReadiness","MADriverInstanceReadiness",
187
- "MADriverReadiness","MAProposedPilotDevices","MAWindowsBuildInfo","MAWindowsCurrencyAssessment",
188
- "MAWindowsCurrencyAssessmentDailyCounts","MAWindowsDeploymentStatus","NTAIPDetails_CL","NTANetAnalytics_CL",
189
- "OfficeActivity","Operation","SecurityAlert","SecurityIncident","UCClient","UCClientReadinessStatus",
190
- "UCClientUpdateStatus","UCDOAggregatedStatus","UCDOStatus","UCDeviceAlert","UCServiceUpdateStatus","UCUpdateAlert",
191
- "Usage","WUDOAggregatedStatus","WUDOStatus","WaaSDeploymentStatus","WaaSInsiderStatus","WaaSUpdateStatus"]);
192
- Usage
193
- | where DataType !in (freeTables)
194
- | where TimeGenerated > ago(30d)
195
- | summarize MonthlyGB=sum(Quantity)/1000
196
- ```
197
-
198
- To look for data which might not have IsBillable correctly set (and which could result in incorrect billing, or more specifically under-billing), use this query on your workspace:
199
-
200
- ``` kusto
201
- let freeTables = dynamic([
202
- "AppAvailabilityResults","AppSystemEvents","ApplicationInsights","AzureActivity","AzureNetworkAnalyticsIPDetails_CL",
203
- "AzureNetworkAnalytics_CL","AzureTrafficAnalyticsInsights_CL","ComputerGroup","DefenderIoTRawEvent","Heartbeat",
204
- "MAApplication","MAApplicationHealth","MAApplicationHealthIssues","MAApplicationInstance","MAApplicationInstanceReadiness",
205
- "MAApplicationReadiness","MADeploymentPlan","MADevice","MADeviceNotEnrolled","MADeviceReadiness","MADriverInstanceReadiness",
206
- "MADriverReadiness","MAProposedPilotDevices","MAWindowsBuildInfo","MAWindowsCurrencyAssessment",
207
- "MAWindowsCurrencyAssessmentDailyCounts","MAWindowsDeploymentStatus","NTAIPDetails_CL","NTANetAnalytics_CL",
208
- "OfficeActivity","Operation","SecurityAlert","SecurityIncident","UCClient","UCClientReadinessStatus",
209
- "UCClientUpdateStatus","UCDOAggregatedStatus","UCDOStatus","UCDeviceAlert","UCServiceUpdateStatus","UCUpdateAlert",
210
- "Usage","WUDOAggregatedStatus","WUDOStatus","WaaSDeploymentStatus","WaaSInsiderStatus","WaaSUpdateStatus"]);
211
- Usage
212
- | where DataType !in (freeTables)
213
- | where TimeGenerated > ago(30d)
214
- | where IsBillable == false
215
- | summarize MonthlyPotentialUnderbilledGB=sum(Quantity)/1000 by DataType
216
- ```
217
-
218
178
## Querying for common data types
219
179
If you find that you have excessive billable data for a particular data type, you might need to perform a query to analyze data in that table. The following queries provide samples for some common data types:
220
180
0 commit comments