<!-- 
RSS generated by JIRA (9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66) at Thu Feb 08 08:39:41 UTC 2024

It is possible to restrict the fields that are returned in this document by specifying the 'field' parameter in your request.
For example, to request only the issue key and summary append 'field=key&field=summary' to the URL of your request.
-->
<rss version="0.92" >
<channel>
    <title>MongoDB Jira</title>
    <link>https://jira.mongodb.org</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-us</language>    <build-info>
        <version>9.7.1</version>
        <build-number>970001</build-number>
        <build-date>13-04-2023</build-date>
    </build-info>


<item>
            <title>[GODRIVER-2938] Move ownership of otelmongo</title>
                <link>https://jira.mongodb.org/browse/GODRIVER-2938</link>
                <project id="14289" key="GODRIVER">Go Driver</project>
                    <description>&lt;p&gt;Hello&#160;&#128075; I am one of &lt;a href=&quot;https://github.com/open-telemetry/opentelemetry-go&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;OpenTelemetry Go&lt;/a&gt; maintainers (&lt;a href=&quot;https://github.com/pellared&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/pellared&lt;/a&gt;).&lt;/p&gt;

&lt;p&gt;I started working on &lt;a href=&quot;https://github.com/open-telemetry/opentelemetry-go-contrib/issues/4163&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/open-telemetry/opentelemetry-go-contrib/issues/4163&lt;/a&gt;&#160;and I think that it may be more beneficial for the community if the ownership of OpenTelemetry instrumentation would be moved under MongoDB. &lt;/p&gt;

&lt;p&gt;The reasons are the following:&lt;/p&gt;
&lt;ol&gt;
	&lt;li&gt;This is currently a more preferred way according to our&#160;&lt;a href=&quot;https://github.com/open-telemetry/opentelemetry-go-contrib/blob/main/instrumentation/README.md#new-instrumentation&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;recommendation&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;OTel maintainers and approvers have no capacity on maintaining &lt;a href=&quot;https://pkg.go.dev/go.opentelemetry.io/contrib/instrumentation/go.mongodb.org/mongo-driver/mongo/otelmongo&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;&lt;tt&gt;otelmongo&lt;/tt&gt;&#160;instrumentation library&lt;/a&gt; which seems to be quite popular. More: &lt;a href=&quot;https://github.com/open-telemetry/opentelemetry-go-contrib/issues/2834&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/open-telemetry/opentelemetry-go-contrib/issues/2834&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;


&lt;p&gt;Therefore, I am asking you could consider doing e.g. one of the following:&lt;/p&gt;
&lt;ol&gt;
	&lt;li&gt;Instrumenting with OpenTelemetry &quot;natively&quot; (without requiring the users to use an instrumentation library)&lt;/li&gt;
	&lt;li&gt;Simply moving the&#160;&lt;a href=&quot;https://pkg.go.dev/go.opentelemetry.io/contrib/instrumentation/go.mongodb.org/mongo-driver/mongo/otelmongo&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;&lt;tt&gt;otelmongo&lt;/tt&gt;&#160;instrumentation library&lt;/a&gt;&#160;to &lt;a href=&quot;https://github.com/mongodb/mongo-go-driver&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/mongo-go-driver&lt;/a&gt; repository or to a new repository in &lt;a href=&quot;https://github.com/mongodb&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb&lt;/a&gt; organization.&lt;/li&gt;
&lt;/ol&gt;


