This is an automated email from the ASF dual-hosted git repository.

tianxiaoliang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/servicecomb-service-center.git


The following commit(s) were added to refs/heads/master by this push:
     new 5a9691c  static check and clear in the syncer folder (#770)
5a9691c is described below

commit 5a9691c4faa737108f7a59f5e8910d37d543889c
Author: lilai23 <[email protected]>
AuthorDate: Wed Dec 2 16:28:08 2020 +0800

    static check and clear in the syncer folder (#770)
    
    * static check and clear in the syncer folder
    
    * update golangci-lint.yml
    
    * clear code in the syncer folder
    
    * handle missed err
---
 .github/workflows/golangci-lint.yml                |  4 +--
 cmd/syncer/syncer.go                               |  1 +
 server/rest/syncer/service/service_test.go         |  2 +-
 server/rest/syncer/syncer.go                       |  2 +-
 server/rest/syncer/syncer_controller.go            |  6 ++---
 server/syncernotify/syncer_publisher.go            |  2 --
 syncer/client/sync_client.go                       |  5 +++-
 syncer/client/watch_client.go                      |  7 +++--
 syncer/cmd/daemon.go                               |  1 +
 syncer/cmd/root.go                                 |  1 +
 syncer/config/config.go                            |  1 +
 syncer/config/verify.go                            | 12 ++++-----
 syncer/etcd/option.go                              |  2 --
 syncer/grpc/grpc.go                                |  1 -
 syncer/grpc/grpc_test.go                           |  4 +--
 syncer/pkg/mock/mockplugin/instance.go             | 12 ++++-----
 syncer/pkg/mock/mockplugin/service.go              |  4 +--
 syncer/pkg/mock/mockservicecenter/instance.go      | 22 +++++++++++++---
 syncer/pkg/mock/mockservicecenter/service.go       | 17 +++++++++---
 syncer/pkg/mock/mockservicecenter/servicecenter.go | 30 +++++++++++++---------
 syncer/pkg/syssig/signal.go                        |  1 +
 syncer/pkg/syssig/signal_test.go                   | 12 +++++++--
 syncer/pkg/ticker/ticker.go                        |  1 +
 syncer/pkg/utils/addr.go                           |  1 +
 syncer/pkg/utils/error.go                          |  1 +
 syncer/pkg/utils/files.go                          |  1 +
 syncer/plugins/eureka/eureka.go                    |  1 +
 syncer/plugins/eureka/instance.go                  | 17 ++++++------
 syncer/plugins/eureka/service.go                   |  3 ++-
 syncer/plugins/eureka/transform.go                 | 15 ++++++-----
 syncer/plugins/eureka/type.go                      | 14 +++++-----
 syncer/plugins/export.go                           |  8 +++---
 syncer/plugins/plugin.go                           |  1 +
 syncer/plugins/servicecenter.go                    |  9 ++++---
 syncer/plugins/servicecenter/instance.go           | 15 ++++++-----
 syncer/plugins/servicecenter/schemas.go            |  8 +++---
 syncer/plugins/servicecenter/service.go            |  5 ++--
 syncer/plugins/servicecenter/servicecenter.go      |  1 +
 syncer/plugins/servicecenter/transform.go          |  1 +
 syncer/proto/types.go                              |  1 +
 .../servicecenter/hello-server/main.go             | 12 +++++++--
 .../hello-server/servicecenter/servicecenter.go    |  6 +++++
 syncer/serf/serf.go                                |  7 +++--
 syncer/serf/serf_test.go                           | 13 +++++++---
 syncer/server/convert.go                           |  8 +++---
 syncer/server/http.go                              |  3 +--
 syncer/server/server.go                            |  7 +++--
 syncer/server/transform.go                         |  1 +
 syncer/servicecenter/exclude.go                    |  1 +
 syncer/servicecenter/servicecenter.go              |  1 +
 syncer/servicecenter/storage/operation.go          |  8 +++---
 syncer/servicecenter/storage/storage.go            |  6 ++---
 syncer/servicecenter/sync.go                       |  5 ++--
 syncer/version/version.go                          | 10 ++++----
 54 files changed, 212 insertions(+), 128 deletions(-)

diff --git a/.github/workflows/golangci-lint.yml 
b/.github/workflows/golangci-lint.yml
index b8adc41..f7041e5 100644
--- a/.github/workflows/golangci-lint.yml
+++ b/.github/workflows/golangci-lint.yml
@@ -1,5 +1,5 @@
 name: golangci-lint
-on: [push, pull_request]
+on: [ push, pull_request ]
 jobs:
   golangci:
     name: lint
@@ -10,4 +10,4 @@ jobs:
         uses: golangci/golangci-lint-action@v2
         with:
           version: v1.29
-          args: --timeout=5m 
--skip-dirs='test,pkg/registry,.*/controller/(v3|v4)$,.*/bootstrap$,server/broker/brokerpb,examples,syncer,frontend,scctl,integration'
 --out-format=colored-line-number --enable golint,gocyclo,goimports 
--skip-files=.*_test.go$
\ No newline at end of file
+          args: --timeout=5m 
--skip-dirs='test,pkg/registry,.*/controller/(v3|v4)$,.*/bootstrap$,server/broker/brokerpb,examples,frontend,scctl,integration'
 --out-format=colored-line-number --enable golint,gocyclo,goimports 
--skip-files=.*_test.go$
\ No newline at end of file
diff --git a/cmd/syncer/syncer.go b/cmd/syncer/syncer.go
index 1b943b4..dcf3b88 100644
--- a/cmd/syncer/syncer.go
+++ b/cmd/syncer/syncer.go
@@ -14,6 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+
 package main
 
 import (
diff --git a/server/rest/syncer/service/service_test.go 
b/server/rest/syncer/service/service_test.go
index ae501e9..ed31141 100644
--- a/server/rest/syncer/service/service_test.go
+++ b/server/rest/syncer/service/service_test.go
@@ -63,7 +63,7 @@ enabled: true
        assert.NoError(t, err)
 
        svr := httptest.NewServer(&mockSyncerHandler{func(w 
http.ResponseWriter, r *http.Request) {
-               ctrl := &syncer.SyncerController{}
+               ctrl := &syncer.Controller{}
                ctrl.WatchInstance(w, r.WithContext(getContext()))
        }})
        defer svr.Close()
diff --git a/server/rest/syncer/syncer.go b/server/rest/syncer/syncer.go
index 3056ad9..6812168 100644
--- a/server/rest/syncer/syncer.go
+++ b/server/rest/syncer/syncer.go
@@ -29,6 +29,6 @@ func init() {
 func registerREST() {
        syncerEnabled := config.GetBool("syncer.enabled", false)
        if syncerEnabled {
-               roa.RegisterServant(&SyncerController{})
+               roa.RegisterServant(&Controller{})
        }
 }
diff --git a/server/rest/syncer/syncer_controller.go 
b/server/rest/syncer/syncer_controller.go
index 58840c5..6d6ba6f 100644
--- a/server/rest/syncer/syncer_controller.go
+++ b/server/rest/syncer/syncer_controller.go
@@ -26,16 +26,16 @@ import (
 )
 
 // Syncer 有关的接口
-type SyncerController struct {
+type Controller struct {
 }
 
 // URLPatterns 路由
-func (ctrl *SyncerController) URLPatterns() []rest.Route {
+func (ctrl *Controller) URLPatterns() []rest.Route {
        return []rest.Route{
                {Method: http.MethodGet, Path: "/v4/syncer/watch", Func: 
ctrl.WatchInstance},
        }
 }
 
-func (ctrl *SyncerController) WatchInstance(w http.ResponseWriter, r 
*http.Request) {
+func (ctrl *Controller) WatchInstance(w http.ResponseWriter, r *http.Request) {
        service.ServiceAPI.WatchInstance(w, r)
 }
diff --git a/server/syncernotify/syncer_publisher.go 
b/server/syncernotify/syncer_publisher.go
index 02d88f1..14fdc37 100644
--- a/server/syncernotify/syncer_publisher.go
+++ b/server/syncernotify/syncer_publisher.go
@@ -19,7 +19,6 @@ package syncernotify
 
 import (
        "context"
-       "sync"
        "time"
 
        "github.com/apache/servicecomb-service-center/pkg/gopool"
@@ -36,7 +35,6 @@ func init() {
 
 type Publisher struct {
        ws        *WebSocket
-       lock      sync.Mutex
        goroutine *gopool.Pool
 }
 
diff --git a/syncer/client/sync_client.go b/syncer/client/sync_client.go
index bab3b3f..ae71d5d 100644
--- a/syncer/client/sync_client.go
+++ b/syncer/client/sync_client.go
@@ -45,7 +45,7 @@ func NewSyncClient(addr string, tlsConf *tls.Config) (cli 
*Client) {
        if ok {
                cli = val.(*Client)
        } else {
-               grpc.InjectClient(func(conn *ggrpc.ClientConn) {
+               err := grpc.InjectClient(func(conn *ggrpc.ClientConn) {
                        cli = &Client{
                                addr: addr,
                                conn: conn,
@@ -53,6 +53,9 @@ func NewSyncClient(addr string, tlsConf *tls.Config) (cli 
*Client) {
                        }
                        clients.Store(addr, cli)
                }, grpc.WithAddr(addr), grpc.WithTLSConfig(tlsConf))
+               if err != nil {
+                       log.Error("", err)
+               }
        }
        return
 }
diff --git a/syncer/client/watch_client.go b/syncer/client/watch_client.go
index 300131e..724a746 100644
--- a/syncer/client/watch_client.go
+++ b/syncer/client/watch_client.go
@@ -16,7 +16,7 @@ import (
        "github.com/gorilla/websocket"
 )
 
-const watchInstanceUrl = "v4/syncer/watch"
+const watchInstanceURL = "v4/syncer/watch"
 const wsScheme = "ws"
 
 var (
@@ -66,7 +66,7 @@ func (c *WatchClient) WebsocketDial() error {
        u := url.URL{
                Scheme: wsScheme,
                Host:   wsHost,
-               Path:   watchInstanceUrl,
+               Path:   watchInstanceURL,
        }
 
        conn, _, err := c.wsDialer.Dial(u.String(), c.GetDefaultHeaders())
@@ -158,6 +158,9 @@ func (c *WatchClient) WatchInstanceHeartbeat(callback 
func(*dump.WatchInstanceCh
 
                                        if !connIsReady {
                                                err = c.WatchInstances(callback)
+                                               if err != nil {
+                                                       log.Error("", err)
+                                               }
                                        }
                                }
                        }
diff --git a/syncer/cmd/daemon.go b/syncer/cmd/daemon.go
index 942330c..b345c56 100644
--- a/syncer/cmd/daemon.go
+++ b/syncer/cmd/daemon.go
@@ -14,6 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+
 package cmd
 
 import (
diff --git a/syncer/cmd/root.go b/syncer/cmd/root.go
index 8b907bd..1b84d0f 100644
--- a/syncer/cmd/root.go
+++ b/syncer/cmd/root.go
@@ -14,6 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+
 package cmd
 
 import (
diff --git a/syncer/config/config.go b/syncer/config/config.go
index 31f79d0..eab1f68 100644
--- a/syncer/config/config.go
+++ b/syncer/config/config.go
@@ -14,6 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+
 package config
 
 import (
diff --git a/syncer/config/verify.go b/syncer/config/verify.go
index dd62351..31aef9a 100644
--- a/syncer/config/verify.go
+++ b/syncer/config/verify.go
@@ -52,23 +52,23 @@ func Verify(c *Config) (err error) {
                return
        }
        if c.Listener.TLSMount.Enabled {
-               listenerTls := c.GetTLSConfig(c.Listener.TLSMount.Name)
-               if listenerTls == nil {
+               listenerTLS := c.GetTLSConfig(c.Listener.TLSMount.Name)
+               if listenerTLS == nil {
                        err = errors.Errorf("listener tls config notfound, name 
= %s", c.Listener.TLSMount.Name)
                        return
                }
-               if err = verifyTLSConfig(listenerTls); err == nil {
+               if err = verifyTLSConfig(listenerTLS); err == nil {
                        return
                }
        }
 
        if c.Registry.TLSMount.Enabled {
-               registryTls := c.GetTLSConfig(c.Listener.TLSMount.Name)
-               if registryTls == nil {
+               registryTLS := c.GetTLSConfig(c.Listener.TLSMount.Name)
+               if registryTLS == nil {
                        err = errors.Errorf("registry tls config notfound, name 
= %s", c.Registry.TLSMount.Name)
                        return
                }
-               if err = verifyTLSConfig(registryTls); err == nil {
+               if err = verifyTLSConfig(registryTLS); err == nil {
                        return
                }
        }
diff --git a/syncer/etcd/option.go b/syncer/etcd/option.go
index 1a951bf..26332a2 100644
--- a/syncer/etcd/option.go
+++ b/syncer/etcd/option.go
@@ -21,7 +21,6 @@ import (
        "net/url"
 
        "github.com/apache/servicecomb-service-center/pkg/log"
-       "github.com/apache/servicecomb-service-center/pkg/tlsutil"
        "github.com/coreos/etcd/compactor"
        "github.com/coreos/etcd/embed"
        "github.com/coreos/etcd/etcdserver"
@@ -31,7 +30,6 @@ type config struct {
        name     string
        dataDir  string
        peerAddr string
-       tlsConf  *tlsutil.SSLConfig
        peers    map[string]string
 }
 
diff --git a/syncer/grpc/grpc.go b/syncer/grpc/grpc.go
index f33f2d8..6162ee6 100644
--- a/syncer/grpc/grpc.go
+++ b/syncer/grpc/grpc.go
@@ -100,7 +100,6 @@ func (s *Server) Stop() {
                }
                log.Info("grpc: shutdown complete")
        })
-       return
 }
 
 func (s *Server) wait(ctx context.Context) {
diff --git a/syncer/grpc/grpc_test.go b/syncer/grpc/grpc_test.go
index 93ffffe..429b4f1 100644
--- a/syncer/grpc/grpc_test.go
+++ b/syncer/grpc/grpc_test.go
@@ -31,11 +31,11 @@ import (
 
 type testServer struct{}
 
-func (t *testServer) DeclareDataLength(ctx context.Context, request 
*pb.DeclareRequest) (*pb.DeclareResponse, error) {
+func (t *testServer) DeclareDataLength(context.Context, *pb.DeclareRequest) 
(*pb.DeclareResponse, error) {
        return &pb.DeclareResponse{}, nil
 }
 
-func (t *testServer) IncrementPull(ctx context.Context, request 
*pb.IncrementPullRequest) (*pb.SyncData, error) {
+func (t *testServer) IncrementPull(context.Context, *pb.IncrementPullRequest) 
(*pb.SyncData, error) {
        return &pb.SyncData{}, nil
 }
 
diff --git a/syncer/pkg/mock/mockplugin/instance.go 
b/syncer/pkg/mock/mockplugin/instance.go
index 337cebc..a5e2e42 100644
--- a/syncer/pkg/mock/mockplugin/instance.go
+++ b/syncer/pkg/mock/mockplugin/instance.go
@@ -41,23 +41,23 @@ func SetHeartbeat(handler func(ctx context.Context, 
domainProject, serviceId, in
        heartbeat = handler
 }
 
-func (c *mockPlugin) RegisterInstance(ctx context.Context, domainProject, 
serviceId string, instance *pb.SyncInstance) (string, error) {
+func (c *mockPlugin) RegisterInstance(ctx context.Context, domainProject, 
serviceID string, instance *pb.SyncInstance) (string, error) {
        if registerInstance != nil {
-               return registerInstance(ctx, domainProject, serviceId, instance)
+               return registerInstance(ctx, domainProject, serviceID, instance)
        }
        return "4d41a637471f11e9888cfa163eca30e0", nil
 }
 
-func (c *mockPlugin) UnregisterInstance(ctx context.Context, domainProject, 
serviceId, instanceId string) error {
+func (c *mockPlugin) UnregisterInstance(ctx context.Context, domainProject, 
serviceID, instanceID string) error {
        if unregisterInstance != nil {
-               return unregisterInstance(ctx, domainProject, serviceId, 
instanceId)
+               return unregisterInstance(ctx, domainProject, serviceID, 
instanceID)
        }
        return nil
 }
 
-func (c *mockPlugin) Heartbeat(ctx context.Context, domainProject, serviceId, 
instanceId string) error {
+func (c *mockPlugin) Heartbeat(ctx context.Context, domainProject, serviceID, 
instanceID string) error {
        if heartbeat != nil {
-               return heartbeat(ctx, domainProject, serviceId, instanceId)
+               return heartbeat(ctx, domainProject, serviceID, instanceID)
        }
        return nil
 }
diff --git a/syncer/pkg/mock/mockplugin/service.go 
b/syncer/pkg/mock/mockplugin/service.go
index 39a79f8..f80745e 100644
--- a/syncer/pkg/mock/mockplugin/service.go
+++ b/syncer/pkg/mock/mockplugin/service.go
@@ -48,9 +48,9 @@ func (c *mockPlugin) CreateService(ctx context.Context, 
domainProject string, se
        return "5db1b794aa6f8a875d6e68110260b5491ee7e223", nil
 }
 
-func (c *mockPlugin) DeleteService(ctx context.Context, domainProject, 
serviceId string) error {
+func (c *mockPlugin) DeleteService(ctx context.Context, domainProject, 
serviceID string) error {
        if createServiceHandler != nil {
-               return deleteService(ctx, domainProject, serviceId)
+               return deleteService(ctx, domainProject, serviceID)
        }
        return nil
 }
diff --git a/syncer/pkg/mock/mockservicecenter/instance.go 
b/syncer/pkg/mock/mockservicecenter/instance.go
index e0747cd..bac12a4 100644
--- a/syncer/pkg/mock/mockservicecenter/instance.go
+++ b/syncer/pkg/mock/mockservicecenter/instance.go
@@ -19,10 +19,12 @@ package mockservicecenter
 
 import (
        "net/http"
+
+       "github.com/apache/servicecomb-service-center/pkg/log"
 )
 
 func (m *mockServer) DiscoveryInstances(rw http.ResponseWriter, req 
*http.Request) {
-       rw.Write([]byte(`{
+       _, err := rw.Write([]byte(`{
   "instances": [
     {
       "instanceId": "7a6be9f861a811e9b3f6fa163eca30e0",
@@ -60,16 +62,28 @@ func (m *mockServer) DiscoveryInstances(rw 
http.ResponseWriter, req *http.Reques
     }
   ]
 }`))
+       if err != nil {
+               log.Error("", err)
+       }
 }
 
 func (m *mockServer) RegisterInstance(rw http.ResponseWriter, req 
*http.Request) {
-       rw.Write([]byte(`{"instanceId": "8e0fe4b961a811e981a6fa163e86b81a"}`))
+       _, err := rw.Write([]byte(`{"instanceId": 
"8e0fe4b961a811e981a6fa163e86b81a"}`))
+       if err != nil {
+               log.Error("", err)
+       }
 }
 
 func (m *mockServer) UnregisterInstance(rw http.ResponseWriter, req 
*http.Request) {
-       rw.Write([]byte(`{"instanceId": "8e0fe4b961a811e981a6fa163e86b81a"}`))
+       _, err := rw.Write([]byte(`{"instanceId": 
"8e0fe4b961a811e981a6fa163e86b81a"}`))
+       if err != nil {
+               log.Error("", err)
+       }
 }
 
 func (m *mockServer) Heartbeat(rw http.ResponseWriter, req *http.Request) {
-       rw.Write([]byte(`{"instanceId": "8e0fe4b961a811e981a6fa163e86b81a"}`))
+       _, err := rw.Write([]byte(`{"instanceId": 
"8e0fe4b961a811e981a6fa163e86b81a"}`))
+       if err != nil {
+               log.Error("", err)
+       }
 }
diff --git a/syncer/pkg/mock/mockservicecenter/service.go 
b/syncer/pkg/mock/mockservicecenter/service.go
index 0f73877..36c7fd5 100644
--- a/syncer/pkg/mock/mockservicecenter/service.go
+++ b/syncer/pkg/mock/mockservicecenter/service.go
@@ -19,22 +19,33 @@ package mockservicecenter
 
 import (
        "net/http"
+
+       "github.com/apache/servicecomb-service-center/pkg/log"
 )
 
 func (m *mockServer) ServiceExistence(rw http.ResponseWriter, req 
*http.Request) {
-       rw.Write([]byte(`{
+       _, err := rw.Write([]byte(`{
     "serviceId": "4042a6a3e5a2893698ae363ea99a69eb63fc51cd"
 }`))
+       if err != nil {
+               log.Error("", err)
+       }
 }
 
 func (m *mockServer) CreateService(rw http.ResponseWriter, req *http.Request) {
-       rw.Write([]byte(`{
+       _, err := rw.Write([]byte(`{
     "serviceId": "4042a6a3e5a2893698ae363ea99a69eb63fc51cd"
 }`))
+       if err != nil {
+               log.Error("", err)
+       }
 }
 
 func (m *mockServer) DeleteService(rw http.ResponseWriter, req *http.Request) {
-       rw.Write([]byte(`{
+       _, err := rw.Write([]byte(`{
     "serviceId": "4042a6a3e5a2893698ae363ea99a69eb63fc51cc"
 }`))
+       if err != nil {
+               log.Error("", err)
+       }
 }
diff --git a/syncer/pkg/mock/mockservicecenter/servicecenter.go 
b/syncer/pkg/mock/mockservicecenter/servicecenter.go
index 79f2b38..6274018 100644
--- a/syncer/pkg/mock/mockservicecenter/servicecenter.go
+++ b/syncer/pkg/mock/mockservicecenter/servicecenter.go
@@ -23,9 +23,9 @@ import (
        "net/http/httptest"
        "strconv"
 
-       "github.com/apache/servicecomb-service-center/server/interceptor"
-
+       "github.com/apache/servicecomb-service-center/pkg/log"
        "github.com/apache/servicecomb-service-center/pkg/rest"
+       "github.com/apache/servicecomb-service-center/server/interceptor"
 )
 
 const (
@@ -44,14 +44,14 @@ type mockServer struct{}
 
 func (m *mockServer) URLPatterns() []rest.Route {
        return []rest.Route{
-               {rest.HTTPMethodGet, "/v4/:project/admin/dump", m.GetAll},
-               {rest.HTTPMethodGet, "/v4/:project/registry/existence", 
m.ServiceExistence},
-               {rest.HTTPMethodPost, "/v4/:project/registry/microservices", 
m.CreateService},
-               {rest.HTTPMethodDelete, 
"/v4/:project/registry/microservices/:serviceId", m.DeleteService},
-               {rest.HTTPMethodGet, "/v4/:project/registry/instances", 
m.DiscoveryInstances},
-               {rest.HTTPMethodPost, 
"/v4/:project/registry/microservices/:serviceId/instances", m.RegisterInstance},
-               {rest.HTTPMethodDelete, 
"/v4/:project/registry/microservices/:serviceId/instances/:instanceId", 
m.UnregisterInstance},
-               {rest.HTTPMethodPut, 
"/v4/:project/registry/microservices/:serviceId/instances/:instanceId/heartbeat",
 m.Heartbeat},
+               {Method: rest.HTTPMethodGet, Path: "/v4/:project/admin/dump", 
Func: m.GetAll},
+               {Method: rest.HTTPMethodGet, Path: 
"/v4/:project/registry/existence", Func: m.ServiceExistence},
+               {Method: rest.HTTPMethodPost, Path: 
"/v4/:project/registry/microservices", Func: m.CreateService},
+               {Method: rest.HTTPMethodDelete, Path: 
"/v4/:project/registry/microservices/:serviceId", Func: m.DeleteService},
+               {Method: rest.HTTPMethodGet, Path: 
"/v4/:project/registry/instances", Func: m.DiscoveryInstances},
+               {Method: rest.HTTPMethodPost, Path: 
"/v4/:project/registry/microservices/:serviceId/instances", Func: 
m.RegisterInstance},
+               {Method: rest.HTTPMethodDelete, Path: 
"/v4/:project/registry/microservices/:serviceId/instances/:instanceId", Func: 
m.UnregisterInstance},
+               {Method: rest.HTTPMethodPut, Path: 
"/v4/:project/registry/microservices/:serviceId/instances/:instanceId/heartbeat",
 Func: m.Heartbeat},
        }
 }
 
@@ -65,12 +65,15 @@ func (m *mockServer) WantHandler(rw http.ResponseWriter, 
req *http.Request) erro
        if data == "" {
                return nil
        }
-       rw.Write([]byte(data))
+       _, err = rw.Write([]byte(data))
+       if err != nil {
+               log.Error("", err)
+       }
        return errors.New(data)
 }
 
 func (m *mockServer) GetAll(rw http.ResponseWriter, req *http.Request) {
-       rw.Write([]byte(`{
+       _, err := rw.Write([]byte(`{
   "cache": {
     "services": [
       {
@@ -162,4 +165,7 @@ func (m *mockServer) GetAll(rw http.ResponseWriter, req 
*http.Request) {
     ]
   }
 }`))
+       if err != nil {
+               log.Error("", err)
+       }
 }
diff --git a/syncer/pkg/syssig/signal.go b/syncer/pkg/syssig/signal.go
index 04bb0ff..2f67826 100644
--- a/syncer/pkg/syssig/signal.go
+++ b/syncer/pkg/syssig/signal.go
@@ -14,6 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+
 package syssig
 
 import (
diff --git a/syncer/pkg/syssig/signal_test.go b/syncer/pkg/syssig/signal_test.go
index d519e4a..03d89b5 100644
--- a/syncer/pkg/syssig/signal_test.go
+++ b/syncer/pkg/syssig/signal_test.go
@@ -21,11 +21,19 @@ import (
        "syscall"
        "testing"
        "time"
+
+       "github.com/apache/servicecomb-service-center/pkg/log"
 )
 
 func TestSignalsHandler(t *testing.T) {
-       AddSignalsHandler(func() {}, syscall.SIGHUP, syscall.SIGINT, 
syscall.SIGKILL, syscall.SIGTERM)
-       AddSignalsHandler(func() {}, syscall.Signal(999))
+       err := AddSignalsHandler(func() {}, syscall.SIGHUP, syscall.SIGINT, 
syscall.SIGKILL, syscall.SIGTERM)
+       if err != nil {
+               log.Error("", err)
+       }
+       err = AddSignalsHandler(func() {}, syscall.Signal(999))
+       if err != nil {
+               log.Error("", err)
+       }
        ctx, cancel := context.WithCancel(context.Background())
        go func() { Run(ctx) }()
        time.Sleep(time.Second)
diff --git a/syncer/pkg/ticker/ticker.go b/syncer/pkg/ticker/ticker.go
index cd1aeb7..fa9846d 100644
--- a/syncer/pkg/ticker/ticker.go
+++ b/syncer/pkg/ticker/ticker.go
@@ -14,6 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+
 package ticker
 
 import (
diff --git a/syncer/pkg/utils/addr.go b/syncer/pkg/utils/addr.go
index 0fbde0b..6694981 100644
--- a/syncer/pkg/utils/addr.go
+++ b/syncer/pkg/utils/addr.go
@@ -14,6 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+
 package utils
 
 import (
diff --git a/syncer/pkg/utils/error.go b/syncer/pkg/utils/error.go
index 6f02d4c..2c06673 100644
--- a/syncer/pkg/utils/error.go
+++ b/syncer/pkg/utils/error.go
@@ -14,6 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+
 package utils
 
 import (
diff --git a/syncer/pkg/utils/files.go b/syncer/pkg/utils/files.go
index da1c0c3..318b59f 100644
--- a/syncer/pkg/utils/files.go
+++ b/syncer/pkg/utils/files.go
@@ -14,6 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+
 package utils
 
 import (
diff --git a/syncer/plugins/eureka/eureka.go b/syncer/plugins/eureka/eureka.go
index 6082868..550a2ec 100644
--- a/syncer/plugins/eureka/eureka.go
+++ b/syncer/plugins/eureka/eureka.go
@@ -14,6 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+
 package eureka
 
 import (
diff --git a/syncer/plugins/eureka/instance.go 
b/syncer/plugins/eureka/instance.go
index 4e4806c..3d5f8fd 100644
--- a/syncer/plugins/eureka/instance.go
+++ b/syncer/plugins/eureka/instance.go
@@ -14,6 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+
 package eureka
 
 import (
@@ -33,8 +34,8 @@ const (
 )
 
 // RegisterInstance register instance to servicecenter
-func (c *Client) RegisterInstance(ctx context.Context, domainProject, 
serviceId string, syncInstance *pb.SyncInstance) (string, error) {
-       instance := toInstance(serviceId, syncInstance)
+func (c *Client) RegisterInstance(ctx context.Context, domainProject, 
serviceID string, syncInstance *pb.SyncInstance) (string, error) {
+       instance := toInstance(serviceID, syncInstance)
        method := http.MethodPost
        headers := c.CommonHeaders(method)
        body, err := json.Marshal(&InstanceRequest{Instance: instance})
@@ -42,7 +43,7 @@ func (c *Client) RegisterInstance(ctx context.Context, 
domainProject, serviceId
                return "", err
        }
 
-       apiURL := fmt.Sprintf(apiInstances, serviceId)
+       apiURL := fmt.Sprintf(apiInstances, serviceID)
        resp, err := c.RestDoWithContext(ctx, method, apiURL, headers, body)
        if err != nil {
                return "", err
@@ -57,15 +58,15 @@ func (c *Client) RegisterInstance(ctx context.Context, 
domainProject, serviceId
                return "", c.toError(body)
        }
 
-       return instance.InstanceId, nil
+       return instance.InstanceID, nil
 }
 
 // UnregisterInstance unregister instance from servicecenter
-func (c *Client) UnregisterInstance(ctx context.Context, domainProject, 
serviceId, instanceId string) error {
+func (c *Client) UnregisterInstance(ctx context.Context, domainProject, 
serviceID, instanceID string) error {
        method := http.MethodDelete
        headers := c.CommonHeaders(method)
 
-       apiURL := fmt.Sprintf(apiInstance, serviceId, instanceId)
+       apiURL := fmt.Sprintf(apiInstance, serviceID, instanceID)
        resp, err := c.RestDoWithContext(ctx, method, apiURL, headers, nil)
        if err != nil {
                return err
@@ -85,10 +86,10 @@ func (c *Client) UnregisterInstance(ctx context.Context, 
domainProject, serviceI
 }
 
 // Heartbeat sends heartbeat to servicecenter
-func (c *Client) Heartbeat(ctx context.Context, domainProject, serviceId, 
instanceId string) error {
+func (c *Client) Heartbeat(ctx context.Context, domainProject, serviceID, 
instanceID string) error {
        method := http.MethodPut
        headers := c.CommonHeaders(method)
-       apiURL := fmt.Sprintf(apiInstance, serviceId, instanceId) + "?" + 
url.Values{"status": {UP}}.Encode()
+       apiURL := fmt.Sprintf(apiInstance, serviceID, instanceID) + "?" + 
url.Values{"status": {UP}}.Encode()
        resp, err := c.RestDoWithContext(ctx, method, apiURL, headers, nil)
        if err != nil {
                return err
diff --git a/syncer/plugins/eureka/service.go b/syncer/plugins/eureka/service.go
index 69c17c2..82aa9e1 100644
--- a/syncer/plugins/eureka/service.go
+++ b/syncer/plugins/eureka/service.go
@@ -14,6 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+
 package eureka
 
 import (
@@ -28,7 +29,7 @@ func (c *Client) CreateService(ctx context.Context, 
domainProject string, syncSe
 }
 
 // DeleteService Eureka's application is created with instance and does not 
need to be processed here.
-func (c *Client) DeleteService(ctx context.Context, domainProject, serviceId 
string) error {
+func (c *Client) DeleteService(context.Context, string, string) error {
        return nil
 }
 
diff --git a/syncer/plugins/eureka/transform.go 
b/syncer/plugins/eureka/transform.go
index 65dbf48..51f4479 100644
--- a/syncer/plugins/eureka/transform.go
+++ b/syncer/plugins/eureka/transform.go
@@ -14,6 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+
 package eureka
 
 import (
@@ -100,7 +101,7 @@ func toSyncInstances(serviceID string, instances 
[]*Instance) []*pb.SyncInstance
 // toSyncInstance transform eureka instance to SyncInstance
 func toSyncInstance(serviceID string, instance *Instance) (syncInstance 
*pb.SyncInstance) {
        syncInstance = &pb.SyncInstance{
-               InstanceId: instance.InstanceId,
+               InstanceId: instance.InstanceID,
                ServiceId:  serviceID,
                Endpoints:  make([]string, 0, 2),
                HostName:   instance.HostName,
@@ -129,11 +130,11 @@ func toSyncInstance(serviceID string, instance *Instance) 
(syncInstance *pb.Sync
                syncInstance.Endpoints = append(syncInstance.Endpoints, 
fmt.Sprintf("https://%s:%d";, instance.IPAddr, instance.SecurePort.Port))
        }
 
-       if instance.HealthCheckUrl != "" {
+       if instance.HealthCheckURL != "" {
                syncInstance.HealthCheck = &pb.HealthCheck{
                        Interval: 30,
                        Times:    3,
-                       Url:      instance.HealthCheckUrl,
+                       Url:      instance.HealthCheckURL,
                }
        }
 
@@ -164,7 +165,7 @@ func toInstance(serviceID string, syncInstance 
*pb.SyncInstance) (instance *Inst
                                PluginName, syncInstance.InstanceId, 
matches[0].Kind, matches[0].Bytes)
                }
        }
-       instance.InstanceId = syncInstance.InstanceId
+       instance.InstanceID = syncInstance.InstanceId
        instance.APP = serviceID
        instance.Status = 
pb.SyncInstance_Status_name[int32(syncInstance.Status)]
        instance.OverriddenStatus = UNKNOWN
@@ -212,15 +213,15 @@ func toInstance(serviceID string, syncInstance 
*pb.SyncInstance) (instance *Inst
        instance.HostName = ipAddr
 
        if syncInstance.HealthCheck != nil {
-               instance.HealthCheckUrl = syncInstance.HealthCheck.Url
+               instance.HealthCheckURL = syncInstance.HealthCheck.Url
        }
 
        instArr := strings.Split(syncInstance.InstanceId, ":")
        if len(instArr) != 3 {
                if instance.Port != nil && instance.Port.Enabled.Bool() {
-                       instance.InstanceId = fmt.Sprintf(eurekaInstanceFormat, 
ipAddr, instance.APP, instance.Port.Port)
+                       instance.InstanceID = fmt.Sprintf(eurekaInstanceFormat, 
ipAddr, instance.APP, instance.Port.Port)
                } else if instance.SecurePort != nil && 
instance.SecurePort.Enabled.Bool() {
-                       instance.InstanceId = fmt.Sprintf(eurekaInstanceFormat, 
ipAddr, instance.APP, instance.SecurePort.Port)
+                       instance.InstanceID = fmt.Sprintf(eurekaInstanceFormat, 
ipAddr, instance.APP, instance.SecurePort.Port)
                }
        }
        return
diff --git a/syncer/plugins/eureka/type.go b/syncer/plugins/eureka/type.go
index 3388165..f1fcc88 100644
--- a/syncer/plugins/eureka/type.go
+++ b/syncer/plugins/eureka/type.go
@@ -50,7 +50,7 @@ type InstanceRequest struct {
 }
 
 type Instance struct {
-       InstanceId                    string          `json:"instanceId"`
+       InstanceID                    string          `json:"instanceId"`
        HostName                      string          `json:"hostName"`
        APP                           string          `json:"app"`
        IPAddr                        string          `json:"ipAddr"`
@@ -58,13 +58,13 @@ type Instance struct {
        OverriddenStatus              string          
`json:"overriddenStatus,omitempty"`
        Port                          *Port           `json:"port,omitempty"`
        SecurePort                    *Port           
`json:"securePort,omitempty"`
-       CountryId                     int             
`json:"countryId,omitempty"`
+       CountryID                     int             
`json:"countryId,omitempty"`
        DataCenterInfo                *DataCenterInfo `json:"dataCenterInfo"`
        LeaseInfo                     *LeaseInfo      
`json:"leaseInfo,omitempty"`
        Metadata                      *MetaData       
`json:"metadata,omitempty"`
-       HomePageUrl                   string          
`json:"homePageUrl,omitempty"`
-       StatusPageUrl                 string          
`json:"statusPageUrl,omitempty"`
-       HealthCheckUrl                string          
`json:"healthCheckUrl,omitempty"`
+       HomePageURL                   string          
`json:"homePageUrl,omitempty"`
+       StatusPageURL                 string          
`json:"statusPageUrl,omitempty"`
+       HealthCheckURL                string          
`json:"healthCheckUrl,omitempty"`
        VipAddress                    string          
`json:"vipAddress,omitempty"`
        SecureVipAddress              string          
`json:"secureVipAddress,omitempty"`
        IsCoordinatingDiscoveryServer BoolString      
`json:"isCoordinatingDiscoveryServer,omitempty"`
@@ -83,13 +83,13 @@ type DataCenterMetadata struct {
        AmiLaunchIndex   string `json:"ami-launch-index,omitempty"`
        LocalHostname    string `json:"local-hostname,omitempty"`
        AvailabilityZone string `json:"availability-zone,omitempty"`
-       InstanceId       string `json:"instance-id,omitempty"`
+       InstanceID       string `json:"instance-id,omitempty"`
        PublicIpv4       string `json:"public-ipv4,omitempty"`
        PublicHostname   string `json:"public-hostname,omitempty"`
        AmiManifestPath  string `json:"ami-manifest-path,omitempty"`
        LocalIpv4        string `json:"local-ipv4,omitempty"`
        Hostname         string `json:"hostname,omitempty"`
-       AmiId            string `json:"ami-id,omitempty"`
+       AmiID            string `json:"ami-id,omitempty"`
        InstanceType     string `json:"instance-type,omitempty"`
 }
 
diff --git a/syncer/plugins/export.go b/syncer/plugins/export.go
index 123681f..7bea87b 100644
--- a/syncer/plugins/export.go
+++ b/syncer/plugins/export.go
@@ -14,6 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+
 package plugins
 
 type PluginType int
@@ -22,10 +23,9 @@ const (
        PluginServicecenter PluginType = iota
        pluginTotal
 
-       BUILDIN       = "buildin"
-       STATIC        = "static"
-       DYNAMIC       = "dynamic"
-       keyPluginName = "name"
+       BUILDIN = "buildin"
+       STATIC  = "static"
+       DYNAMIC = "dynamic"
 )
 
 func (p PluginType) String() string {
diff --git a/syncer/plugins/plugin.go b/syncer/plugins/plugin.go
index 29100c5..c0ffe5f 100644
--- a/syncer/plugins/plugin.go
+++ b/syncer/plugins/plugin.go
@@ -14,6 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+
 package plugins
 
 import (
diff --git a/syncer/plugins/servicecenter.go b/syncer/plugins/servicecenter.go
index fa22994..44b441f 100644
--- a/syncer/plugins/servicecenter.go
+++ b/syncer/plugins/servicecenter.go
@@ -14,6 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+
 package plugins
 
 import (
@@ -31,9 +32,9 @@ type Adaptor interface {
 type Servicecenter interface {
        GetAll(ctx context.Context) (*pb.SyncData, error)
        CreateService(ctx context.Context, domainProject string, service 
*pb.SyncService) (string, error)
-       DeleteService(ctx context.Context, domainProject, serviceId string) 
error
+       DeleteService(ctx context.Context, domainProject, serviceID string) 
error
        ServiceExistence(ctx context.Context, domainProject string, service 
*pb.SyncService) (string, error)
-       RegisterInstance(ctx context.Context, domainProject, serviceId string, 
instance *pb.SyncInstance) (string, error)
-       UnregisterInstance(ctx context.Context, domainProject, serviceId, 
instanceId string) error
-       Heartbeat(ctx context.Context, domainProject, serviceId, instanceId 
string) error
+       RegisterInstance(ctx context.Context, domainProject, serviceID string, 
instance *pb.SyncInstance) (string, error)
+       UnregisterInstance(ctx context.Context, domainProject, serviceID, 
instanceID string) error
+       Heartbeat(ctx context.Context, domainProject, serviceID, instanceID 
string) error
 }
diff --git a/syncer/plugins/servicecenter/instance.go 
b/syncer/plugins/servicecenter/instance.go
index cb78a4d..7a32514 100644
--- a/syncer/plugins/servicecenter/instance.go
+++ b/syncer/plugins/servicecenter/instance.go
@@ -14,6 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+
 package servicecenter
 
 import (
@@ -24,12 +25,12 @@ import (
 )
 
 // RegisterInstance register instance to servicecenter
-func (c *Client) RegisterInstance(ctx context.Context, domainProject, 
serviceId string, syncInstance *pb.SyncInstance) (string, error) {
+func (c *Client) RegisterInstance(ctx context.Context, domainProject, 
serviceID string, syncInstance *pb.SyncInstance) (string, error) {
        instance := toInstance(syncInstance)
        instance.InstanceId = ""
-       instance.ServiceId = serviceId
+       instance.ServiceId = serviceID
        domain, project := util.FromDomainProject(domainProject)
-       instanceID, err := c.cli.RegisterInstance(ctx, domain, project, 
serviceId, instance)
+       instanceID, err := c.cli.RegisterInstance(ctx, domain, project, 
serviceID, instance)
        if err != nil {
                return "", err
        }
@@ -37,9 +38,9 @@ func (c *Client) RegisterInstance(ctx context.Context, 
domainProject, serviceId
 }
 
 // UnregisterInstance unregister instance from servicecenter
-func (c *Client) UnregisterInstance(ctx context.Context, domainProject, 
serviceId, instanceId string) error {
+func (c *Client) UnregisterInstance(ctx context.Context, domainProject, 
serviceID, instanceID string) error {
        domain, project := util.FromDomainProject(domainProject)
-       err := c.cli.UnregisterInstance(ctx, domain, project, serviceId, 
instanceId)
+       err := c.cli.UnregisterInstance(ctx, domain, project, serviceID, 
instanceID)
        if err != nil {
                return err
        }
@@ -47,9 +48,9 @@ func (c *Client) UnregisterInstance(ctx context.Context, 
domainProject, serviceI
 }
 
 // Heartbeat sends heartbeat to servicecenter
-func (c *Client) Heartbeat(ctx context.Context, domainProject, serviceId, 
instanceId string) error {
+func (c *Client) Heartbeat(ctx context.Context, domainProject, serviceID, 
instanceID string) error {
        domain, project := util.FromDomainProject(domainProject)
-       err := c.cli.Heartbeat(ctx, domain, project, serviceId, instanceId)
+       err := c.cli.Heartbeat(ctx, domain, project, serviceID, instanceID)
        if err != nil {
                return err
        }
diff --git a/syncer/plugins/servicecenter/schemas.go 
b/syncer/plugins/servicecenter/schemas.go
index d203e3b..b5e1f98 100644
--- a/syncer/plugins/servicecenter/schemas.go
+++ b/syncer/plugins/servicecenter/schemas.go
@@ -24,8 +24,8 @@ import (
 )
 
 // CreateSchemas Create schemas to servicecenter
-func (c *Client) CreateSchemas(ctx context.Context, domain, project, serviceId 
string, schemas []*pb.Schema) error {
-       err := c.cli.CreateSchemas(ctx, domain, project, serviceId, schemas)
+func (c *Client) CreateSchemas(ctx context.Context, domain, project, serviceID 
string, schemas []*pb.Schema) error {
+       err := c.cli.CreateSchemas(ctx, domain, project, serviceID, schemas)
        if err != nil {
                return err
        }
@@ -33,8 +33,8 @@ func (c *Client) CreateSchemas(ctx context.Context, domain, 
project, serviceId s
 }
 
 // GetSchemasByServiceID Get schemas by serviceId from servicecenter
-func (c *Client) GetSchemasByServiceId(ctx context.Context, domain, project, 
serviceId string) ([]*pb.Schema, error) {
-       schemas, err := c.cli.GetSchemasByServiceID(ctx, domain, project, 
serviceId)
+func (c *Client) GetSchemasByServiceID(ctx context.Context, domain, project, 
serviceID string) ([]*pb.Schema, error) {
+       schemas, err := c.cli.GetSchemasByServiceID(ctx, domain, project, 
serviceID)
        if err != nil {
                return nil, err
        }
diff --git a/syncer/plugins/servicecenter/service.go 
b/syncer/plugins/servicecenter/service.go
index a7221be..35b8d04 100644
--- a/syncer/plugins/servicecenter/service.go
+++ b/syncer/plugins/servicecenter/service.go
@@ -14,6 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+
 package servicecenter
 
 import (
@@ -59,9 +60,9 @@ func (c *Client) CreateService(ctx context.Context, 
domainProject string, syncSe
 }
 
 // DeleteService deletes service from servicecenter
-func (c *Client) DeleteService(ctx context.Context, domainProject, serviceId 
string) error {
+func (c *Client) DeleteService(ctx context.Context, domainProject, serviceID 
string) error {
        domain, project := util.FromDomainProject(domainProject)
-       err := c.cli.DeleteService(ctx, domain, project, serviceId)
+       err := c.cli.DeleteService(ctx, domain, project, serviceID)
        if err != nil {
                return err
        }
diff --git a/syncer/plugins/servicecenter/servicecenter.go 
b/syncer/plugins/servicecenter/servicecenter.go
index ba5b69c..169622c 100644
--- a/syncer/plugins/servicecenter/servicecenter.go
+++ b/syncer/plugins/servicecenter/servicecenter.go
@@ -14,6 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+
 package servicecenter
 
 import (
diff --git a/syncer/plugins/servicecenter/transform.go 
b/syncer/plugins/servicecenter/transform.go
index 2e84e31..921a29a 100644
--- a/syncer/plugins/servicecenter/transform.go
+++ b/syncer/plugins/servicecenter/transform.go
@@ -14,6 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+
 package servicecenter
 
 import (
diff --git a/syncer/proto/types.go b/syncer/proto/types.go
index b49363b..bd77f87 100644
--- a/syncer/proto/types.go
+++ b/syncer/proto/types.go
@@ -14,6 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+
 package proto
 
 type SyncMapping []*MappingEntry
diff --git 
a/syncer/samples/multi-servicecenters/servicecenter/hello-server/main.go 
b/syncer/samples/multi-servicecenters/servicecenter/hello-server/main.go
index a4ec93c..74f92dd 100644
--- a/syncer/samples/multi-servicecenters/servicecenter/hello-server/main.go
+++ b/syncer/samples/multi-servicecenters/servicecenter/hello-server/main.go
@@ -51,7 +51,12 @@ func main() {
        }
        go syssig.Run(ctx)
        go start(ctx, conf)
-       defer servicecenter.Stop(ctx)
+       defer func() {
+               err := servicecenter.Stop(ctx)
+               if err != nil {
+                       log.Error("", err)
+               }
+       }()
 
        <-stopCh
 }
@@ -91,7 +96,10 @@ func start(ctx context.Context, conf *servicecenter.Config) {
                        log.Info("call provider success")
 
                        w.WriteHeader(http.StatusOK)
-                       w.Write([]byte(msg))
+                       _, err = w.Write([]byte(msg))
+                       if err != nil {
+                               log.Error("", err)
+                       }
                })
                go func() {
                        err = 
http.ListenAndServe(conf.Service.Instance.ListenAddress, nil)
diff --git 
a/syncer/samples/multi-servicecenters/servicecenter/hello-server/servicecenter/servicecenter.go
 
b/syncer/samples/multi-servicecenters/servicecenter/hello-server/servicecenter/servicecenter.go
index 860b487..ced8aeb 100644
--- 
a/syncer/samples/multi-servicecenters/servicecenter/hello-server/servicecenter/servicecenter.go
+++ 
b/syncer/samples/multi-servicecenters/servicecenter/hello-server/servicecenter/servicecenter.go
@@ -115,6 +115,9 @@ func Do(ctx context.Context, method, addr string, headers 
http.Header, body []by
                return nil, err
        }
        endpoints, err := serverNameToEndpoints(raw.Hostname())
+       if err != nil {
+               log.Error("", err)
+       }
 
        client, err := client2.NewLBClient(endpoints, 
(&client2.Config{Endpoints: endpoints}).Merge())
        if err != nil {
@@ -129,6 +132,9 @@ func createService(ctx context.Context, svc *MicroService) 
(*discovery.MicroServ
 
        // 检测微服务是否存在
        serviceID, err := cli.ServiceExistence(ctx, domain, project, 
service.AppId, service.ServiceName, service.Version, "")
+       if err != nil {
+               log.Error("", err)
+       }
        if serviceID == "" {
                // 注册微服务
                serviceID, err = cli.CreateService(ctx, domain, project, 
service)
diff --git a/syncer/serf/serf.go b/syncer/serf/serf.go
index 517cb44..53b93aa 100644
--- a/syncer/serf/serf.go
+++ b/syncer/serf/serf.go
@@ -88,7 +88,10 @@ func (s *Server) Start(ctx context.Context) {
                        return
                }
                s.serf = sf
-               s.Join(s.peerAddr)
+               _, err = s.Join(s.peerAddr)
+               if err != nil {
+                       log.Error("", err)
+               }
                close(s.readyCh)
                go s.waitEvent(ctx)
        })
@@ -229,7 +232,7 @@ func (s *Server) Member(node string) *serf.Member {
 }
 
 func (s *Server) responseCallback(resp *serf.QueryResponse, callback 
CallbackFunc) {
-       hourglass := time.After(resp.Deadline().Sub(time.Now()))
+       hourglass := time.After(time.Until(resp.Deadline()))
        for {
                select {
                case a := <-resp.AckCh():
diff --git a/syncer/serf/serf_test.go b/syncer/serf/serf_test.go
index 64c7337..49ba3a9 100644
--- a/syncer/serf/serf_test.go
+++ b/syncer/serf/serf_test.go
@@ -24,6 +24,7 @@ import (
        "testing"
        "time"
 
+       "github.com/apache/servicecomb-service-center/pkg/log"
        "github.com/hashicorp/serf/serf"
        "github.com/stretchr/testify/assert"
 )
@@ -76,7 +77,10 @@ func TestServerFailed(t *testing.T) {
 
 func TestServerEventHandler(t *testing.T) {
        svr := defaultServer()
-       startServer(context.Background(), svr)
+       err := startServer(context.Background(), svr)
+       if err != nil {
+               log.Error("", err)
+       }
        svr.OnceEventHandler(NewEventHandler(MemberJoinFilter(), func(data 
...[]byte) bool {
                t.Log("Once event form member join triggered")
                return true
@@ -102,8 +106,11 @@ func TestServerEventHandler(t *testing.T) {
 
 func TestUserQuery(t *testing.T) {
        svr := defaultServer()
-       startServer(context.Background(), svr)
-       err := svr.Query("test-query", []byte("test-data"), func(from string, 
data []byte) {},
+       err := startServer(context.Background(), svr)
+       if err != nil {
+               log.Error("", err)
+       }
+       err = svr.Query("test-query", []byte("test-data"), func(from string, 
data []byte) {},
                WithFilterNodes("syncer-test"),
                WithFilterTags(map[string]string{"test-key": "test-value"}),
                WithRequestAck(false),
diff --git a/syncer/server/convert.go b/syncer/server/convert.go
index 91b6375..7b49ac0 100644
--- a/syncer/server/convert.go
+++ b/syncer/server/convert.go
@@ -22,6 +22,8 @@ import (
        "strconv"
        "strings"
 
+       "github.com/apache/servicecomb-service-center/pkg/log"
+
        "github.com/apache/servicecomb-service-center/pkg/tlsutil"
        "github.com/apache/servicecomb-service-center/syncer/config"
        "github.com/apache/servicecomb-service-center/syncer/etcd"
@@ -79,7 +81,7 @@ func convertGRPCOptions(c *config.Config) []grpc.Option {
                sslOps := append(tlsutil.DefaultServerTLSOptions(), 
tlsConfigToOptions(conf)...)
                tlsConf, err := tlsutil.GetServerTLSConfig(sslOps...)
                if err != nil {
-
+                       log.Error("", err)
                }
                opts = append(opts, grpc.WithTLSConfig(tlsConf))
        }
@@ -96,9 +98,7 @@ func convertTaskOptions(c *config.Config) []task.Option {
 
 func convertSCConfigOption(c *config.Config) []plugins.SCConfigOption {
        endpoints := make([]string, 0, 10)
-       for _, endpoint := range strings.Split(c.Registry.Address, ",") {
-               endpoints = append(endpoints, endpoint)
-       }
+       endpoints = append(endpoints, strings.Split(c.Registry.Address, ",")...)
        opts := []plugins.SCConfigOption{plugins.WithEndpoints(endpoints)}
 
        if c.Registry.TLSMount.Enabled {
diff --git a/syncer/server/http.go b/syncer/server/http.go
index 05aac88..a2f94d0 100644
--- a/syncer/server/http.go
+++ b/syncer/server/http.go
@@ -20,7 +20,6 @@ func (s *Server) FullSync(b *rf.Context) {
        if err != nil {
                log.Error("", err)
        }
-       return
 }
 
 func (s *Server) URLPatterns() []rf.Route {
@@ -31,7 +30,7 @@ func (s *Server) URLPatterns() []rf.Route {
 
 //if you use go run main.go instead of binary run, plz export 
CHASSIS_HOME=/{path}/{to}/server/
 
-func (s *Server) NewHttpServer() {
+func (s *Server) NewHTTPServer() {
        chassis.RegisterSchema("rest", s)
        if err := chassis.Init(); err != nil {
                log.Error("Init failed.", err)
diff --git a/syncer/server/server.go b/syncer/server/server.go
index d5068d7..8d5ccbd 100644
--- a/syncer/server/server.go
+++ b/syncer/server/server.go
@@ -51,7 +51,7 @@ import (
        _ "github.com/apache/servicecomb-service-center/syncer/task/ticker"
 )
 
-var stopChanErr = errors.New("stopped syncer by stopCh")
+var ErrStopChan = errors.New("stopped syncer by stopCh")
 
 type moduleServer interface {
        // Starts launches the module server, the returned is not guaranteed 
that the server is ready
@@ -155,7 +155,7 @@ func (s *Server) Run(ctx context.Context) {
 
        s.task.Run(ctx)
 
-       go s.NewHttpServer()
+       go s.NewHTTPServer()
 
        err = s.watchInstance()
        if err != nil {
@@ -168,7 +168,6 @@ func (s *Server) Run(ctx context.Context) {
        <-s.stopCh
 
        s.Stop()
-       return
 }
 
 // Stop Syncer Server
@@ -201,7 +200,7 @@ func (s *Server) startModuleServer(module moduleServer) 
(err error) {
        case <-s.stopCh:
        }
        s.Stop()
-       return stopChanErr
+       return ErrStopChan
 }
 
 // initialization Initialize the starter of the syncer
diff --git a/syncer/server/transform.go b/syncer/server/transform.go
index d66ca2e..d25bb02 100644
--- a/syncer/server/transform.go
+++ b/syncer/server/transform.go
@@ -14,6 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+
 package server
 
 import (
diff --git a/syncer/servicecenter/exclude.go b/syncer/servicecenter/exclude.go
index 23cf3a8..b8e923a 100644
--- a/syncer/servicecenter/exclude.go
+++ b/syncer/servicecenter/exclude.go
@@ -14,6 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+
 package servicecenter
 
 import (
diff --git a/syncer/servicecenter/servicecenter.go 
b/syncer/servicecenter/servicecenter.go
index 42ac872..1c4bd66 100644
--- a/syncer/servicecenter/servicecenter.go
+++ b/syncer/servicecenter/servicecenter.go
@@ -14,6 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+
 package servicecenter
 
 import (
diff --git a/syncer/servicecenter/storage/operation.go 
b/syncer/servicecenter/storage/operation.go
index d655afc..0b0aa11 100644
--- a/syncer/servicecenter/storage/operation.go
+++ b/syncer/servicecenter/storage/operation.go
@@ -31,16 +31,16 @@ var (
        instancesKey = "/syncer/v1/instances"
 )
 
-func putServiceOp(serviceId string, data []byte) clientv3.Op {
-       return clientv3.OpPut(servicesKey+"/"+serviceId, 
util.BytesToStringWithNoCopy(data))
+func putServiceOp(serviceID string, data []byte) clientv3.Op {
+       return clientv3.OpPut(servicesKey+"/"+serviceID, 
util.BytesToStringWithNoCopy(data))
 }
 
 func getServicesOp() clientv3.Op {
        return clientv3.OpGet(servicesKey, clientv3.WithPrefix())
 }
 
-func deleteServiceOp(serviceId string) clientv3.Op {
-       return clientv3.OpDelete(servicesKey + "/" + serviceId)
+func deleteServiceOp(serviceID string) clientv3.Op {
+       return clientv3.OpDelete(servicesKey + "/" + serviceID)
 }
 
 func putInstanceOp(instanceID string, data []byte) clientv3.Op {
diff --git a/syncer/servicecenter/storage/storage.go 
b/syncer/servicecenter/storage/storage.go
index 13e3c29..4850175 100644
--- a/syncer/servicecenter/storage/storage.go
+++ b/syncer/servicecenter/storage/storage.go
@@ -19,7 +19,6 @@ package storage
 
 import (
        "context"
-       "sync"
 
        "github.com/apache/servicecomb-service-center/pkg/log"
        pb "github.com/apache/servicecomb-service-center/syncer/proto"
@@ -39,7 +38,6 @@ type Storage interface {
 type storage struct {
        engine clientv3.KV
        data   *pb.SyncData
-       lock   sync.RWMutex
 }
 
 func NewStorage(engine clientv3.KV) Storage {
@@ -179,8 +177,8 @@ func (s *storage) DeleteServices(services 
[]*pb.SyncService) {
 }
 
 // DeleteServices Delete services from storage
-func (s *storage) deleteService(serviceId string) {
-       delOp := deleteServiceOp(serviceId)
+func (s *storage) deleteService(serviceID string) {
+       delOp := deleteServiceOp(serviceID)
        _, err := s.engine.Do(context.Background(), delOp)
        if err != nil {
                log.Errorf(err, "Delete service from etcd failed: %s", err)
diff --git a/syncer/servicecenter/sync.go b/syncer/servicecenter/sync.go
index b54c904..f7dcb0e 100644
--- a/syncer/servicecenter/sync.go
+++ b/syncer/servicecenter/sync.go
@@ -14,6 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+
 package servicecenter
 
 import (
@@ -54,8 +55,8 @@ func (s *servicecenter) createService(service 
*pb.SyncService) string {
        return serviceID
 }
 
-func (s *servicecenter) registryInstances(domainProject, serviceId string, 
instance *pb.SyncInstance) string {
-       instanceID, err := 
s.servicecenter.RegisterInstance(context.Background(), domainProject, 
serviceId, instance)
+func (s *servicecenter) registryInstances(domainProject, serviceID string, 
instance *pb.SyncInstance) string {
+       instanceID, err := 
s.servicecenter.RegisterInstance(context.Background(), domainProject, 
serviceID, instance)
        if err != nil {
                log.Errorf(err, "Servicecenter registry instance failed")
                return ""
diff --git a/syncer/version/version.go b/syncer/version/version.go
index 5fe90bc..c235d33 100644
--- a/syncer/version/version.go
+++ b/syncer/version/version.go
@@ -14,6 +14,7 @@
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
+
 package version
 
 import (
@@ -21,20 +22,19 @@ import (
 )
 
 var (
-       // no need to modify
+       // VERSION no need to modify
        // please use:
        //      go build -ldflags "-X 
github.com/apache/servicecomb-service-center/syncer/version.VERSION=x.x.x"
        // to set these values.
-       VERSION   = "0.0.1"
-       BUILD_TAG = "Not provided"
-       TOOL_NAME = "syncer"
+       VERSION  = "0.0.1"
+       BuildTag = "Not provided"
 )
 
 var versionSet version.Set
 
 func init() {
        versionSet.Version = VERSION
-       versionSet.BuildTag = BUILD_TAG
+       versionSet.BuildTag = BuildTag
        versionSet.LoadRuntimeInfo()
 }
 

Reply via email to