in clients/etcd_client/etcd_client.go [56:84]
func (sec *ShenYuEtcdClient) NewClient(clientParam interface{}) (client interface{}, createResult bool, err error) {
ecp, ok := clientParam.(*EtcdClientParam)
if !ok {
logger.Fatalf("The clientParam must not nil!")
}
if len(ecp.EtcdServers) > 0 {
//use customer param to create client
client, err := clientv3.New(clientv3.Config{
Endpoints: ecp.EtcdServers,
DialTimeout: constants.DEFAULT_ETCD_TIMEOUT * time.Second,
Username: ecp.UserName,
Password: ecp.Password,
})
if err == nil {
logger.Infof("Create customer etcd client success!")
return &ShenYuEtcdClient{
Ecp: &EtcdClientParam{
EtcdServers: ecp.EtcdServers,
UserName: ecp.UserName,
Password: ecp.Password,
TTL: ecp.TTL,
},
EtcdClient: client,
}, true, nil
}
logger.Fatalf("init etcd client error %v:", err)
}
return
}