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

Move metric No-Op to metric/noop #3893

Merged
merged 10 commits into from
Mar 21, 2023
3 changes: 3 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,9 @@ This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.htm
- Both the `Histogram` and `HistogramDataPoint` are redefined with a generic argument of `[N int64 | float64]` in `go.opentelemetry.io/otel/sdk/metric/metricdata`. (#3849)
- The metric `Export` interface from `go.opentelemetry.io/otel/sdk/metric` accepts a `*ResourceMetrics` instead of `ResourceMetrics`. (#3853)
- Rename `Asynchronous` to `Observable` in `go.opentelemetry.io/otel/metric/instrument`. (#3892)
- Move No-Op implementation from `go.opentelemetry.io/otel/metric` into its own package `go.opentelemetry.io/otel/metric`. (#3893)
- `NewNoopMeterProvider` is replaced with `noop.NewMeterProvider`
- `NewNoopMeter` is replaced with `noop.NewMeterProvider().Meter("")`

### Removed

Expand Down
5 changes: 3 additions & 2 deletions internal/global/instruments_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ import (
"go.opentelemetry.io/otel/attribute"
"go.opentelemetry.io/otel/metric"
"go.opentelemetry.io/otel/metric/instrument"
"go.opentelemetry.io/otel/metric/noop"
)

func testFloat64Race(interact func(context.Context, float64, ...attribute.KeyValue), setDelegate func(metric.Meter)) {
Expand All @@ -36,7 +37,7 @@ func testFloat64Race(interact func(context.Context, float64, ...attribute.KeyVal
}
}()

setDelegate(metric.NewNoopMeter())
setDelegate(noop.NewMeterProvider().Meter(""))
close(finish)
}

Expand All @@ -53,7 +54,7 @@ func testInt64Race(interact func(context.Context, int64, ...attribute.KeyValue),
}
}()

setDelegate(metric.NewNoopMeter())
setDelegate(noop.NewMeterProvider().Meter(""))
close(finish)
}

Expand Down
7 changes: 4 additions & 3 deletions internal/global/meter_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ import (

"go.opentelemetry.io/otel/metric"
"go.opentelemetry.io/otel/metric/instrument"
"go.opentelemetry.io/otel/metric/noop"
)

func TestMeterProviderRace(t *testing.T) {
Expand All @@ -41,7 +42,7 @@ func TestMeterProviderRace(t *testing.T) {
}
}()

mp.setDelegate(metric.NewNoopMeterProvider())
mp.setDelegate(noop.NewMeterProvider())
close(finish)
}

Expand Down Expand Up @@ -84,7 +85,7 @@ func TestMeterRace(t *testing.T) {
}()

wg.Wait()
mtr.setDelegate(metric.NewNoopMeterProvider())
mtr.setDelegate(noop.NewMeterProvider())
close(finish)
}

Expand Down Expand Up @@ -113,7 +114,7 @@ func TestUnregisterRace(t *testing.T) {
_ = reg.Unregister()

wg.Wait()
mtr.setDelegate(metric.NewNoopMeterProvider())
mtr.setDelegate(noop.NewMeterProvider())
close(finish)
}

Expand Down
5 changes: 3 additions & 2 deletions internal/global/state_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@ import (
"github.com/stretchr/testify/assert"

"go.opentelemetry.io/otel/metric"
"go.opentelemetry.io/otel/metric/noop"
"go.opentelemetry.io/otel/propagation"
"go.opentelemetry.io/otel/trace"
)
Expand Down Expand Up @@ -152,7 +153,7 @@ func TestSetMeterProvider(t *testing.T) {
t.Run("First Set() should replace the delegate", func(t *testing.T) {
ResetForTest(t)

SetMeterProvider(metric.NewNoopMeterProvider())
SetMeterProvider(noop.NewMeterProvider())

_, ok := MeterProvider().(*meterProvider)
if ok {
Expand All @@ -165,7 +166,7 @@ func TestSetMeterProvider(t *testing.T) {

mp := MeterProvider()

SetMeterProvider(metric.NewNoopMeterProvider())
SetMeterProvider(noop.NewMeterProvider())

dmp := mp.(*meterProvider)

Expand Down
139 changes: 0 additions & 139 deletions metric/noop.go

This file was deleted.

9 changes: 5 additions & 4 deletions metric/example_test.go → metric/noop/example_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
// See the License for the specific language governing permissions and
// limitations under the License.

package metric_test
package noop_test

import (
"context"
Expand All @@ -23,12 +23,13 @@ import (
"go.opentelemetry.io/otel/attribute"
"go.opentelemetry.io/otel/metric"
"go.opentelemetry.io/otel/metric/instrument"
"go.opentelemetry.io/otel/metric/noop"
)

//nolint:govet // Meter doesn't register for go vet
func ExampleMeter_synchronous() {
// In a library or program this would be provided by otel.GetMeterProvider().
meterProvider := metric.NewNoopMeterProvider()
meterProvider := noop.NewMeterProvider()

workDuration, err := meterProvider.Meter("go.opentelemetry.io/otel/metric#SyncExample").Int64Histogram(
"workDuration",
Expand All @@ -48,7 +49,7 @@ func ExampleMeter_synchronous() {
//nolint:govet // Meter doesn't register for go vet
func ExampleMeter_asynchronous_single() {
// In a library or program this would be provided by otel.GetMeterProvider().
meterProvider := metric.NewNoopMeterProvider()
meterProvider := noop.NewMeterProvider()
meter := meterProvider.Meter("go.opentelemetry.io/otel/metric#AsyncExample")

_, err := meter.Int64ObservableGauge(
Expand Down Expand Up @@ -80,7 +81,7 @@ func ExampleMeter_asynchronous_single() {

//nolint:govet // Meter doesn't register for go vet
func ExampleMeter_asynchronous_multiple() {
meterProvider := metric.NewNoopMeterProvider()
meterProvider := noop.NewMeterProvider()
meter := meterProvider.Meter("go.opentelemetry.io/otel/metric#MultiAsyncExample")

// This is just a sample of memory stats to record from the Memstats
Expand Down
Loading