&lt;p&gt;You can look at following resources for further insight:&lt;/p&gt;
&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
	&lt;li&gt;&lt;a href=&quot;https://github.com/open-telemetry/opentelemetry-go-contrib/blob/main/instrumentation/README.md#new-instrumentation&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/open-telemetry/opentelemetry-go-contrib/blob/main/instrumentation/README.md#new-instrumentation&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;&lt;a href=&quot;https://opentelemetry.io/docs/specs/semconv/database/database-spans/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://opentelemetry.io/docs/specs/semconv/database/database-spans/&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;&lt;a href=&quot;https://opentelemetry.io/docs/specs/semconv/database/database-metrics/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://opentelemetry.io/docs/specs/semconv/database/database-metrics/&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;&lt;a href=&quot;https://opentelemetry.io/docs/specs/semconv/database/mongodb/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://opentelemetry.io/docs/specs/semconv/database/mongodb/&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;I would like to collaborate and together come up with a plan that could be well received by the users of both &lt;a href=&quot;https://pkg.go.dev/go.mongodb.org/mongo-driver/mongo&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://pkg.go.dev/go.mongodb.org/mongo-driver/mongo&lt;/a&gt; and &lt;a href=&quot;https://pkg.go.dev/go.opentelemetry.io/contrib/instrumentation/go.mongodb.org/mongo-driver/mongo/otelmongo&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://pkg.go.dev/go.opentelemetry.io/contrib/instrumentation/go.mongodb.org/mongo-driver/mongo/otelmongo&lt;/a&gt;. &lt;/p&gt;</description>
                <environment></environment>
        <key id="2412955">GODRIVER-2938</key>
            <summary>Move ownership of otelmongo</summary>
                <type id="2" iconUrl="https://jira.mongodb.org/secure/viewavatar?size=xsmall&amp;avatarId=14711&amp;avatarType=issuetype">New Feature</type>
                                            <priority id="10300" iconUrl="https://jira.mongodb.org/images/icons/priorities/medium.svg">Unknown</priority>
                        <status id="11262" iconUrl="https://jira.mongodb.org/images/icons/statuses/generic.png" description="">Investigating</status>
                    <statusCategory id="4" key="indeterminate" colorName="inprogress"/>
                                    <resolution id="-1">Unresolved</resolution>
                                        <assignee username="ashni.mehta@mongodb.com">Ashni Mehta</assignee>
                                    <reporter username="pellared@hotmail.com">Robert Paj&#261;k</reporter>
                        <labels>
                    </labels>
                <created>Wed, 9 Aug 2023 12:54:01 +0000</created>
                <updated>Tue, 9 Jan 2024 16:45:29 +0000</updated>
                                                                                                <votes>0</votes>
                                    <watches>7</watches>
                                                                                                                <comments>
                            <comment id="5765608" author="JIRAUSER1274670" created="Mon, 9 Oct 2023 20:02:22 +0000"  >&lt;p&gt;A few remarks regarding the maintenance effort.&lt;/p&gt;

&lt;p&gt;1. Bumping dependencies (low effort, automated via dependabot)&lt;br/&gt;
2. Bumping the semantic conventions a new version of &lt;a href=&quot;https://github.com/open-telemetry/semantic-conventions&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/open-telemetry/semantic-conventions&lt;/a&gt; published and is available via &lt;a href=&quot;https://github.com/open-telemetry/opentelemetry-go&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/open-telemetry/opentelemetry-go&lt;/a&gt;. So far most of the changes were almost effortless (just bumping the semconv version, sometimes some attributes are renamed or added. It is usually low effort (a few hours of work). However this may change thanks to newly established &quot;database semantic conventions working group&quot;. It may occur that they may be more breaking changes in the semantic conventions. More: &lt;a href=&quot;https://github.com/open-telemetry/semantic-conventions/issues/299&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/open-telemetry/semantic-conventions/issues/299&lt;/a&gt;&lt;br/&gt;
3. So far we had almost no issues for the instrumentation library. See: &lt;a href=&quot;https://github.com/open-telemetry/opentelemetry-go-contrib/issues?q=is%3Aopen+is%3Aissue+otelmongo+label%3A%22instrumentation%3A+otelmongo%22&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/open-telemetry/opentelemetry-go-contrib/issues?q=is%3Aopen+is%3Aissue+otelmongo+label%3A%22instrumentation%3A+otelmongo%22&lt;/a&gt;. There were a few which were created in the past but most of them were closed without any code changes. See: &lt;a href=&quot;https://github.com/open-telemetry/opentelemetry-go-contrib/issues?q=is%3Aissue+otelmongo+is%3Aclosed&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/open-telemetry/opentelemetry-go-contrib/issues?q=is%3Aissue+otelmongo+is%3Aclosed&lt;/a&gt;&lt;br/&gt;
4. I think that right now the biggest missing feature is the lack of metrics instrumentation defined here: &lt;a href=&quot;https://opentelemetry.io/docs/specs/semconv/database/database-metrics/&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://opentelemetry.io/docs/specs/semconv/database/database-metrics/&lt;/a&gt;. And this is also something that probably would be guided/designed together with the Go Mongo Driver team.&lt;/p&gt;</comment>
                            <comment id="5765547" author="JIRAUSER1274670" created="Mon, 9 Oct 2023 19:47:02 +0000"  >&lt;p&gt;A few notes from my side after the meeting.&lt;/p&gt;

