Move to 'Azure.Identity' v1.14.2 and refactor the telemetry library #404
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
PR Summary
Fix #393
I can reproduce this issue on macOS with the error from
AzurePowerShellCredential()being"PowerShell did not return a valid response."This turns out to be an issue with theAzure.Identitylibrary (Azure/azure-sdk-for-net#50578). After moving to the latest1.14.2of the package, it works for me on macOS.However, moving to the
1.14.2of theAzure.Identitycaused a dependency conflict with theMicrosoft.ApplicationInsights.WorkerServicepackage, which brings in an older version ofMicrosoft.Extensions.DependencyInjectionthat conflicts with the newer version ofMicrosoft.Extensions.DependencyInjection.Abstractionsthat comes withAzure.Identity.In fact, we should not depend on
Microsoft.ApplicationInsights.WorkerService, but instead should useMicrosoft.ApplicationInsightsdirectly. TheWorkerServicepackage was designed for ASP.NET Core applications that need automatic dependency injection, performance counters, and various auto-collectors. For a simple console application that just needs to send traces and exceptions to Application Insights, the coreMicrosoft.ApplicationInsightspackage is perfect and much more appropriate.What were changed: (summarized by GitHub Copilot)
Microsoft.ApplicationInsights.WorkerServicewith justMicrosoft.ApplicationInsightsTelemetryConfiguration.CreateDefault()with connection string instead of deprecated approachesBenefits of the change: (summarized by GitHub Copilot)