Azure-sdk-for-net: Azure Monitor Exporter: Discuss package name change

Created on 14 Oct 2020  路  12Comments  路  Source: Azure/azure-sdk-for-net

Question

We need to rename our package.
What is the appropriate name for packages published from this repo?

Details

We're ready to release the first beta of the OpenTelemetry Exporter for Azure Monitor.
We're currently blocked on the name of the package.

Currently:

The current name is "OpenTelemetry.Exporter.AzureMonitor".
When trying to publish we get the following error:

[error]The nuget command failed with exit code(1) and error(Response status code does not indicate success: 409 (This package ID has been reserved. Please request access to upload to this reserved namespace from the owner of the reserved prefix, or re-upload the package with a different ID.).

See also: https://github.com/open-telemetry/opentelemetry-dotnet/issues/1336

Next Steps

I attended the OpenTelemetry Community meeting today.
Their recommendation is for 3rd parties to publish as: "< VendorName >.OpenTelemetry.Exporter".

Example:

  • Azure.Monitor.OpenTelemetry.Exporter
  • Microsoft.Azure.OpenTelemetry.Exporter

I can make this change, I just need to know what name to use :)

Client Monitor - Exporter

Most helpful comment

Can you please start an email thread and include @KrzysztofCwalina. He would be the ultimate authority here.

All 12 comments

@TimothyMothra would you involve our PMs and also other language exporter owners? We can give folks two days to put options/opinions and then go with the most preferred one.

Personally I would prefer Microsoft.Azure.OpenTelemetry.Exporter but I'd like to avoid us making decision based on my personal preference.

My personal choice: AzureMonitor.OpenTelemetry.Exporter to make it obvious that it Exports to AzureMonitor. (and not to AzureBlob/Table/AzureSQL etc)

My personal choice: AzureMonitor.OpenTelemetry.Exporter to make it obvious that it Exports to AzureMonitor. (and not to AzureBlob/Table/AzureSQL etc)

Probably Microsoft.Azure.OpenTelemetry.Exporter.AzureMonitor? 馃槀

My main consideration is that most of the V2 (or track2, whatever it is called) Azure SDKs seem to follow the Microsoft.Azure.* pattern:

image

My main consideration is that most of the V2 (or track2, whatever it is called) Azure SDKs seem to follow the Microsoft.Azure.* pattern:

The general pattern for track two naming is:

Azure.[[ AREA ]].[[ SERVICE ]] for the data plane and Azure.ResourceManager.[[ SERVICE ]] for the management plane. Things that you're seeing with Microsoft.Azure.[[ SERVICE ]] are the legacy libraries, with some special case exceptions involving third party dependencies.

More context can be found in the .NET Guidelines

//cc: @KrzysztofCwalina

Thanks for sharing the guidance.
Our team is coalescing around Azure.Monitor.OpenTelemetry.Exporter

We would have to sync with @KrzysztofCwalina, there are strong opinions around about having packages with third-party dependencies with Azure.* names.

@pakrym : Since the package is owned by us and the idea is to make sure we contribute to the open source contributions; I'm assuming this has been done before. Would love to know how other 'Azure.otherthirdpartynames' are handled.

No Azure.* currently has any 3-rd party dependencies outside of .Net/Azure owned libraries. See https://azure.github.io/azure-sdk/dotnet_introduction.html#dotnet-dependencies

@pakrym @jsquire Who has the authority to make a discussion here?
Would it be appropriate to rename it as Azure.Monitor.OpenTelemetry.Exporter so we can unblock this Beta release?

I think we can leave this issue open and continue to discuss. I don't want the naming to be a blocking issue, and I think it's safe to rename up until we GA.

Can you please start an email thread and include @KrzysztofCwalina. He would be the ultimate authority here.

I discussed this with @KrzysztofCwalina offline.
Recommendation is to use the name Microsoft.Azure.Monitor.OpenTelemetry.Exporter

image

Was this page helpful?
0 / 5 - 0 ratings