Azure / Azure/azure-functions-host
Allow filtering of app insights dependency tracking
- Dominant language
- C#
- Stars
- 2k
- Forks
- 482
- Avg merge
- 2d 12h
- Merged PRs (30d)
- 38
Description
#### What problem would the feature you're requesting solve? Please describe.
It is possible to enable/disable Application Insights dependency tracking through the host.json file but this is an all or nothing settings.
I would like to be able to enable dependency tracking and specify which dependency i will track through configuration and avoid using a custom ITelemetryProcessor.
I need this because the latest Azure SDKs are tracking too much dependencies. For example with Event Hubs there is one entry for each message created in memory and one for each send, for Storage we have one entry for the method call and one for the actual HTTP call. This increase the number of billed data in Application Insights too much.
#### Describe the solution you'd like
A solution would be to have a new section `dependencyTrackingFilters` under `applicationInsights` in the `host.json` where we could add dependency entry names to exclude (or include).
#### Describe alternatives you've considered
Alternative is to create our own ITelemetryProcessor and inject it.
#### Additional context
The issue here is really about cost management in Application Insights. All MS teams working on Azure SDKs/products and supporting Application Insights should have this cost requirement in mind.
Contributor guide
Research direction
Start with host.json's existing applicationInsights dependency-tracking settings and the custom ITelemetryProcessor alternative described in the issue. Trace how dependency telemetry from Event Hubs and Storage is configured, then define how include or exclude entries would work; done means selected dependency entries can be filtered without disabling all dependency tracking.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- azure, csharp
- Domain
- backend, cloud, observability-sre
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 30/100