[#60] Use gRPC interceptor from observability package
All checks were successful
/ Vulncheck (pull_request) Successful in 1m25s
/ Lint (pull_request) Successful in 3m11s
/ Tests (1.19) (pull_request) Successful in 3m0s
/ Tests (1.20) (pull_request) Successful in 2m46s
/ DCO (pull_request) Successful in 1m19s
/ Builds (1.19) (pull_request) Successful in 2m48s
/ Builds (1.20) (pull_request) Successful in 4m33s
All checks were successful
/ Vulncheck (pull_request) Successful in 1m25s
/ Lint (pull_request) Successful in 3m11s
/ Tests (1.19) (pull_request) Successful in 3m0s
/ Tests (1.20) (pull_request) Successful in 2m46s
/ DCO (pull_request) Successful in 1m19s
/ Builds (1.19) (pull_request) Successful in 2m48s
/ Builds (1.20) (pull_request) Successful in 4m33s
Previous SDK implementation had implicit gRPC interceptor for tracing. Now pool constructors allow any dial options, so gateway should manually pass tracing interceptors from observability package. Signed-off-by: Alex Vanin <a.vanin@yadro.com>
This commit is contained in:
parent
2ccb43bc8c
commit
6f64557a4b
1 changed files with 14 additions and 1 deletions
15
settings.go
15
settings.go
|
@ -13,6 +13,7 @@ import (
|
|||
"time"
|
||||
|
||||
"git.frostfs.info/TrueCloudLab/frostfs-http-gw/resolver"
|
||||
grpctracing "git.frostfs.info/TrueCloudLab/frostfs-observability/tracing/grpc"
|
||||
"git.frostfs.info/TrueCloudLab/frostfs-sdk-go/pool"
|
||||
treepool "git.frostfs.info/TrueCloudLab/frostfs-sdk-go/pool/tree"
|
||||
"github.com/nspcc-dev/neo-go/pkg/crypto/keys"
|
||||
|
@ -454,6 +455,19 @@ func getPools(ctx context.Context, logger *zap.Logger, cfg *viper.Viper) (*pool.
|
|||
prm.SetLogger(logger)
|
||||
prmTree.SetLogger(logger)
|
||||
|
||||
var apiGRPCDialOpts []grpc.DialOption
|
||||
var treeGRPCDialOpts = []grpc.DialOption{grpc.WithTransportCredentials(insecure.NewCredentials())}
|
||||
if cfg.GetBool(cfgTracingEnabled) {
|
||||
interceptors := []grpc.DialOption{
|
||||
grpc.WithUnaryInterceptor(grpctracing.NewUnaryClientInteceptor()),
|
||||
grpc.WithStreamInterceptor(grpctracing.NewStreamClientInterceptor()),
|
||||
}
|
||||
treeGRPCDialOpts = append(treeGRPCDialOpts, interceptors...)
|
||||
apiGRPCDialOpts = append(apiGRPCDialOpts, interceptors...)
|
||||
}
|
||||
prm.SetGRPCDialOptions(apiGRPCDialOpts...)
|
||||
prmTree.SetGRPCDialOptions(treeGRPCDialOpts...)
|
||||
|
||||
p, err := pool.NewPool(prm)
|
||||
if err != nil {
|
||||
logger.Fatal("failed to create connection pool", zap.Error(err))
|
||||
|
@ -463,7 +477,6 @@ func getPools(ctx context.Context, logger *zap.Logger, cfg *viper.Viper) (*pool.
|
|||
logger.Fatal("failed to dial connection pool", zap.Error(err))
|
||||
}
|
||||
|
||||
prmTree.SetGRPCDialOptions(grpc.WithTransportCredentials(insecure.NewCredentials()))
|
||||
treePool, err := treepool.NewPool(prmTree)
|
||||
if err != nil {
|
||||
logger.Fatal("failed to create tree pool", zap.Error(err))
|
||||
|
|
Loading…
Reference in a new issue