Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[AzureMonitorOpenTelemetryDistro] AddAzureMonitorOpenTelemetry extension methods and AzureMonitorOpenTelemetryOptions #34198

Merged
merged 13 commits into from
Feb 24, 2023

Conversation

rajkumar-rangaraj
Copy link
Contributor

@rajkumar-rangaraj rajkumar-rangaraj commented Feb 15, 2023

Related to #33865

Three new public APIs for IServiceCollection extension have been added:

  1. builder.Services.AddAzureMonitorOpenTelemetry()
  2. builder.Services.AddAzureMonitorOpenTelemetry(AzureMonitorOpenTelemetryOptions options)
  3. builder.Services.AddAzureMonitorOpenTelemetry(Action<AzureMonitorOpenTelemetryOptions> configureAzureMonitorOpenTelemetry);

Changes

  • The changes includes the addition of AzureMonitorOpenTelemetryOptions to enable or disable the collection of logs, metrics, and traces.
  • Added ASP.NET Core example project to demonstrate integration and telemetry collection.
  • Added OpenTelemetry.Extensions.Hosting and OpenTelemetry.Instrumentation.AspNetCore package.
  • The given code snippet includes example telemetry data collected by the application, such as a request and metric data with associated properties and values.
{"name":"Request","time":"2023-02-16T00:23:19.9168503Z","iKey":"00000000-0000-0000-0000-000000000000","tags":{"ai.operation.id":"c4328d0fa3de84b218dc2be782601625","ai.user.userAgent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36","ai.operation.name":"GET /","ai.location.ip":null,"ai.cloud.role":"unknown_service:Examples.AspNetCore","ai.cloud.roleInstance":"rajrang-ai","ai.internal.sdkVersion":"dotnet7.0.3:otel1.4.0-rc.4:ext1.0.0-alpha.20230215.1"},"data":{"baseType":"RequestData","baseData":{"id":"9b7836a40b2c590b","name":"GET /","duration":"00:00:00.8437928","success":true,"responseCode":"200","url":"http://localhost:5286/","properties":{"http.flavor":"1.1","_MS.ProcessedByMetricExtractors":"(Name: X,Ver:\u00271.1\u0027)"},"ver":2}}}
{"name":"Metric","time":"2023-02-16T00:24:17.4226322Z","iKey":"00000000-0000-0000-0000-000000000000","tags":{"ai.cloud.role":"unknown_service:Examples.AspNetCore","ai.cloud.roleInstance":"rajrang-ai","ai.internal.sdkVersion":"dotnet7.0.3:otel1.4.0-rc.4:ext1.0.0-alpha.20230215.1"},"data":{"baseType":"MetricData","baseData":{"metrics":[{"ns":"OpenTelemetry.Instrumentation.AspNetCore","name":"http.server.duration","value":843.7928,"count":1,"min":843.7928,"max":843.7928}],"properties":{"http.flavor":"1.1","http.method":"GET","http.route":"/","http.scheme":"http","http.status_code":"200","net.host.name":"localhost","net.host.port":"5286"},"ver":2}}}
{"name":"Metric","time":"2023-02-16T00:24:17.4226641Z","iKey":"00000000-0000-0000-0000-000000000000","tags":{"ai.cloud.role":"unknown_service:Examples.AspNetCore","ai.cloud.roleInstance":"rajrang-ai","ai.internal.sdkVersion":"dotnet7.0.3:otel1.4.0-rc.4:ext1.0.0-alpha.20230215.1"},"data":{"baseType":"MetricData","baseData":{"metrics":[{"name":"requests/duration","value":843.7928,"count":1,"min":843.7928,"max":843.7928}],"properties":{"_MS.IsAutocollected":"True","_MS.MetricId":"requests/duration","cloud/roleInstance":"rajrang-ai","cloud/roleName":"unknown_service:Examples.AspNetCore","Request.Success":"True","request/resultCode":"200"},"ver":2}}}

