You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: articles/azure-monitor/best-practices-cost.md
+28-15Lines changed: 28 additions & 15 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -27,13 +27,12 @@ This article describes [Cost optimization](/azure/architecture/framework/cost/)
27
27
28
28
## Azure resources
29
29
30
+
30
31
### Design checklist
31
32
32
33
> [!div class="checklist"]
33
-
> - Use diagnostic settings and transformations to collect only critical resource log data from Azure resources.
34
-
> - Configure VM agents to collect only critical events.
35
-
> - Use transformations to filter resource logs for [supported tables](logs/tables-feature-support.md).
36
-
> - Ensure that VMs aren't sending data to multiple workspaces.
34
+
> - Collect only critical resource log data from Azure resources.
35
+
37
36
38
37
### Configuration recommendations
39
38
@@ -45,31 +44,52 @@ This article describes [Cost optimization](/azure/architecture/framework/cost/)
45
44
46
45
### Design checklist
47
46
47
+
48
+
> [!div class="checklist"]
49
+
> - Configure VM agents to collect only important events.
50
+
> - Ensure that VMs aren't sending data to multiple workspaces.
51
+
> - Use transformations to filter unnecessary data from collected events.
52
+
48
53
### Configuration recommendations
49
54
50
55
| Recommendation | Description |
51
56
|:---|:---|
52
-
| Configure VM agents to collect only critical events. | Virtual machines can vary significantly in the amount of data they collect, depending on the amount of telemetry generated by the applications and services they have installed. See [Monitor virtual machines with Azure Monitor: Workloads](vm/monitor-virtual-machine-data-collection.md#controlling-costs) for guidance on data to collect and strategies for using XPath queries and transformations to limit it.|
57
+
| Configure VM agents to collect only important events. | Virtual machines can vary significantly in the amount of data they collect, depending on the amount of telemetry generated by the applications and services they have installed. See [Monitor virtual machines with Azure Monitor: Workloads](vm/monitor-virtual-machine-data-collection.md#controlling-costs) for guidance on data to collect and strategies for using [XPath queries](agents/data-collection-rule-azure-monitor-agent.md#filter-events-using-xpath-queries) to limit it.|
53
58
| Ensure that VMs aren't sending duplicate data. | Any configuration that uses multiple agents on a single machine or where you multi-home agents to send data to multiple workspaces may incur charges for the same data multiple times. If you do multi-home agents, make sure you're sending unique data to each workspace. See [Analyze usage in Log Analytics workspace](logs/analyze-usage.md) for guidance on analyzing your collected data to make sure you aren't collecting duplicate data. If you're migrating between agents, continue to use the Log Analytics agent until you [migrate to the Azure Monitor agent](./agents/azure-monitor-agent-migration.md) rather than using both together unless you can ensure that each is collecting unique data. |
59
+
| Use transformations to filter unnecessary data from collected events. |[Transformations](essentials/data-collection-transformations.md) can be used in data collection rules to remove unnecessary data or even entire columns from events collected from the virtual machine which can significantly reduce the cost for their ingestion and retention. |
54
60
55
61
## Container insights
56
62
57
63
### Design checklist
58
64
65
+
> [!div class="checklist"]
66
+
> - Configure agent collection to remove unneeded data.
67
+
> - Modify settings for collection of metric data.
68
+
> - Limit Prometheus metrics collected.
69
+
> - Configure Basic Logs.
59
70
### Configuration recommendations
60
71
61
72
| Recommendation | Description |
62
73
|:---|:---|
63
74
| Configure agent collection to remove unneeded data. | Analyze the data collected by Container insights as described in [Controlling ingestion to reduce cost](containers/container-insights-cost.md#control-ingestion-to-reduce-cost) and adjust your configuration to stop collection of data in ContainerLogs you don't need. |
64
-
| Modify settings for collection of metric data | You can reduce your costs by modifying the default collection settings Container insights uses for the collection of metric data. See [Enable cost optimization settings (preview)](containers/container-insights-cost-config.md) for details on modifying both the frequency that metric data is collected and the namespaces that are collected. |
65
-
| Limit Prometheus metrics collected | If you configured Prometheus metric scraping, then follow the recommendations at [Controlling ingestion to reduce cost](containers/container-insights-cost.md#prometheus-metrics-scraping) to optimize your data collection for cost. |
66
-
| Configure Basic Logs |[Convert your schema to ContainerLogV2](containers/container-insights-logging-v2.md) which is compatible with Basic logs and can provide significant cost savings as described in [Controlling ingestion to reduce cost](containers/container-insights-cost.md#configure-basic-logs). |
75
+
| Modify settings for collection of metric data.| You can reduce your costs by modifying the default collection settings Container insights uses for the collection of metric data. See [Enable cost optimization settings (preview)](containers/container-insights-cost-config.md) for details on modifying both the frequency that metric data is collected and the namespaces that are collected. |
76
+
| Limit Prometheus metrics collected.| If you configured Prometheus metric scraping, then follow the recommendations at [Controlling ingestion to reduce cost](containers/container-insights-cost.md#prometheus-metrics-scraping) to optimize your data collection for cost. |
77
+
| Configure Basic Logs.|[Convert your schema to ContainerLogV2](containers/container-insights-logging-v2.md) which is compatible with Basic logs and can provide significant cost savings as described in [Controlling ingestion to reduce cost](containers/container-insights-cost.md#configure-basic-logs). |
67
78
68
79
69
80
## Application Insights
70
81
71
82
### Design checklist
72
83
84
+
> [!div class="checklist"]
85
+
> - Use sampling to tune the amount of data collected.
86
+
> - Use sampling to tune the amount of data collected.
87
+
> - Limit the number of Ajax calls.
88
+
> - Disable unneeded modules.
89
+
> - Pre-aggregate metrics from any calls to TrackMetric.
90
+
> - Limit the use of custom metrics.
91
+
> - Ensure use of updated SDKs.
92
+
73
93
### Configuration recommendations
74
94
75
95
| Recommendation | Description |
@@ -82,13 +102,6 @@ This article describes [Cost optimization](/azure/architecture/framework/cost/)
82
102
| Limit the use of custom metrics. | The Application Insights option to [Enable alerting on custom metric dimensions](app/pre-aggregated-metrics-log-metrics.md#custom-metrics-dimensions-and-pre-aggregation) can increase costs. Using this option can result in the creation of more pre-aggregation metrics. |
83
103
| Ensure use of updated SDKs. | Earlier versions of the ASP.NET Core SDK and Worker Service SDK [collect many counters by default](app/eventcounters.md#default-counters-collected), which were collected as custom metrics. Use later versions to specify [only required counters](app/eventcounters.md#customizing-counters-to-be-collected). |
84
104
85
-
#### All log data collection
86
-
87
-
| Recommendation | Description |
88
-
|:---|:---|
89
-
| Remove unnecssary data during data ingestion | After following all of the preveious recommendations, consider using Azure Monitor [data collection transformations](essentials/data-collection-transformations.md) to reduce the size of your data during ingestion. |
Copy file name to clipboardExpand all lines: articles/azure-monitor/faq.yml
+1-1Lines changed: 1 addition & 1 deletion
Original file line number
Diff line number
Diff line change
@@ -506,7 +506,7 @@ sections:
506
506
answer: |
507
507
Yes, for experimental use. In the basic pricing plan, your application can send a certain allowance of data each month free of charge. The free allowance is large enough to cover development and publishing an app for a few users. You can set a cap to prevent more than a specified amount of data from being processed.
508
508
509
-
Larger volumes of telemetry are charged by the gigabyte. We provide some tips on how to [limit your charges](best-practices-cost.md#data-collection).
509
+
Larger volumes of telemetry are charged by the gigabyte. We provide some tips on how to [limit your charges](best-practices-cost.md#application-insights).
510
510
511
511
The Enterprise plan incurs a charge for each day that each web server node sends telemetry. It's suitable if you want to use Continuous Export on a large scale.
0 commit comments