diff --git a/common/extension/service_discovery.go b/common/extension/service_discovery.go index 456b14c83dcab4189ea287f2e9f3329109e538c3..0227920dc64a7b5f6ad1939fcccbb7384c43f68d 100644 --- a/common/extension/service_discovery.go +++ b/common/extension/service_discovery.go @@ -42,7 +42,7 @@ func SetServiceDiscovery(protocol string, creator func(name string) (registry.Se func GetServiceDiscovery(protocol string, name string) (registry.ServiceDiscovery, error) { creator, ok := discoveryCreatorMap[protocol] if !ok { - return nil, perrors.New("Could not find the service discovery with name: " + name) + return nil, perrors.New("Could not find the service discovery with discovery protocol: " + protocol) } return creator(name) } diff --git a/metadata/report/etcd/report.go b/metadata/report/etcd/report.go index 0d49ff17838e4427613b343d16f00b34bd90a00d..9db0b577bf18918fdf58e818495d7967bef35c58 100644 --- a/metadata/report/etcd/report.go +++ b/metadata/report/etcd/report.go @@ -41,7 +41,7 @@ import ( const DEFAULT_ROOT = "dubbo" func init() { - extension.SetMetadataReportFactory("etcd", func() factory.MetadataReportFactory { + extension.SetMetadataReportFactory(constant.ETCDV3_KEY, func() factory.MetadataReportFactory { return &etcdMetadataReportFactory{} }) } diff --git a/registry/etcdv3/service_discovery.go b/registry/etcdv3/service_discovery.go index f47d5324c4a901308fc41f47777ff51d8dda804a..e435a556e5690c0ad6fcdf87c8387f8157ec0d6d 100644 --- a/registry/etcdv3/service_discovery.go +++ b/registry/etcdv3/service_discovery.go @@ -89,8 +89,13 @@ func (e *etcdV3ServiceDiscovery) Register(instance registry.ServiceInstance) err if nil != e.client { ins, err := jsonutil.EncodeJSON(instance) if err == nil { - e.client.Create(path, string(ins)) - e.services.Add(instance.GetServiceName()) + err = e.client.Update(path, string(ins)) + if err != nil { + logger.Errorf("cannot register the instance: %s", string(ins), err) + } else { + e.services.Add(instance.GetServiceName()) + } + } } diff --git a/remoting/etcdv3/client.go b/remoting/etcdv3/client.go index 93da6402c759583ce7600c474910637e6ed77870..a24a69232eb4bf8d3ad7acc3b3e05eb1eaf3253b 100644 --- a/remoting/etcdv3/client.go +++ b/remoting/etcdv3/client.go @@ -144,7 +144,7 @@ func NewServiceDiscoveryClient(opts ...Option) *Client { newClient, err := NewClient(options.name, options.endpoints, options.timeout, options.heartbeat) if err != nil { - logger.Warnf("new etcd client (name{%s}, etcd addresses{%v}, timeout{%d}) = error{%v}", + logger.Errorf("new etcd client (name{%s}, etcd addresses{%v}, timeout{%d}) = error{%v}", options.name, options.endpoints, options.timeout, err) return nil }