[#140] Use gRPC interceptor from observability package
All checks were successful
/ DCO (pull_request) Successful in 1m8s
/ Builds (1.19) (pull_request) Successful in 3m8s
/ Builds (1.20) (pull_request) Successful in 2m44s
/ Lint (pull_request) Successful in 4m50s
/ Tests (1.19) (pull_request) Successful in 9m28s
/ Tests (1.20) (pull_request) Successful in 10m32s
/ Vulncheck (pull_request) Successful in 1m16s
All checks were successful
/ DCO (pull_request) Successful in 1m8s
/ Builds (1.19) (pull_request) Successful in 3m8s
/ Builds (1.20) (pull_request) Successful in 2m44s
/ Lint (pull_request) Successful in 4m50s
/ Tests (1.19) (pull_request) Successful in 9m28s
/ Tests (1.20) (pull_request) Successful in 10m32s
/ Vulncheck (pull_request) Successful in 1m16s
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
8fcaf76f41
commit
67bf8ee8b6
1 changed files with 14 additions and 1 deletions
|
@ -14,6 +14,7 @@ import (
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"git.frostfs.info/TrueCloudLab/frostfs-observability/tracing"
|
"git.frostfs.info/TrueCloudLab/frostfs-observability/tracing"
|
||||||
|
grpctracing "git.frostfs.info/TrueCloudLab/frostfs-observability/tracing/grpc"
|
||||||
"git.frostfs.info/TrueCloudLab/frostfs-s3-gw/api"
|
"git.frostfs.info/TrueCloudLab/frostfs-s3-gw/api"
|
||||||
"git.frostfs.info/TrueCloudLab/frostfs-s3-gw/api/auth"
|
"git.frostfs.info/TrueCloudLab/frostfs-s3-gw/api/auth"
|
||||||
"git.frostfs.info/TrueCloudLab/frostfs-s3-gw/api/cache"
|
"git.frostfs.info/TrueCloudLab/frostfs-s3-gw/api/cache"
|
||||||
|
@ -311,6 +312,19 @@ func getPools(ctx context.Context, logger *zap.Logger, cfg *viper.Viper) (*pool.
|
||||||
prm.SetLogger(logger)
|
prm.SetLogger(logger)
|
||||||
prmTree.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)
|
p, err := pool.NewPool(prm)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logger.Fatal("failed to create connection pool", zap.Error(err))
|
logger.Fatal("failed to create connection pool", zap.Error(err))
|
||||||
|
@ -320,7 +334,6 @@ func getPools(ctx context.Context, logger *zap.Logger, cfg *viper.Viper) (*pool.
|
||||||
logger.Fatal("failed to dial connection pool", zap.Error(err))
|
logger.Fatal("failed to dial connection pool", zap.Error(err))
|
||||||
}
|
}
|
||||||
|
|
||||||
prmTree.SetGRPCDialOptions(grpc.WithTransportCredentials(insecure.NewCredentials()))
|
|
||||||
treePool, err := treepool.NewPool(prmTree)
|
treePool, err := treepool.NewPool(prmTree)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
logger.Fatal("failed to create tree pool", zap.Error(err))
|
logger.Fatal("failed to create tree pool", zap.Error(err))
|
||||||
|
|
Loading…
Reference in a new issue