From 35e9c17f74493c12d637a5d97f908808ea2d0668 Mon Sep 17 00:00:00 2001 From: Love Sharma Date: Fri, 22 Jan 2016 13:57:20 +0800 Subject: [PATCH 1/2] Add healthcheck UA to inform server about identity Adding "healthcheck.io" as User-Agent to inform webhook handler server about request is specific from healthcheck. --- hc/api/models.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/hc/api/models.py b/hc/api/models.py index 34673d68..46a524af 100644 --- a/hc/api/models.py +++ b/hc/api/models.py @@ -139,7 +139,8 @@ class Channel(models.Model): n.save() elif self.kind == "webhook" and check.status == "down": try: - r = requests.get(self.value, timeout=5) + headers = {"User-Agent": "healthchecks.io"} + r = requests.get(self.value, timeout=5, headers=headers) n.status = r.status_code except requests.exceptions.Timeout: # Well, we tried From ddfcb0ff2ab3879944a74de50bef1266f525d473 Mon Sep 17 00:00:00 2001 From: Love Sharma Date: Fri, 22 Jan 2016 14:16:16 +0800 Subject: [PATCH 2/2] test fix --- hc/api/tests/test_notify.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/hc/api/tests/test_notify.py b/hc/api/tests/test_notify.py index 459d483e..c7ae3818 100644 --- a/hc/api/tests/test_notify.py +++ b/hc/api/tests/test_notify.py @@ -26,7 +26,9 @@ class NotifyTestCase(BaseTestCase): mock_get.return_value.status_code = 200 self.channel.notify(self.check) - mock_get.assert_called_with(u"http://example", timeout=5) + mock_get.assert_called_with( + u"http://example", headers={"User-Agent": "healthchecks.io"}, + timeout=5) @patch("hc.api.models.requests.get", side_effect=ReadTimeout) def test_webhooks_handle_timeouts(self, mock_get):