diff --git a/query_alertmanager.py b/query_alertmanager.py
index 14a8d288087cef1ad1d444ce354957a7494b9d49..f8ff2ae5a7d744ae7a427dcc9455ab1192781956 100755
--- a/query_alertmanager.py
+++ b/query_alertmanager.py
@@ -27,34 +27,38 @@ def get_alerts(url, password, port=443, user="admin"):
     state = "unknown"
 
     try:
-        req = requests.get(api_url, auth=(user, password), params=query)
-        alerts_json = req.json()
-        for alert in alerts_json:
-            # pp = pprint.PrettyPrinter(indent=2)
-            # pp.pprint(alert)
-
-            name = alert["labels"]["alertname"]
-            severity = alert["labels"]["severity"]
-            instance = alert["labels"].get("instance", "")
-            alert_state = alert["status"]["state"]
-            release_name = alert["labels"].get("release_name", "")
-
-            if severity != "none" and alert_state != "suppressed":
-                count += 1
-                alert_text = f"{name}: {instance}, {release_name} ({severity})"
-                alerts.append(alert_text)
-
-        if count > 2:
-            state = "critical"
-        elif count > 0:
-            state = "warning"
-        elif count == 0:
-            state = "ok"
-
-        summary = f"{count} alerts"
-    except Exception as e:
-        print(f"The error is: {e}")
-        traceback.print_exc()
+        print(f"{api_url}")
+        # req = requests.get(api_url, auth=(user, password), params=query)
+        with requests.get(api_url, auth=(user, password), params=query) as req:
+            alerts_json = req.json()
+            for alert in alerts_json:
+                # pp = pprint.PrettyPrinter(indent=2)
+                # pp.pprint(alert)
+
+                name = alert["labels"]["alertname"]
+                severity = alert["labels"]["severity"]
+                instance = alert["labels"].get("instance", "")
+                alert_state = alert["status"]["state"]
+                release_name = alert["labels"].get("release_name", "")
+
+                if severity != "none" and alert_state != "suppressed":
+                    count += 1
+                    alert_text = f"{name}: {instance}, {release_name} ({severity})"
+                    alerts.append(alert_text)
+
+            if count > 2:
+                state = "critical"
+            elif count > 0:
+                state = "warning"
+            elif count == 0:
+                state = "ok"
+
+            summary = f"{count} alerts"
+    except (requests.exceptions.HTTPError,
+        requests.exceptions.ConnectionError,
+        requests.exceptions.Timeout) as err:
+        print ("Exception catched: ",err)
+        # traceback.print_exc()
         summary = "Cant connect"
         state = "warning"