Skip to content

Commit acc74a1

Browse files
authored
Add some error log when notify error. (#594)
1 parent 98a300f commit acc74a1

File tree

1 file changed

+13
-3
lines changed
  • polaris-discovery/polaris-discovery-client/src/main/java/com/tencent/polaris/discovery/client/flow

1 file changed

+13
-3
lines changed

polaris-discovery/polaris-discovery-client/src/main/java/com/tencent/polaris/discovery/client/flow/WatchFlow.java

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@
5656
*/
5757
public class WatchFlow {
5858

59-
private static final Logger LOG = LoggerFactory.getLogger(SyncFlow.class);
59+
private static final Logger LOG = LoggerFactory.getLogger(WatchFlow.class);
6060
private static final Logger UPDATE_EVENT_LOG = LoggerFactory.getLogger(LOGGING_UPDATE_EVENT_ASYNC);
6161
private static final Map<ServiceKey, Set<ServiceListener>> watchers = new ConcurrentHashMap<>();
6262
private final AtomicBoolean initialize = new AtomicBoolean(false);
@@ -90,7 +90,13 @@ public WatchServiceResponse commonWatchService(CommonWatchServiceRequest request
9090
.addInstances(Arrays.asList(response.getInstances()))
9191
.allInstances(Arrays.asList(response.getInstances())).build();
9292
firstAddedListeners.forEach(
93-
serviceListener -> executor.execute(event.getServiceKey(), () -> serviceListener.onEvent(event)));
93+
serviceListener -> executor.execute(event.getServiceKey(), () -> {
94+
try {
95+
serviceListener.onEvent(event);
96+
} catch (Throwable e) {
97+
LOG.error("Notify error When listener is first added, service key:{}, event:{}", event.getServiceKey(), event, e);
98+
}
99+
}));
94100
}
95101
boolean result = existListeners.addAll(addListeners);
96102
return new WatchServiceResponse(response, result);
@@ -168,7 +174,11 @@ private class InstanceChangeListener extends AbstractResourceEventListener {
168174

169175
private final BiConsumer<ServiceChangeEvent, ServiceListener> consumer = (event, listener) -> {
170176
WatchFlow.this.executor.execute(event.getServiceKey(), () -> {
171-
listener.onEvent(event);
177+
try {
178+
listener.onEvent(event);
179+
} catch (Throwable e) {
180+
LOG.error("Notify error, service key:{}, event:{}", event.getServiceKey(), event, e);
181+
}
172182
});
173183
};
174184

0 commit comments

Comments
 (0)