diff --git a/server/cp/__init__.py b/server/cp/__init__.py index 17a6a97..3b85720 100644 --- a/server/cp/__init__.py +++ b/server/cp/__init__.py @@ -9,5 +9,9 @@ # AUTHORS and LICENSE files distributed with this source code, or # at https://www.sourcefabric.org/superdesk/license +import logging + HEADLINE2 = "headline_extended" CORRECTION = "correction" + +logging.basicConfig(level=logging.INFO) diff --git a/server/cp/cem.py b/server/cp/cem.py index 4833734..d7d90e9 100644 --- a/server/cp/cem.py +++ b/server/cp/cem.py @@ -1,7 +1,10 @@ +import logging import requests + from flask import current_app as app +logger = logging.getLogger(__name__) session = requests.Session() @@ -18,10 +21,15 @@ def send_notification(_type, user): } if user.get("company"): payload["company"] = str(user["company"]) - session.patch( - url, - timeout=5, - json=payload, - headers=headers, - verify=bool(app.config.get("CEM_VERIFY_TLS", True)), - ) + try: + session.patch( + url, + json=payload, + headers=headers, + timeout=int(app.config.get("CEM_TIMEOUT", 10)), + verify=bool(app.config.get("CEM_VERIFY_TLS", True)), + ) + except requests.exceptions.RequestException as err: + logger.error(err) + return + logger.info("Notification sent to CEM") diff --git a/server/settings.py b/server/settings.py index 4421832..8b2984f 100644 --- a/server/settings.py +++ b/server/settings.py @@ -273,5 +273,6 @@ CEM_APIKEY = os.environ.get("CEM_APIKEY", "") CEM_PLATFORM = os.environ.get("CEM_PLATFORM", "NewsPro") CEM_VERIFY_TLS = strtobool(os.environ.get("CEM_VERIFY_TLS", "off")) +CEM_TIMEOUT = int(os.environ.get("CEM_TIMEOUT") or 10) DEFAULT_ALLOW_COMPANIES_TO_MANAGE_PRODUCTS = True