&lt;p&gt;I propose to also look at &lt;a href=&quot;https://github.com/IBM/sarama/issues/2510&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/IBM/sarama/issues/2510&lt;/a&gt;. It is a similar issue for another library, and it already explores some ideas around the migration.&lt;br/&gt;
We concluded that the safest and most pragmatic option would be migrate the Go module to a new repository e.g. to &lt;a href=&quot;https://github.com/mongodb/otelmongo&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/mongodb/otelmongo&lt;/a&gt; (reasoning here: &lt;a href=&quot;https://github.com/IBM/sarama/issues/2510#issuecomment-1715056491&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://github.com/IBM/sarama/issues/2510#issuecomment-1715056491&lt;/a&gt;).&lt;/p&gt;

&lt;p&gt;I offer knowledge sharing and help in maintenance (e.g. I can be a reviewer).&lt;/p&gt;

&lt;p&gt;For reference (part of knowledge sharing) here are some popular instrumentation libraries for database/sql package:&lt;/p&gt;
&lt;ul class=&quot;alternate&quot; type=&quot;square&quot;&gt;
	&lt;li&gt;&lt;a href=&quot;https://pkg.go.dev/github.com/XSAM/otelsql&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://pkg.go.dev/github.com/XSAM/otelsql&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;&lt;a href=&quot;https://pkg.go.dev/github.com/uptrace/opentelemetry-go-extra/otelsql&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://pkg.go.dev/github.com/uptrace/opentelemetry-go-extra/otelsql&lt;/a&gt;&lt;/li&gt;
	&lt;li&gt;&lt;a href=&quot;https://pkg.go.dev/github.com/signalfx/splunk-otel-go/instrumentation/database/sql/splunksql&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://pkg.go.dev/github.com/signalfx/splunk-otel-go/instrumentation/database/sql/splunksql&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;


&lt;p&gt;Unfortunately the OTel Go SIG had no consensus so far on the database/sql instrumentation design so people use these 3 libraries.&lt;/p&gt;</comment>
                            <comment id="5622955" author="dbeng-pm-bot" created="Wed, 9 Aug 2023 12:54:04 +0000"  >&lt;p&gt;Hi &lt;a href=&quot;https://jira.mongodb.org/secure/ViewProfile.jspa?name=pellared%40hotmail.com&quot; class=&quot;user-hover&quot; rel=&quot;pellared@hotmail.com&quot;&gt;pellared@hotmail.com&lt;/a&gt;, thank you for reporting this issue! The team will look into it and get back to you soon. &lt;/p&gt;</comment>
                    </comments>
                <issuelinks>
                            <issuelinktype id="10012">
                    <name>Related</name>
                                            <outwardlinks description="related to">
                                        <issuelink>
            <issuekey id="900364">DRIVERS-719</issuekey>
        </issuelink>
                            </outwardlinks>
                                                        </issuelinktype>
                    </issuelinks>
                <attachments>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_15850" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_14266" key="com.atlassian.jira.plugin.system.customfieldtypes:textarea">
                        <customfieldname>Documentation Changes Summary</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>&lt;p&gt;1.  What would you like to communicate to the user about this feature?&lt;br/&gt;
2.  Would you like the user to see examples of the syntax and/or executable code and its output?&lt;br/&gt;
3.  Which versions of the driver/connector does this apply to?&lt;/p&gt;</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    <customfield id="customfield_21553" key="com.atlassian.jira.plugin.system.customfieldtypes:labels">
                        <customfieldname>Quarter</customfieldname>
                        <customfieldvalues>
                                        <label>FY24Q4</label>
    
                        </customfieldvalues>
                    </customfield>
                                                                                            <customfield id="customfield_12550" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>2|i23lxk:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10558" key="com.pyxis.greenhopper.jira:gh-global-rank">
                        <customfieldname>Rank (Obsolete)</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>9223372036854775807</customfieldvalue>
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            </customfields>
    </item>
</channel>
</rss>