Describes compatibility issue with .NET App Insights (#5444)

This commit is contained in:
Iliar Turdushev 2024-09-27 01:01:37 +02:00 коммит произвёл GitHub
Родитель 5dc6476147
Коммит 68d6894601
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: B5690EEEBB952194
1 изменённых файлов: 20 добавлений и 0 удалений

Просмотреть файл

@ -103,6 +103,26 @@ There's a build time check that verifies if you're using `Grpc.Net.ClientFactory
</PropertyGroup>
```
### Compatibility with .NET Application Insights
If you're using .NET Application Insights, then enabling resilience functionality in your application could cause all Application Insights telemetry to be missing. The issue occurs when resilience functionality is registered before Application Insights services. Consider the following sample causing the issue:
```csharp
// At first, we register resilience functionality.
services.AddHttpClient().AddStandardResilienceHandler();
// And then we register Application Insights. As a result, Application Insights doesn't work.
services.AddApplicationInsightsTelemetry();
```
The issue is caused by the following [bug](https://github.com/microsoft/ApplicationInsights-dotnet/issues/2879) in Application Insights and can be fixed by registering Application Insights services before resilience functionality, as shown below:
```csharp
// We register Application Insights first, and now it will be working correctly.
services.AddApplicationInsightsTelemetry();
services.AddHttpClient().AddStandardResilienceHandler();
```
## Feedback & Contributing
We welcome feedback and contributions in [our GitHub repo](https://github.com/dotnet/extensions).