mirror of
https://github.com/hanzoai/telemetry.git
synced 2026-10-30 20:01:49 +00:00
#### Description API change in extensionmiddleware, an unstable package to allow middleware access to the start context. HTTP only. gRPC is treated in #14536. This is technically a breaking change in configmiddleware and for all implementations of this extension. We believe no one is using this feature outside of this repository, see memorylimiter is fixed here. #### Link to tracking issue Part of https://github.com/open-telemetry/opentelemetry-collector/issues/14523 #### Documentation N/A
51 lines
1.6 KiB
Go
51 lines
1.6 KiB
Go
// Copyright The OpenTelemetry Authors
|
|
// SPDX-License-Identifier: Apache-2.0
|
|
|
|
package extensionmiddlewaretest // import "go.opentelemetry.io/collector/extension/extensionmiddleware/extensionmiddlewaretest"
|
|
|
|
import (
|
|
"context"
|
|
|
|
"google.golang.org/grpc"
|
|
|
|
"go.opentelemetry.io/collector/component"
|
|
"go.opentelemetry.io/collector/extension"
|
|
"go.opentelemetry.io/collector/extension/extensionmiddleware"
|
|
)
|
|
|
|
var (
|
|
_ extension.Extension = (*baseExtension)(nil)
|
|
_ extensionmiddleware.HTTPClient = (*baseExtension)(nil)
|
|
_ extensionmiddleware.GRPCClient = (*baseExtension)(nil)
|
|
_ extensionmiddleware.HTTPServer = (*baseExtension)(nil)
|
|
_ extensionmiddleware.GRPCServer = (*baseExtension)(nil)
|
|
)
|
|
|
|
type baseExtension struct {
|
|
component.StartFunc
|
|
component.ShutdownFunc
|
|
extensionmiddleware.GetHTTPHandlerFunc
|
|
extensionmiddleware.GetGRPCServerOptionsFunc
|
|
extensionmiddleware.GetHTTPRoundTripperFunc
|
|
extensionmiddleware.GetGRPCClientOptionsFunc
|
|
}
|
|
|
|
// NewErr returns a new [extension.Extension] that implements all
|
|
// extensionmiddleware interface and always returns an error.
|
|
func NewErr(err error) extension.Extension {
|
|
return &baseExtension{
|
|
GetHTTPRoundTripperFunc: func(context.Context) (extensionmiddleware.WrapHTTPRoundTripperFunc, error) {
|
|
return nil, err
|
|
},
|
|
GetGRPCClientOptionsFunc: func(context.Context) ([]grpc.DialOption, error) {
|
|
return nil, err
|
|
},
|
|
GetHTTPHandlerFunc: func(context.Context) (extensionmiddleware.WrapHTTPHandlerFunc, error) {
|
|
return nil, err
|
|
},
|
|
GetGRPCServerOptionsFunc: func(context.Context) ([]grpc.ServerOption, error) {
|
|
return nil, err
|
|
},
|
|
}
|
|
}
|