@TimothyMothra

This comment was marked as resolved.

@cijothomas
Copy link
Contributor

Services.AddAzureMonitorOpenTelemetry()
Services.AddAzureMonitorOpenTelemetry(IConfiguration config) => usage Services.AddAzureMonitorOpenTelemetry(builder.Configuration.GetSection("AzureMonitorOpenTelemetry"))
Services.AddAzureMonitorOpenTelemetry(AzureMonitorOpenTelemetryOptions options)

Could we remove the ones taking IConfiguration? Why are they needed....

@rajkumar-rangaraj
Copy link
Contributor Author

Could we remove the ones taking IConfiguration? Why are they needed....

If someone wants to use read the value from appSettings.json or environment variable this should help. Technically, they could bind outside and pass it as a options too. I don't have a strong preference, waiting to hear more feedback on it.

@cijothomas
Copy link
Contributor

In my opinion, you should remove everything from the example project that isn't relevant to the OTel. I would remove the wwwroot, Privacy, and Error pages.

https://github.com/open-telemetry/opentelemetry-dotnet/tree/main/docs/trace/getting-started-aspnetcore use this approach to get a leaner example.

@azure-sdk
Copy link
Collaborator

API change check

APIView has identified API level changes in this PR and created following API reviews.

Azure.Monitor.OpenTelemetry

@cijothomas
Copy link
Contributor

Could we remove the ones taking IConfiguration? Why are they needed....

If someone wants to use read the value from appSettings.json or environment variable this should help. Technically, they could bind outside and pass it as a options too. I don't have a strong preference, waiting to hear more feedback on it.

I think we could retrieve it ourselves from DI...

Copy link
Member

@reyang reyang left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks nice to me, I've left several suggestions but none of them are real blockers.

@samsp-msft
Copy link

samsp-msft commented Feb 17, 2023

Suggestions for options:

  • Have a method to add identifiers for custom metrics
  • Have a method to add identifiers for custom ActivitySources
    • Should both of these be available through configuration? Is this something an SRE would want to change at runtime without having to go back to the developer to change?
  • Have an option for dumping traces to the console, defaults to off, but samples should set this based on Environment.IsDevelopment,. This would map to the .AddConsoleExporter() for tracing.

Edit: This PR can go in without, and add later.

@noahfalk
Copy link

Added 4 different public API in this PR. We need to select one or two from the list and discard remaining APIs

If all four were useful I'd suggest keeping all 4, I don't know why we'd limited to only having a certain number. That said I think the 2nd and 3rd have limited utility and might cause people to shoot themselves in the foot with non-standard or non-reloadable configurations. I'd suggest starting with 1+4 and then listen to user feedback to see if that is sufficient.

@rajkumar-rangaraj
Copy link
Contributor Author

In the first beta version, we plan to include all 4 public APIs that have been proposed. However, we may choose to remove some of them after considering customer feedback and any potential supportability issues that arise.

Copy link

@noahfalk noahfalk left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Glad to see us putting together an easy path :)

/// <summary>
/// Gets or sets a value indicating whether Traces should be enabled.
/// </summary>
public bool EnableTraces { get; set; } = true;

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we want to give users options to enable/disable metrics/logs/traces individually? ApplicationInsights SDK only has a single DisableTelemetry option as best I can tell and I'm not sure if there was much customer feedback around that or some other motivation to do things differently?

If we do start adding options to enable/disable specific subsets of telemetry then it would be good to understand a bit of a roadmap for it so we don't paint ourselves into an awkward corner. For example if we have EnableTraces first, but then later we add a List<string> of enabled trace sources because users needed more control, and then later still we decide to break the glass exposing OpenTelemetryTracerProviderBuilder for even more advanced usage it becomes unclear how these mechanisms would compose together.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ApplicationInsights SDK only has a single DisableTelemetry option as best I can tel

