Skip to content

Commit 5ebd8d6

Browse files
committed
Exception will be raised when calling remote services when should_discover set to False,
1 parent 1a73bc6 commit 5ebd8d6

File tree

2 files changed

+13
-6
lines changed

2 files changed

+13
-6
lines changed

py_eureka_client/eureka_client.py

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -683,6 +683,11 @@ def servers_in_zone(self):
683683
def servers_not_in_zone(self):
684684
return self.__servers_not_in_zone
685685

686+
class RegisterException(Exception):
687+
pass
688+
689+
class DiscoverException(Exception):
690+
pass
686691

687692
class EurekaClient(object):
688693
"""
@@ -1023,6 +1028,8 @@ def zone(self):
10231028

10241029
@property
10251030
def applications(self):
1031+
if not self.should_discover:
1032+
raise DiscoverException("should_discover set to False, no registry is pulled, cannot find any applications.")
10261033
with self.__application_mth_lock:
10271034
if self.__applications is None:
10281035
self.__pull_full_registry()
@@ -1075,7 +1082,7 @@ def __try_eureka_servers_in_list(self, fun, eureka_servers=[], zone=_DEFAUTL_ZON
10751082
_logger.debug("try to do %s in zone[%s] using url %s. " % (fun.__name__, _zone, url))
10761083
fun(url)
10771084
except (http_client.HTTPError, http_client.URLError):
1078-
_logger.warn("Eureka server [%s] is down, use next url to try." % url)
1085+
_logger.exception("Eureka server [%s] is down, use next url to try." % url)
10791086
else:
10801087
ok = True
10811088
self.__cache_eureka_url[_zone] = url
@@ -1182,7 +1189,7 @@ def delete_status_override(self):
11821189
self.__connect_to_eureka_server(lambda url: delete_status_override(
11831190
url, self.__instance["app"], self.__instance["instanceId"], self.__instance["lastDirtyTimestamp"]))
11841191

1185-
def __start_registery(self):
1192+
def __start_register(self):
11861193
_logger.debug("start to registry client...")
11871194
self.register()
11881195

@@ -1439,9 +1446,9 @@ def __start_discover(self):
14391446
self.__pull_full_registry()
14401447

14411448
def start(self):
1442-
if self.__should_register:
1443-
self.__start_registery()
1444-
if self.__should_discover:
1449+
if self.should_register:
1450+
self.__start_register()
1451+
if self.should_discover:
14451452
self.__start_discover()
14461453
self.__heartbeat_timer.start()
14471454

setup.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66

77
setuptools.setup(
88
name="py_eureka_client",
9-
version="0.8.3",
9+
version="0.8.4",
1010
author="Keijack",
1111
author_email="keijack.wu@gmail.com",
1212
description="A eureka client written in python. Support registering your python component to Eureka Server, as well as calling remote services by pulling the the Eureka registry. ",

0 commit comments

Comments
 (0)