1
0
mirror of https://github.com/open-telemetry/opentelemetry-go.git synced 2025-11-23 22:34:47 +02:00
Commit Graph

22 Commits

Author SHA1 Message Date
Sebastien Dionne
1935e6012b Fix typos and linguistic errors in documentation / hacktoberfest (#7494)
Fix typos and linguistic errors in documentation. It's not much, but I'm
happy to help

---------

Signed-off-by: Sebastien Dionne <survivant00@gmail.com>
Co-authored-by: Tyler Yahn <MrAlias@users.noreply.github.com>
2025-10-13 15:57:14 -07:00
Tyler Yahn
7512a2be2e Add the golines golangci-lint formatter (#6513)
Ensure consistent line wrapping (<= 120 characters) within the project.
2025-03-30 03:46:44 -07:00
Robert Pająk
ee56fb97e0 Make scope attributes as identifying for Meter (#5926)
Towards https://github.com/open-telemetry/opentelemetry-go/issues/3368
2024-10-30 06:29:32 +01:00
Joshua MacDonald
2578accaa8 otel: conceal unwrapping for global async instrument registration (#5881)
~Two defects are fixed here. However, note that async instrument
delegation appears to have been broken a long time.~

Internalizes and tests the behavior of the Global MeterProvider. This
moves the call to `Unwrap()` out of the SDK, fully concealing it within
the internal/global package (using an un-exported method).

This adds a test for the new functionality. While this test is not
comprehensive, because it doesn't test every instrument variation, it
explicitly tests that both the NewCallback function and the Observe
functions receive objects constructed by the alternate SDK.

Fixes #5827

---------

Co-authored-by: David Ashpole <dashpole@google.com>
Co-authored-by: Robert Pająk <pellared@hotmail.com>
2024-10-18 10:36:05 -07:00
Jesse Bank
1333b2f73a Fix delegation for global MeterProviders (#5828)
Fixes #5827
Fixes #5852

---------

Co-authored-by: Robert Pająk <pellared@hotmail.com>
Co-authored-by: David Ashpole <dashpole@google.com>
Co-authored-by: Damien Mathieu <42@dmathieu.com>
2024-10-04 10:19:41 +02:00
Sam Xie
b37e8a9860 SetMeterProvider might miss the delegation for instruments and registries (#5780)
Closes #5757

This PR fixes an issue where `SetMeterProvider` might miss the
delegation for instruments and registries. This bug brings a concurrent
issue that could possibly make instruments and registries unable to
operate correctly, such as recording, after using the `SetMeterProvider`
method. The data put on these instruments and registries might be lost.
2024-09-06 16:42:55 -07:00
Sam Xie
932a4d8a5f Fix panic instruments creation when setting meter provider (#5758)
Related #5757. This is a quick fix.
2024-09-01 11:02:31 -07:00
David Ashpole
e47618fc36 Fix duplicate instrumentation memory leak (#5754)
Fixes https://github.com/open-telemetry/opentelemetry-go/issues/5753

The added test fails on main, but passes after the fix.

---------

Co-authored-by: Sam Xie <sam@samxie.me>
2024-08-29 10:30:20 -07:00
Tyler Yahn
525fedbb26 Identify global Tracers and Meters with their schema URLs (#5426)
Fix #5403
2024-05-30 07:20:05 -07:00
Tyler Yahn
dafe137bbe Add the synchronous gauge to the metric API and SDK (#5304)
Resolve #5225 

The specification has [added a synchronous gauge
instrument](https://github.com/open-telemetry/opentelemetry-specification/pull/3540).
That instrument has now been
[stabilized](https://github.com/open-telemetry/opentelemetry-specification/pull/4019),
and that stabilization is included in the [next
release](https://github.com/open-telemetry/opentelemetry-specification/pull/4034).

This adds the new synchronous gauge instrument to the metric API and all
implementation we publish.

This change will be a breaking change for any SDK developer. The
`embedded` package is updated to ensure our compatibility guarantees are
meet.

---------

Co-authored-by: David Ashpole <dashpole@google.com>
2024-05-16 09:56:40 -07:00
Robert Pająk
7dea232a46 [chore] Simplify the license header (#4987) 2024-02-29 07:05:28 +01:00
ntriamme
f793a0575d Fix registration of multiple callbacks when using the global meter provider (#4945) 2024-02-21 08:36:33 +01:00
Tyler Yahn
17903bcdb6 Revert "Move global metric back to otel/metric/global for minor release (#3986)" (#4039)
* Revert "Move global metric back to `otel/metric/global` for minor release (#3986)"

This reverts commit 8dba38e02f.

* Add changes to changelog

* Fix versions and go mod tidy

* Run go-mod-tidy
2023-05-02 11:15:39 -07:00
Tyler Yahn
8dba38e02f Move global metric back to otel/metric/global for minor release (#3986)
* Revert "Remove the deprecated `otel/metric/global` pkg (#3829)"

This reverts commit 60f7d42d1e.

* Revert "Support a global MeterProvider in `go.opentelemetry.io/otel` (#3818)"

This reverts commit 813936187e.

* Remove top level metric global

* Add change to changelog
2023-04-13 07:39:39 -07:00
Tyler Yahn
65ebe5e50f Add embedded private method interfaces in metric API (#3916)
* PoC of embedded private method ifaces

* Rename embed to embedded

* Add an embedded iface for all instruments

* Fix metric/instrument tests

* Fix global and otel

* Fix SDK

* Comment the embedded pkg types

* Update the embedded pkg docs

* Update otel/metric docs about impls

* Update otel/metric type docs on impl

* Update docs in otel/metric/instrument on default

* Add changes to changelog

* Apply suggestions from code review

Co-authored-by: Robert Pająk <pellared@hotmail.com>

* Apply feedback on URLs

* Reword based on feedback

* Make it clear we only recommended embedding noop

* Ignore links with godot linter

---------

Co-authored-by: Robert Pająk <pellared@hotmail.com>
2023-04-03 07:33:19 -07:00
Tyler Yahn
90df52586b Split metric configuration down to instrument (#3895)
* Split metric configuration down to instrument

* Rename *ObserverOptions to *ObservableOption

* Update option docs with links
2023-03-21 08:16:57 -05:00
Tyler Yahn
b7b53bba40 Remove Synchronous and rename Asynchronous (#3892)
* Remove the Synchronous interface

* Rename Asynchronous to Observable

* Update PR number
2023-03-20 13:26:17 -07:00
Tyler Yahn
60f7d42d1e Remove the deprecated otel/metric/global pkg (#3829)
* Remove the deprecated `otel/metric/global` pkg

* Add changelog entry

* Update PR number in changelog

* Fix lint

---------

Co-authored-by: Chester Cheung <cheung.zhy.csu@gmail.com>
2023-03-07 08:36:19 -08:00
Anthony Mirabella
7728a52135 Remove dependency on metrics packages (#1988)
* Declare internal/metric module to version it separately

Signed-off-by: Anthony J Mirabella <a9@aneurysm9.com>

* Remove dependency on metrics module from soon-to-be-stable modules

Signed-off-by: Anthony J Mirabella <a9@aneurysm9.com>

* Add PR ID to CHANGELOG

Signed-off-by: Anthony J Mirabella <a9@aneurysm9.com>

* rename metric/oteltest to metric/metrictest

Signed-off-by: Anthony J Mirabella <a9@aneurysm9.com>

* Fix metrictest package name in CHANGELOG

Signed-off-by: Anthony J Mirabella <a9@aneurysm9.com>
2021-06-10 15:05:25 -04:00
Aaron Clawson
c1f460e097 Update API configs. (#1921)
* Added Reason to Contributing and Updated TracerConfig

* PR comment fixup

* Changed how span Options work.

* Fix Markdown linting

* Added meter configs.

* Fixes from PR comments

* fix for missing instrument

Co-authored-by: Tyler Yahn <MrAlias@users.noreply.github.com>
2021-05-27 07:53:56 -07:00
Punya Biswal
ecf65d7968 Rename otel/label -> otel/attribute (#1541)
* Rename otel/label -> otel/attr

Leave the imported name alone, to avoid a large diff and conflicts

* Better import comment

* Update CHANGELOG.md

Co-authored-by: Tyler Yahn <MrAlias@users.noreply.github.com>

* otel/attr -> otel/attribute

* Missed the changelog entry

* Get rid of import renaming

* Merge remaining conflicts

Co-authored-by: Tyler Yahn <MrAlias@users.noreply.github.com>
Co-authored-by: Anthony Mirabella <a9@aneurysm9.com>
2021-02-18 12:59:37 -05:00
Krzesimir Nowak
3d6e8b5078 Move Version function and code from global to toplevel (#1330)
* Move global code to toplevel package

* Move version function to toplevel package

* Update changelog

Co-authored-by: Tyler Yahn <MrAlias@users.noreply.github.com>
2020-11-16 09:30:54 -08:00