Application Insights has on/off for each auto-collection module.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is something to be discussed more. I think most users should be good with the defaults. But then they can ask for additional things like - add custom meter, activitysource, other things.. We should not say "sorry not possible. you have to get rid of distro, and do everything by hand". I am hoping we can say "you can customize otel completely while retaining the distro's one-line, by registering your own Action to DI"..

For example:
AddAzMon() - adds 4 instrumentaion libraries.
User want to add a 5th one.
it should be something like

AddAzmon() - no change here.
ConfigureTracerProviderBuilder(builder.AddMyNewInstrumentation());

^ Is this your expectation too?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I tested it earlier, customer would be able to get additional instrumentations, custom ActivitySource, etc., Syntax is something like you explained ^.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I feel like this still leaves several questions...

  1. Will users figure that plan out?
  2. Will it be a common occurrence that people want to add a little extra, and when they do they will have this (IMO) odd looking configuration code?
  3. Assuming they do figure it out and people start mixing and matching the different configuration APIs, how likely is it that a new user seeing this code understands what output it produces?
services.AddAzureMonitorOpenTelemetry(o =>
{
    o.EnableMetrics = false;
}
services.ConfigureMeterProviderBuilder(b => b.AddMeter("Foo"));

If I ignore what I've seen of the implementation and just guess what behavior this should have I don't know what to expect.

It is good to know what works but I also want to be a little pointed that my concern here is about does the API look nice, will it feel easy to use and be easily understandable. I am thinking of this API as the front door of Azure Monitor for .NET developers for the next decade. It will show up in samples everywhere, it will be first (and perhaps only) lines of code they write, and it will set their first impression.

Application Insights has on/off for each auto-collection module.

Can you point me at them? I didn't find them either by searching the web or looking at some of the source. Its likely I didn't guess the right terms to search for.

Copy link
Contributor

@cijothomas cijothomas Feb 24, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Will users figure that plan out?

I do not see any reason why users have trouble figuring this out... This has been the pattern in ApplicationInsights (does not mean its a perfect solution! It certainly has a lot of ugliness as it was built over time, and had to keep back-compat, etc, but overall it feels clean IMHO.).

The overall flow is like:

  1. Basic usage with all defaults. (used in hello world, pretty much the face of app insights)
    services.AddApplicationInsightsTelemetry();
  • enables app insights with all defaults (auto collection modules, few initializers, sampling processor, metric extraction, livemetrics, etc.), and reads ConnectionString from IConfig.
  1. User want turn on/off things - They are given knobs for most things (on/off for most common feature, not all).
  2. User want to add more things like more processor, initializers - They just add it to DI, and it'll be picked up.
  3. User want to customize each auto-collection module - ConfigureTelemetryModule<DependencyTrackingTelemetryModule> with an action to fully customize the auto-collection modules.

The doc for ref: https://learn.microsoft.com/en-us/azure/azure-monitor/app/asp-net-core?tabs=netcorenew%2Cnetcore6#configure-the-application-insights-sdk

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If I ignore what I've seen of the implementation and just guess what behavior this should have I don't know what to expect.

Thats fair. I can see it can be hard to predict the behavior without reading accompanying doc

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In my view, these public API offer customers a quick and easy way to collect telemetry and send data to application insights. We could document limited customization options, such as adding new instrumentation or changing sampling percentages, etc., However, when complex configuration updates are needed for most instrumentations within the TracerProvider/MeterProvider, we should suggest that customers use the "piece meal" approach. This approach involves manually building the TracerProvider/MeterProvider with Azure Monitor Exporter using the documentation provided by OpenTelemetry .NET SDK, without utilizing any of the distro APIs.

The plan is same for .NET Worker Service, to start with we will not have any package and customer need to take a piece meal approach.

@alexdresko
Copy link

Opinion: AddAzureMonitorOpenTelemetry should have the same overloads and functionality as AddApplicationInsightsTelemetry, including the ability to use the APPLICATIONINSIGHTS_CONNECTION_STRING env var. See the docs.

image

Personally, I'm looking to use option #3 in the PR description here, or an env var (again, preferably APPLICATIONINSIGHTS_CONNECTION_STRING because I'm already passing that env var to my application).

