diff --git a/src/emailservice/Dockerfile b/src/emailservice/Dockerfile index 4c7f225..3d649a5 100644 --- a/src/emailservice/Dockerfile +++ b/src/emailservice/Dockerfile @@ -4,7 +4,8 @@ FROM base as builder RUN apt-get -qq update \ && apt-get install -y --no-install-recommends \ - g++ + g++ \ + && rm -rf /var/lib/apt/lists/* # get packages COPY requirements.txt . diff --git a/src/emailservice/email_server.py b/src/emailservice/email_server.py index dc341e8..5af5ff9 100644 --- a/src/emailservice/email_server.py +++ b/src/emailservice/email_server.py @@ -145,17 +145,12 @@ def start(dummy_mode): server.stop(0) def initStackdriverProfiling(): - enable_profiler = None project_id = None try: - enable_profiler = os.environ["ENABLE_PROFILER"] project_id = os.environ["GCP_PROJECT_ID"] except KeyError: # Environment variable not set pass - if enable_profiler != "1": - logger.info("Skipping Stackdriver Profiler Python agent initialization. Set environment variable ENABLE_PROFILER=1 to enable.") - return for retry in range(1,4): try: @@ -169,13 +164,21 @@ def initStackdriverProfiling(): logger.info("Unable to start Stackdriver Profiler Python agent. " + str(exc)) if (retry < 4): logger.info("Sleeping %d to retry initializing Stackdriver Profiler"%(retry*10)) - time.sleep (retry*10) + time.sleep (1) else: logger.warning("Could not initialize Stackdriver Profiler after retrying, giving up") return if __name__ == '__main__': logger.info('starting the email service in dummy mode.') - initStackdriverProfiling() + try: + enable_profiler = os.environ["ENABLE_PROFILER"] + if enable_profiler != "1": + raise KeyError() + else: + initStackdriverProfiling() + except KeyError: + logger.info("Skipping Stackdriver Profiler Python agent initialization. Set environment variable ENABLE_PROFILER=1 to enable.") + start(dummy_mode = True) diff --git a/src/recommendationservice/recommendation_server.py b/src/recommendationservice/recommendation_server.py index f76db10..357f25f 100644 --- a/src/recommendationservice/recommendation_server.py +++ b/src/recommendationservice/recommendation_server.py @@ -37,17 +37,12 @@ from logger import getJSONLogger logger = getJSONLogger('recommendationservice-server') def initStackdriverProfiling(): - enable_profiler = None project_id = None try: - enable_profiler = os.environ["ENABLE_PROFILER"] project_id = os.environ["GCP_PROJECT_ID"] except KeyError: # Environment variable not set pass - if enable_profiler != "1": - logger.info("Skipping Stackdriver Profiler Python agent initialization. Set environment variable ENABLE_PROFILER=1 to enable.") - return for retry in xrange(1,4): try: @@ -61,7 +56,7 @@ def initStackdriverProfiling(): logger.info("Unable to start Stackdriver Profiler Python agent. " + str(exc)) if (retry < 4): logger.info("Sleeping %d seconds to retry Stackdriver Profiler agent initialization"%(retry*10)) - time.sleep (retry*10) + time.sleep (1) else: logger.warning("Could not initialize Stackdriver Profiler after retrying, giving up") return @@ -93,7 +88,15 @@ class RecommendationService(demo_pb2_grpc.RecommendationServiceServicer): if __name__ == "__main__": logger.info("initializing recommendationservice") - initStackdriverProfiling() + try: + enable_profiler = os.environ["ENABLE_PROFILER"] + if enable_profiler != "1": + raise KeyError() + else: + initStackdriverProfiling() + except KeyError: + logger.info("Skipping Stackdriver Profiler Python agent initialization. Set environment variable ENABLE_PROFILER=1 to enable.") + try: sampler = always_on.AlwaysOnSampler() exporter = stackdriver_exporter.StackdriverExporter()