|
|
|
@ -2,6 +2,7 @@ package zookeeper
|
|
|
|
|
|
|
|
|
|
import (
|
|
|
|
|
"context"
|
|
|
|
|
"fmt"
|
|
|
|
|
"strings"
|
|
|
|
|
|
|
|
|
|
"github.com/OpenIMSDK/Open-IM-Server/pkg/common/log"
|
|
|
|
@ -18,7 +19,8 @@ type Resolver struct {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func (r *Resolver) ResolveNowZK(o resolver.ResolveNowOptions) {
|
|
|
|
|
log.ZDebug(context.Background(), "start resolve now", "target", r.target, "cc", r.cc)
|
|
|
|
|
log.ZDebug(context.Background(), "start resolve now", "target", r.target, "cc", r.cc.UpdateState, "serviceName", strings.TrimLeft(r.target.URL.Path, "/"))
|
|
|
|
|
fmt.Println("start resolve now", "target", r.target, "cc", r.cc.UpdateState, "serviceName", strings.TrimLeft(r.target.URL.Path, "/"))
|
|
|
|
|
newConns, err := r.getConnsRemote(strings.TrimLeft(r.target.URL.Path, "/"))
|
|
|
|
|
if err != nil {
|
|
|
|
|
log.ZError(context.Background(), "resolve now error", err, "target", r.target)
|
|
|
|
@ -37,7 +39,8 @@ func (r *Resolver) ResolveNow(o resolver.ResolveNowOptions) {}
|
|
|
|
|
func (s *Resolver) Close() {}
|
|
|
|
|
|
|
|
|
|
func (s *ZkClient) Build(target resolver.Target, cc resolver.ClientConn, opts resolver.BuildOptions) (resolver.Resolver, error) {
|
|
|
|
|
s.logger.Printf("build resolver: %+v, cc: %+v", "target", target, "cc", cc)
|
|
|
|
|
s.logger.Printf("build resolver: %+v, cc: %+v", target, cc.UpdateState)
|
|
|
|
|
log.ZDebug(context.Background(), "build resolver start", "target", target, "cc", cc.UpdateState)
|
|
|
|
|
r := &Resolver{}
|
|
|
|
|
r.target = target
|
|
|
|
|
r.cc = cc
|
|
|
|
@ -47,7 +50,8 @@ func (s *ZkClient) Build(target resolver.Target, cc resolver.ClientConn, opts re
|
|
|
|
|
defer s.lock.Unlock()
|
|
|
|
|
serviceName := strings.TrimLeft(target.URL.Path, "/")
|
|
|
|
|
s.resolvers[serviceName] = r
|
|
|
|
|
s.logger.Printf("build resolver finished: %+v, cc: %+v, key: ", target, cc, serviceName)
|
|
|
|
|
s.logger.Printf("build resolver finished: %+v, cc: %+v, key: %s", target, cc.UpdateState, serviceName)
|
|
|
|
|
log.ZDebug(context.Background(), "build resolver finished", "target", target, "cc", cc.UpdateState, "serviceName", serviceName)
|
|
|
|
|
return r, nil
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|