@cijothomas
Copy link
Contributor

Opinion: AddAzureMonitorOpenTelemetry should have the same overloads and functionality as AddApplicationInsightsTelemetry, including the ability to use the APPLICATIONINSIGHTS_CONNECTION_STRING env var. See the docs.

image

Personally, I'm looking to use option #3 in the PR description here, or an env var (again, preferably APPLICATIONINSIGHTS_CONNECTION_STRING because I'm already passing that env var to my application).

APPLICATIONINSIGHTS_CONNECTION_STRING would definitely be supported.

@rajkumar-rangaraj
Copy link
Contributor Author

Opinion: AddAzureMonitorOpenTelemetry should have the same overloads and functionality as AddApplicationInsightsTelemetry, including the ability to use the APPLICATIONINSIGHTS_CONNECTION_STRING env var. See the docs.

image

Personally, I'm looking to use option #3 in the PR description here, or an env var (again, preferably APPLICATIONINSIGHTS_CONNECTION_STRING because I'm already passing that env var to my application).

Alternatively, you could use

builder.Services.Configure<AzureMonitorOpenTelemetryOptions>(builder.Configuration.GetSection("AzureMonitorOpenTelemetry"));

beta-1 version of this distribution will have support for APPLICATIONINSIGHTS_CONNECTION_STRING .

@rajkumar-rangaraj
Copy link
Contributor Author

The pull request and its description have been updated following the feedback. Now, we have implementation of these three public APIs

1. builder.Services.AddAzureMonitorOpenTelemetry()
2. builder.Services.AddAzureMonitorOpenTelemetry(AzureMonitorOpenTelemetryOptions options)
3. builder.Services.AddAzureMonitorOpenTelemetry(Action<AzureMonitorOpenTelemetryOptions> configureAzureMonitorOpenTelemetry);

