diff --git a/remoting/zookeeper/listener.go b/remoting/zookeeper/listener.go
index 486a67e20a0736be20813226b622f1bfa5bd87c0..b6c6d78106a5a97ec94e621d2e664185a8216656 100644
--- a/remoting/zookeeper/listener.go
+++ b/remoting/zookeeper/listener.go
@@ -322,7 +322,7 @@ func (l *ZkEventListener) listenDirEvent(conf *common.URL, zkPath string, listen
 		for {
 			select {
 			case <-ticker.C:
-				l.handleZkNodeEvent(zkEvent.Path, children, listener)
+				l.handleZkNodeEvent(zkPath, children, listener)
 			case zkEvent = <-childEventCh:
 				logger.Warnf("get a zookeeper zkEvent{type:%s, server:%s, path:%s, state:%d-%s, err:%s}",
 					zkEvent.Type.String(), zkEvent.Server, zkEvent.Path, zkEvent.State, StateToString(zkEvent.State), zkEvent.Err)