@rajkumar-rangaraj rajkumar-rangaraj merged commit 412b76f into Azure:main Feb 24, 2023
Harshit-Shrivastava pushed a commit to Harshit-Shrivastava/azure-sdk-for-net that referenced this pull request Feb 24, 2023
…ion methods and AzureMonitorOpenTelemetryOptions (Azure#34198)

* Distro Public API

* PR feedback

* Update public API

* 4 Public APIs

* Update sdk/monitor/Azure.Monitor.OpenTelemetry/tests/Examples.AspNetCore/Examples.AspNetCore.csproj

* Fix build error for demo project.

* Fix error in sample

* Remove 461 packages

* 4 APIs in samples.

* Remove public api with parameters.

* PR feedback

* Update API

* Apply connectionstring from AzureMonitorOpenTelemetryOptions to AzureMonitorExporterOptions.

---------

Co-authored-by: Timothy Mothra <[email protected]>
Harshit-Shrivastava added a commit to Harshit-Shrivastava/azure-sdk-for-net that referenced this pull request Feb 24, 2023
* [DataFactory]Added new features into 9.2.0 (Azure#34452)

* Increment package version after release of Azure.Monitor.Ingestion (Azure#34431)

* Disabled ApiCompact on Microsoft.Azure.WebJobs.Extensions.Storage (Azure#34478)

* [AzureMonitorExporter] misc cleanup (Azure#34434)

* misc cleanup

* add tests for EventSource

* more changelog cleanup

* Fix double dispose in BlobBatch (Azure#34427)

* Rename type (Azure#34480)

* [AzureMonitorExporter] fix nullables in more tests (Azure#34454)

* wip

* wip

* wip

* wip

* Delete duplicate tests.yml under sdk/communication (Azure#34448)

- Fixes Azure#34446

* Adding release date (Azure#34456)

Co-authored-by: Bhargav Kansagara <[email protected]>

* Storage STG 87 (Azure#34455)

* Fixed comments by @tg-msft on APIView (Azure#34320)

* fixed comments by @tg-msft

* exportedAPIs

---------

Co-authored-by: Nivedit Jain <[email protected]>

* [digitaltwins] Add support for CP API Version 2023-01-31 (Azure#34437)

* Add support for stable API version 2023-01-31

* Add tests and recordings

* Revert decision to do a major version bump

* Add ACS Rooms Code Owners (Azure#34435)

Co-authored-by: Minnie Liu <[email protected]>

* Bumped default SAS version (Azure#34484)

* Feature/callautomation/callinvite (Azure#34337)

* add customContext to AddParticipant in ACS CallAutomation (Azure#33786)

* add customContext to AddParticipant in ACS CallAutomation

* revert: change on autorest.md to point to local file

* rerun autorest

* fix uri bug

* add Call Invite class (Azure#33929)

* fixing build with autorest

* fixing build by removing sip headers for now

* api file update

* make repeatabilityHeaders internal and generated automatically (Azure#33965)

* make repeatabilityHeaders internal and generated automatically

* remove repeatability in README

* fix tests

* Create call improvements (Azure#33932)

* add Call Invite class

* integrate call invite to create call

* fix tests

* add Call Invite class (Azure#33929)

* fixing build with autorest

* fixing build by removing sip headers for now

* api file update

* integrate call invite to create call

* fix tests

* remove validation related unit tests

* fix tests

* integrate call invite to create call

* fix tests

* remove validation related unit tests

* fix tests

* remove comment

* integrate call invite to create call

* fix tests

* remove validation related unit tests

* fix tests

* fix tests

* remove validation related unit tests

* fix tests

* remove comment

* resolve conflit

* fix merge conflicts

* make repeatabilityHeaders internal and generated automatically (Azure#33965)

* make repeatabilityHeaders internal and generated automatically

* remove repeatability in README

* fix tests

* integrate call invite to create call

* update auto gen

---------

Co-authored-by: Min Woo Lee 🧊 <[email protected]>
Co-authored-by: Yingying Wu <[email protected]>

* use call invite in redirect and fix tests (Azure#34037)

* use call invite in transfer (Azure#34083)

* use call invite in transfer

* adding unit tests for simple methods

* Remove call source for create call request (Azure#34039)

* add Call Invite class

* integrate call invite to create call

* fix tests

* integrate call invite to create call

* fix tests

* remove validation related unit tests

* fix tests

* integrate call invite to create call

* fix tests

* remove validation related unit tests

* fix tests

* remove comment

* integrate call invite to create call

* fix tests

* remove validation related unit tests

* fix tests

* integrate call invite to create call

* fix tests

* remove validation related unit tests

* fix tests

* remove comment

* resolve conflit

* fix merge conflicts

* integrate call invite to create call

* fix tests

* remove validation related unit tests

* integrate call invite to create call

* remove comment

* fix merge conflicts

* update swagger endpoint

* generate code from swagger

* Merge branch 'richardcho/create-call' of https://github.com/richardcho-msft/azure-sdk-for-net into richardcho/create-call

* fix linter

* update autogen'

* fix auto gen

* update autogen

* merge conflict

* remove duplicate code

* use call invite in transfer (Azure#34083)

* use call invite in transfer

* adding unit tests for simple methods

* integrate call invite to create call

* fix tests

* integrate call invite to create call

* remove comment

* fix merge conflicts

* update swagger endpoint

* generate code from swagger

* Merge branch 'richardcho/create-call' of https://github.com/richardcho-msft/azure-sdk-for-net into richardcho/create-call

* fix linter

* update autogen'

* fix auto gen

* update autogen

* update swagger

* Revert "update swagger"

This reverts commit ac523d7.

* update swagger ref

* fix build

* remove call source

---------

Co-authored-by: Yingying Wu <[email protected]>

* Update AddParticipant & RemoveParticipant (Azure#34155)

* update add participant logic

* generate code based on new swagger

* remove obsolete fils

* add CallInvite options

* fix build

* add custom context

* generate latest code

* update remove participant

* fix tests

* fix tests

* fix tests

* update api

* fix failed test

* use sipheaders and voipheaders for transfer (Azure#34190)

* update based on latest swagger (Azure#34197)

* update based on latest swagger

* api changes

* fix transfer logic (Azure#34263)

* fix uri (Azure#34267)

* Address CreateCall bugs (Azure#34273)

* fix transfer logic

* fix createCall issues

* updates (Azure#34281)

* add customContext to AddParticipant in ACS CallAutomation (Azure#33786)

* add customContext to AddParticipant in ACS CallAutomation

* revert: change on autorest.md to point to local file

* rerun autorest

* fix uri bug

* add Call Invite class (Azure#33929)

* fixing build with autorest

* fixing build by removing sip headers for now

* api file update

* make repeatabilityHeaders internal and generated automatically (Azure#33965)

* make repeatabilityHeaders internal and generated automatically

* remove repeatability in README

* fix tests

* Create call improvements (Azure#33932)

* add Call Invite class

* integrate call invite to create call

* fix tests

* add Call Invite class (Azure#33929)

* fixing build with autorest

* fixing build by removing sip headers for now

* api file update

* integrate call invite to create call

* fix tests

* remove validation related unit tests

* fix tests

* integrate call invite to create call

* fix tests

* remove validation related unit tests

* fix tests

* remove comment

* integrate call invite to create call

* fix tests

* remove validation related unit tests

* fix tests

* fix tests

* remove validation related unit tests

* fix tests

* remove comment

* resolve conflit

* fix merge conflicts

* make repeatabilityHeaders internal and generated automatically (Azure#33965)

* make repeatabilityHeaders internal and generated automatically

* remove repeatability in README

* fix tests

* integrate call invite to create call

* update auto gen

---------

Co-authored-by: Min Woo Lee 🧊 <[email protected]>
Co-authored-by: Yingying Wu <[email protected]>

* use call invite in redirect and fix tests (Azure#34037)

* use call invite in transfer (Azure#34083)

* use call invite in transfer

* adding unit tests for simple methods

* Remove call source for create call request (Azure#34039)

* add Call Invite class

* integrate call invite to create call

* fix tests

* integrate call invite to create call

* fix tests

* remove validation related unit tests

* fix tests

* integrate call invite to create call

* fix tests

* remove validation related unit tests

* fix tests

* remove comment

* integrate call invite to create call

* fix tests

* remove validation related unit tests

* fix tests

* integrate call invite to create call

* fix tests

* remove validation related unit tests

* fix tests

* remove comment

* resolve conflit

* fix merge conflicts

* integrate call invite to create call

* fix tests

* remove validation related unit tests

* integrate call invite to create call

* remove comment

* fix merge conflicts

* update swagger endpoint

* generate code from swagger

* Merge branch 'richardcho/create-call' of https://github.com/richardcho-msft/azure-sdk-for-net into richardcho/create-call

* fix linter

* update autogen'

* fix auto gen

* update autogen

* merge conflict

* remove duplicate code

* use call invite in transfer (Azure#34083)

* use call invite in transfer

* adding unit tests for simple methods

* integrate call invite to create call

* fix tests

* integrate call invite to create call

* remove comment

* fix merge conflicts

* update swagger endpoint

* generate code from swagger

* Merge branch 'richardcho/create-call' of https://github.com/richardcho-msft/azure-sdk-for-net into richardcho/create-call

* fix linter

* update autogen'

* fix auto gen

* update autogen

* update swagger

* Revert "update swagger"

This reverts commit ac523d7.

* update swagger ref

* fix build

* remove call source

---------

Co-authored-by: Yingying Wu <[email protected]>

* Update AddParticipant & RemoveParticipant (Azure#34155)

* update add participant logic

* generate code based on new swagger

* remove obsolete fils

* add CallInvite options

* fix build

* add custom context

* generate latest code

* update remove participant

* fix tests

* fix tests

* fix tests

* update api

* fix failed test

* use sipheaders and voipheaders for transfer (Azure#34190)

* update based on latest swagger (Azure#34197)

* update based on latest swagger

* api changes

* fix transfer logic (Azure#34263)

* fix uri (Azure#34267)

* Address CreateCall bugs (Azure#34273)

* fix transfer logic

* fix createCall issues

* updates (Azure#34281)

* update call invite constructor (Azure#34334)

* update callInvite constructor

* create customcontext for callInvite by default

* James/update call invite (Azure#34341)

* modify customContextInternal Constructor

* generate code

* fix unit test

* fix codecheck

* Fixing automated tests (Azure#34348)

Co-authored-by: Min Woo Lee 🧊 <[email protected]>

---------

Co-authored-by: huachuandeng <[email protected]>
Co-authored-by: Min Woo Lee 🧊 <[email protected]>
Co-authored-by: Yingying Wu <[email protected]>
Co-authored-by: minwoolee-msft <[email protected]>

* bump api-version

* Refactor statsbeat (Azure#34443)

* refactor statsbeat

* clean up

* fix statsbeat issue

* disable

* refactor transmitter

* rename

* resolve PR comments

* rmv using

* missed update

* Update sdk/monitor/Azure.Monitor.OpenTelemetry.Exporter/src/Internals/Statsbeat/Statsbeat.cs

Co-authored-by: Timothy Mothra <[email protected]>

---------

Co-authored-by: Timothy Mothra <[email protected]>

* Increment package version after release of Azure.Identity (Azure#34444)

* Fix typo "identifer" -> "identifier" (Azure#34498)

* Fix typo "identifer" -> "identifier"

* [Messaging Extensions] Release Prep (Feb 2023) (Azure#34477)

* [Messaging Extensions] Release Prep (Feb 2023)

The purpose of these changes is to prepare the Event Hubs and Service Bus
extensions packages for release.

* Removing project dependency temporarily

* Update sdk/eventhub/Microsoft.Azure.WebJobs.Extensions.EventHubs/CHANGELOG.md

Co-authored-by: Christopher Scott <[email protected]>

---------

Co-authored-by: Christopher Scott <[email protected]>

* Increment version for eventhub releases (Azure#34503)

Increment package version after release of Microsoft.Azure.WebJobs.Extensions.EventHubs

* Increment version for servicebus releases (Azure#34502)

Increment package version after release of Microsoft.Azure.WebJobs.Extensions.ServiceBus

* [Service Bus Extension] Restore project reference (Azure#34504)

The focus of these changes is to restore the project reference and the
in-flight work to support the isolated hosting model.

* [Text Analytics] Rename WellKnownFhirVersion enum to FhirVersion (Azure#34491)

* Azure OpenAI: fix streaming completions deserialization (Azure#34486)

* Azure OpenAI: fix streaming completions deserialization

* Refresh release date/changelog for retry after yesterday's pipeline infra issues

* Sync eng/common directory with azure-sdk-tools for PR 5431 Azure#2501

Co-authored-by: Konrad Jamrozik <[email protected]>

* [AzureMonitorExporter] update demo project (Azure#34514)

* update demo project

* cleanup csproj

* update readme

* [Text Analytics] Disable checks that fail due to service issues (Azure#34521)

* [AzureMonitorOpenTelemetryDistro] AddAzureMonitorOpenTelemetry extension methods and AzureMonitorOpenTelemetryOptions (Azure#34198)

* Distro Public API

* PR feedback

* Update public API

* 4 Public APIs

* Update sdk/monitor/Azure.Monitor.OpenTelemetry/tests/Examples.AspNetCore/Examples.AspNetCore.csproj

* Fix build error for demo project.

* Fix error in sample

* Remove 461 packages

* 4 APIs in samples.

* Remove public api with parameters.

* PR feedback

* Update API

* Apply connectionstring from AzureMonitorOpenTelemetryOptions to AzureMonitorExporterOptions.

---------

Co-authored-by: Timothy Mothra <[email protected]>

* Sync eng/common directory with azure-sdk-tools for PR 5562 (Azure#34522)

* Add todos to update packages to pick up the newest CODEOWNERS interpreter

* update

---------

Co-authored-by: Konrad Jamrozik <[email protected]>

* [WebPubSub] upgrade to LTS net6.0 and GA (Azure#34461)

# Contributing to the Azure SDK

Please see our [CONTRIBUTING.md](https://github.com/Azure/azure-sdk-for-net/blob/main/CONTRIBUTING.md) if you are not familiar with contributing to this repository or have questions.

For specific information about pull request etiquette and best practices, see [this section](https://github.com/Azure/azure-sdk-for-net/blob/main/CONTRIBUTING.md#pull-request-etiquette-and-best-practices).

* Update AutoRest C# version to 3.0.0-beta.20230222.4 (Azure#34495)

Co-authored-by: archerzz <[email protected]>

* Update AutoRest C# version to 3.0.0-beta.20230222.4 (Azure#34465)

* Update AutoRest C# version to 3.0.0-beta.20230223.4 (Azure#34524)

Co-authored-by: Mingzhe Huang <[email protected]>

* Update AutoRest C# version to 3.0.0-beta.20230224.1 (Azure#34530)

* Successfully built using package 2023-04

---------

Co-authored-by: Jingshu923 <[email protected]>
Co-authored-by: Azure SDK Bot <[email protected]>
Co-authored-by: Sean McCullough <[email protected]>
Co-authored-by: Timothy Mothra <[email protected]>
Co-authored-by: Alexander Sher <[email protected]>
Co-authored-by: JoshLove-msft <[email protected]>
Co-authored-by: Mike Harder <[email protected]>
Co-authored-by: Bhargav Kansagara <[email protected]>
Co-authored-by: Bhargav Kansagara <[email protected]>
Co-authored-by: Nivedit Jain <[email protected]>
Co-authored-by: Nivedit Jain <[email protected]>
Co-authored-by: Sebastian Herzig-Patel <[email protected]>
Co-authored-by: minnieliu <[email protected]>
Co-authored-by: Minnie Liu <[email protected]>
Co-authored-by: richardcho-msft <[email protected]>
Co-authored-by: huachuandeng <[email protected]>
Co-authored-by: Min Woo Lee 🧊 <[email protected]>
Co-authored-by: Yingying Wu <[email protected]>
Co-authored-by: minwoolee-msft <[email protected]>
Co-authored-by: Feng Zhou <[email protected]>
Co-authored-by: Vishwesh Bankwar <[email protected]>
Co-authored-by: Petr Švihlík <[email protected]>
Co-authored-by: Jesse Squire <[email protected]>
Co-authored-by: Christopher Scott <[email protected]>
Co-authored-by: Jose Arriaga Maldonado <[email protected]>
Co-authored-by: Travis Wilson <[email protected]>
Co-authored-by: Konrad Jamrozik <[email protected]>
Co-authored-by: Rajkumar Rangaraj <[email protected]>
Co-authored-by: JialinXin <[email protected]>
Co-authored-by: archerzz <[email protected]>
Co-authored-by: Mingzhe Huang <[email protected]>
@alexdresko
Copy link

Since this is merged, does the nuget package get updated automatically? If not, when will this be in the nuget package?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Monitor - Distro Monitor OpenTelemetry Distro
Projects
None yet
Development

Successfully merging this pull request may close these issues.

10 participants