)]}'
{"doc/source/contributor/prometheus-datasource.rst":[{"author":{"_account_id":19134,"name":"Eyal","email":"eyalb1@gmail.com","username":"eyalb"},"change_message_id":"1855d482c91349c0bc15e22dcd27252bd1eda24c","unresolved":false,"context_lines":[{"line_number":46,"context_line":"    types \u003d nova.host,nova.instance,nova.zone,aodh,static,cinder.volume,neutron.network,neutron.port,prometheus"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"Add the http ulr of Prometheus Alertmanager api for alerts and the receiver name"},{"line_number":50,"context_line":"from the previous step under ``[prometheus]`` section::"},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"    [prometheus]"}],"source_content_type":"text/x-rst","patch_set":1,"id":"9fdfeff1_610f2688","line":49,"range":{"start_line":49,"start_character":13,"end_line":49,"end_character":16},"updated":"2019-02-13 08:52:15.000000000","message":"url","commit_id":"39609be338c948a190840be7c094fddaf56730fb"},{"author":{"_account_id":26339,"name":"Muhamad Najjar","email":"muhamad.najjar@nokia.com","username":"7mode3294"},"change_message_id":"b38eb03d77246368cb7216627d177652f7f3516d","unresolved":false,"context_lines":[{"line_number":46,"context_line":"    types \u003d nova.host,nova.instance,nova.zone,aodh,static,cinder.volume,neutron.network,neutron.port,prometheus"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":""},{"line_number":49,"context_line":"Add the http ulr of Prometheus Alertmanager api for alerts and the receiver name"},{"line_number":50,"context_line":"from the previous step under ``[prometheus]`` section::"},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"    [prometheus]"}],"source_content_type":"text/x-rst","patch_set":1,"id":"9fdfeff1_01b2da94","line":49,"range":{"start_line":49,"start_character":13,"end_line":49,"end_character":16},"in_reply_to":"9fdfeff1_610f2688","updated":"2019-02-13 09:03:03.000000000","message":"Done","commit_id":"39609be338c948a190840be7c094fddaf56730fb"},{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"2f49bee5f606b8de583a812f4629daeff9e3b8c5","unresolved":false,"context_lines":[{"line_number":54,"context_line":"    receiver \u003d vitrage"},{"line_number":55,"context_line":""},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"Note: we support both v1 and v2 Alertmanager apis"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"Step 3 - Map Prometheus alerts to Vitrage resources"}],"source_content_type":"text/x-rst","patch_set":1,"id":"9fdfeff1_21d83eed","line":57,"range":{"start_line":57,"start_character":6,"end_line":57,"end_character":16},"updated":"2019-02-13 09:03:14.000000000","message":"Vitrage supports (or: both ... are supported)","commit_id":"39609be338c948a190840be7c094fddaf56730fb"},{"author":{"_account_id":26339,"name":"Muhamad Najjar","email":"muhamad.najjar@nokia.com","username":"7mode3294"},"change_message_id":"ba48f7e5c33befc8ab9ad543cb3fe63cc9515ec6","unresolved":false,"context_lines":[{"line_number":54,"context_line":"    receiver \u003d vitrage"},{"line_number":55,"context_line":""},{"line_number":56,"context_line":""},{"line_number":57,"context_line":"Note: we support both v1 and v2 Alertmanager apis"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":""},{"line_number":60,"context_line":"Step 3 - Map Prometheus alerts to Vitrage resources"}],"source_content_type":"text/x-rst","patch_set":1,"id":"9fdfeff1_849b38c7","line":57,"range":{"start_line":57,"start_character":6,"end_line":57,"end_character":16},"in_reply_to":"9fdfeff1_21d83eed","updated":"2019-02-13 09:14:05.000000000","message":"Done","commit_id":"39609be338c948a190840be7c094fddaf56730fb"}],"vitrage/datasources/prometheus/__init__.py":[{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"2f49bee5f606b8de583a812f4629daeff9e3b8c5","unresolved":false,"context_lines":[{"line_number":42,"context_line":"               help\u003d\u0027Prometheus configuration file\u0027),"},{"line_number":43,"context_line":"    cfg.StrOpt(PGAProps.ALERTMANAGER_URL,"},{"line_number":44,"context_line":"               help\u003d\u0027Alertmanager url to get alerts\u0027),"},{"line_number":45,"context_line":"    cfg.StrOpt(PGAProps.RECEIVER, default\u003d\u0027/etc/vitrage/prometheus_conf.yaml\u0027,"},{"line_number":46,"context_line":"               help\u003d\u0027Receiver configured in alertmanager to send alets to \u0027"},{"line_number":47,"context_line":"                    \u0027vitrage\u0027),"},{"line_number":48,"context_line":"]"}],"source_content_type":"text/x-python","patch_set":1,"id":"9fdfeff1_81956ae6","line":45,"range":{"start_line":45,"start_character":15,"end_line":45,"end_character":77},"updated":"2019-02-13 09:03:14.000000000","message":"The default for the receiver is the prometheus_conf.yaml?","commit_id":"39609be338c948a190840be7c094fddaf56730fb"},{"author":{"_account_id":26339,"name":"Muhamad Najjar","email":"muhamad.najjar@nokia.com","username":"7mode3294"},"change_message_id":"ba48f7e5c33befc8ab9ad543cb3fe63cc9515ec6","unresolved":false,"context_lines":[{"line_number":42,"context_line":"               help\u003d\u0027Prometheus configuration file\u0027),"},{"line_number":43,"context_line":"    cfg.StrOpt(PGAProps.ALERTMANAGER_URL,"},{"line_number":44,"context_line":"               help\u003d\u0027Alertmanager url to get alerts\u0027),"},{"line_number":45,"context_line":"    cfg.StrOpt(PGAProps.RECEIVER, default\u003d\u0027/etc/vitrage/prometheus_conf.yaml\u0027,"},{"line_number":46,"context_line":"               help\u003d\u0027Receiver configured in alertmanager to send alets to \u0027"},{"line_number":47,"context_line":"                    \u0027vitrage\u0027),"},{"line_number":48,"context_line":"]"}],"source_content_type":"text/x-python","patch_set":1,"id":"9fdfeff1_e45c841a","line":45,"range":{"start_line":45,"start_character":15,"end_line":45,"end_character":77},"in_reply_to":"9fdfeff1_81956ae6","updated":"2019-02-13 09:14:05.000000000","message":"good catch! thank you","commit_id":"39609be338c948a190840be7c094fddaf56730fb"},{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"2f49bee5f606b8de583a812f4629daeff9e3b8c5","unresolved":false,"context_lines":[{"line_number":43,"context_line":"    cfg.StrOpt(PGAProps.ALERTMANAGER_URL,"},{"line_number":44,"context_line":"               help\u003d\u0027Alertmanager url to get alerts\u0027),"},{"line_number":45,"context_line":"    cfg.StrOpt(PGAProps.RECEIVER, default\u003d\u0027/etc/vitrage/prometheus_conf.yaml\u0027,"},{"line_number":46,"context_line":"               help\u003d\u0027Receiver configured in alertmanager to send alets to \u0027"},{"line_number":47,"context_line":"                    \u0027vitrage\u0027),"},{"line_number":48,"context_line":"]"}],"source_content_type":"text/x-python","patch_set":1,"id":"9fdfeff1_21011e39","line":46,"range":{"start_line":46,"start_character":65,"end_line":46,"end_character":70},"updated":"2019-02-13 09:03:14.000000000","message":"alerts","commit_id":"39609be338c948a190840be7c094fddaf56730fb"},{"author":{"_account_id":26339,"name":"Muhamad Najjar","email":"muhamad.najjar@nokia.com","username":"7mode3294"},"change_message_id":"ba48f7e5c33befc8ab9ad543cb3fe63cc9515ec6","unresolved":false,"context_lines":[{"line_number":43,"context_line":"    cfg.StrOpt(PGAProps.ALERTMANAGER_URL,"},{"line_number":44,"context_line":"               help\u003d\u0027Alertmanager url to get alerts\u0027),"},{"line_number":45,"context_line":"    cfg.StrOpt(PGAProps.RECEIVER, default\u003d\u0027/etc/vitrage/prometheus_conf.yaml\u0027,"},{"line_number":46,"context_line":"               help\u003d\u0027Receiver configured in alertmanager to send alets to \u0027"},{"line_number":47,"context_line":"                    \u0027vitrage\u0027),"},{"line_number":48,"context_line":"]"}],"source_content_type":"text/x-python","patch_set":1,"id":"9fdfeff1_2467eceb","line":46,"range":{"start_line":46,"start_character":65,"end_line":46,"end_character":70},"in_reply_to":"9fdfeff1_21011e39","updated":"2019-02-13 09:14:05.000000000","message":"Done","commit_id":"39609be338c948a190840be7c094fddaf56730fb"},{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"2f49bee5f606b8de583a812f4629daeff9e3b8c5","unresolved":false,"context_lines":[{"line_number":44,"context_line":"               help\u003d\u0027Alertmanager url to get alerts\u0027),"},{"line_number":45,"context_line":"    cfg.StrOpt(PGAProps.RECEIVER, default\u003d\u0027/etc/vitrage/prometheus_conf.yaml\u0027,"},{"line_number":46,"context_line":"               help\u003d\u0027Receiver configured in alertmanager to send alets to \u0027"},{"line_number":47,"context_line":"                    \u0027vitrage\u0027),"},{"line_number":48,"context_line":"]"}],"source_content_type":"text/x-python","patch_set":1,"id":"9fdfeff1_c1f9324e","line":47,"range":{"start_line":47,"start_character":21,"end_line":47,"end_character":28},"updated":"2019-02-13 09:03:14.000000000","message":"Vitrage","commit_id":"39609be338c948a190840be7c094fddaf56730fb"},{"author":{"_account_id":26339,"name":"Muhamad Najjar","email":"muhamad.najjar@nokia.com","username":"7mode3294"},"change_message_id":"ba48f7e5c33befc8ab9ad543cb3fe63cc9515ec6","unresolved":false,"context_lines":[{"line_number":44,"context_line":"               help\u003d\u0027Alertmanager url to get alerts\u0027),"},{"line_number":45,"context_line":"    cfg.StrOpt(PGAProps.RECEIVER, default\u003d\u0027/etc/vitrage/prometheus_conf.yaml\u0027,"},{"line_number":46,"context_line":"               help\u003d\u0027Receiver configured in alertmanager to send alets to \u0027"},{"line_number":47,"context_line":"                    \u0027vitrage\u0027),"},{"line_number":48,"context_line":"]"}],"source_content_type":"text/x-python","patch_set":1,"id":"9fdfeff1_046ae8b1","line":47,"range":{"start_line":47,"start_character":21,"end_line":47,"end_character":28},"in_reply_to":"9fdfeff1_c1f9324e","updated":"2019-02-13 09:14:05.000000000","message":"Done","commit_id":"39609be338c948a190840be7c094fddaf56730fb"}],"vitrage/datasources/prometheus/driver.py":[{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"2f49bee5f606b8de583a812f4629daeff9e3b8c5","unresolved":false,"context_lines":[{"line_number":174,"context_line":"            return []"},{"line_number":175,"context_line":""},{"line_number":176,"context_line":"        if not receiver:"},{"line_number":177,"context_line":"            LOG.warning(\u0027Receiver is not defined\u0027)"},{"line_number":178,"context_line":""},{"line_number":179,"context_line":"        payload \u003d {PGAProps.ACTIVE: True,"},{"line_number":180,"context_line":"                   PGAProps.RECEIVER: receiver}"}],"source_content_type":"text/x-python","patch_set":1,"id":"9fdfeff1_61a08643","line":177,"range":{"start_line":177,"start_character":12,"end_line":177,"end_character":50},"updated":"2019-02-13 09:03:14.000000000","message":"Missing return []?","commit_id":"39609be338c948a190840be7c094fddaf56730fb"},{"author":{"_account_id":26339,"name":"Muhamad Najjar","email":"muhamad.najjar@nokia.com","username":"7mode3294"},"change_message_id":"ba48f7e5c33befc8ab9ad543cb3fe63cc9515ec6","unresolved":false,"context_lines":[{"line_number":174,"context_line":"            return []"},{"line_number":175,"context_line":""},{"line_number":176,"context_line":"        if not receiver:"},{"line_number":177,"context_line":"            LOG.warning(\u0027Receiver is not defined\u0027)"},{"line_number":178,"context_line":""},{"line_number":179,"context_line":"        payload \u003d {PGAProps.ACTIVE: True,"},{"line_number":180,"context_line":"                   PGAProps.RECEIVER: receiver}"}],"source_content_type":"text/x-python","patch_set":1,"id":"9fdfeff1_8476d8a3","line":177,"range":{"start_line":177,"start_character":12,"end_line":177,"end_character":50},"in_reply_to":"9fdfeff1_61a08643","updated":"2019-02-13 09:14:05.000000000","message":"I was not sure, but in second thought I think we should\nreturn [] because we don\u0027t want to get all the alerts\nthat are sent from alertmanager even the alerts for different receivers","commit_id":"39609be338c948a190840be7c094fddaf56730fb"},{"author":{"_account_id":19134,"name":"Eyal","email":"eyalb1@gmail.com","username":"eyalb"},"change_message_id":"1855d482c91349c0bc15e22dcd27252bd1eda24c","unresolved":false,"context_lines":[{"line_number":186,"context_line":""},{"line_number":187,"context_line":"        if response.status_code \u003d\u003d requests.codes.ok:"},{"line_number":188,"context_line":"            if \u0027v1\u0027 in alertmanager_url:"},{"line_number":189,"context_line":"                alerts \u003d json.loads(response.text).get(PGAProps.DATA)"},{"line_number":190,"context_line":"            else:"},{"line_number":191,"context_line":"                alerts \u003d json.loads(response.text)"},{"line_number":192,"context_line":"            self._modify_alert_status(alerts)"}],"source_content_type":"text/x-python","patch_set":1,"id":"9fdfeff1_c11db2be","line":189,"range":{"start_line":189,"start_character":16,"end_line":189,"end_character":22},"updated":"2019-02-13 08:52:15.000000000","message":"alerts can be None ?","commit_id":"39609be338c948a190840be7c094fddaf56730fb"},{"author":{"_account_id":26339,"name":"Muhamad Najjar","email":"muhamad.najjar@nokia.com","username":"7mode3294"},"change_message_id":"b38eb03d77246368cb7216627d177652f7f3516d","unresolved":false,"context_lines":[{"line_number":186,"context_line":""},{"line_number":187,"context_line":"        if response.status_code \u003d\u003d requests.codes.ok:"},{"line_number":188,"context_line":"            if \u0027v1\u0027 in alertmanager_url:"},{"line_number":189,"context_line":"                alerts \u003d json.loads(response.text).get(PGAProps.DATA)"},{"line_number":190,"context_line":"            else:"},{"line_number":191,"context_line":"                alerts \u003d json.loads(response.text)"},{"line_number":192,"context_line":"            self._modify_alert_status(alerts)"}],"source_content_type":"text/x-python","patch_set":1,"id":"9fdfeff1_e1a4764d","line":189,"range":{"start_line":189,"start_character":16,"end_line":189,"end_character":22},"in_reply_to":"9fdfeff1_c11db2be","updated":"2019-02-13 09:03:03.000000000","message":"yes","commit_id":"39609be338c948a190840be7c094fddaf56730fb"},{"author":{"_account_id":19134,"name":"Eyal","email":"eyalb1@gmail.com","username":"eyalb"},"change_message_id":"d8d70d523e095c2dce3eeee19e7dc6cddd51a043","unresolved":false,"context_lines":[{"line_number":186,"context_line":""},{"line_number":187,"context_line":"        if response.status_code \u003d\u003d requests.codes.ok:"},{"line_number":188,"context_line":"            if \u0027v1\u0027 in alertmanager_url:"},{"line_number":189,"context_line":"                alerts \u003d json.loads(response.text).get(PGAProps.DATA)"},{"line_number":190,"context_line":"            else:"},{"line_number":191,"context_line":"                alerts \u003d json.loads(response.text)"},{"line_number":192,"context_line":"            self._modify_alert_status(alerts)"}],"source_content_type":"text/x-python","patch_set":1,"id":"9fdfeff1_6f238da8","line":189,"range":{"start_line":189,"start_character":16,"end_line":189,"end_character":22},"in_reply_to":"9fdfeff1_c4462051","updated":"2019-02-13 09:58:33.000000000","message":"when you do get then the default for not exist is None\nand then you will have an exception in _modify_alert_list","commit_id":"39609be338c948a190840be7c094fddaf56730fb"},{"author":{"_account_id":26339,"name":"Muhamad Najjar","email":"muhamad.najjar@nokia.com","username":"7mode3294"},"change_message_id":"ba48f7e5c33befc8ab9ad543cb3fe63cc9515ec6","unresolved":false,"context_lines":[{"line_number":186,"context_line":""},{"line_number":187,"context_line":"        if response.status_code \u003d\u003d requests.codes.ok:"},{"line_number":188,"context_line":"            if \u0027v1\u0027 in alertmanager_url:"},{"line_number":189,"context_line":"                alerts \u003d json.loads(response.text).get(PGAProps.DATA)"},{"line_number":190,"context_line":"            else:"},{"line_number":191,"context_line":"                alerts \u003d json.loads(response.text)"},{"line_number":192,"context_line":"            self._modify_alert_status(alerts)"}],"source_content_type":"text/x-python","patch_set":1,"id":"9fdfeff1_c4186077","line":189,"range":{"start_line":189,"start_character":16,"end_line":189,"end_character":22},"in_reply_to":"9fdfeff1_e1a4764d","updated":"2019-02-13 09:14:05.000000000","message":"not None but empty list","commit_id":"39609be338c948a190840be7c094fddaf56730fb"},{"author":{"_account_id":19134,"name":"Eyal","email":"eyalb1@gmail.com","username":"eyalb"},"change_message_id":"c5a36fa4119420e148b1352f5904b4b4bf22cb5d","unresolved":false,"context_lines":[{"line_number":186,"context_line":""},{"line_number":187,"context_line":"        if response.status_code \u003d\u003d requests.codes.ok:"},{"line_number":188,"context_line":"            if \u0027v1\u0027 in alertmanager_url:"},{"line_number":189,"context_line":"                alerts \u003d json.loads(response.text).get(PGAProps.DATA)"},{"line_number":190,"context_line":"            else:"},{"line_number":191,"context_line":"                alerts \u003d json.loads(response.text)"},{"line_number":192,"context_line":"            self._modify_alert_status(alerts)"}],"source_content_type":"text/x-python","patch_set":1,"id":"9fdfeff1_c4462051","line":189,"range":{"start_line":189,"start_character":16,"end_line":189,"end_character":22},"in_reply_to":"9fdfeff1_e1a4764d","updated":"2019-02-13 09:11:49.000000000","message":"then you will have an exception in _modify_alert_status","commit_id":"39609be338c948a190840be7c094fddaf56730fb"},{"author":{"_account_id":19134,"name":"Eyal","email":"eyalb1@gmail.com","username":"eyalb"},"change_message_id":"1855d482c91349c0bc15e22dcd27252bd1eda24c","unresolved":false,"context_lines":[{"line_number":272,"context_line":"    def _enrich_alerts(self, alerts, event_type):"},{"line_number":273,"context_line":"        alarms \u003d []"},{"line_number":274,"context_line":"        for alert in alerts:"},{"line_number":275,"context_line":"            alert[DSProps.EVENT_TYPE] \u003d event_type"},{"line_number":276,"context_line":"            vitrage_entity_unique_props \u003d \\"},{"line_number":277,"context_line":"                self._calculate_vitrage_entity_unique_props(alert)"},{"line_number":278,"context_line":""},{"line_number":279,"context_line":"            alert[PDProps.ENTITY_UNIQUE_PROPS] \u003d \\"},{"line_number":280,"context_line":"                vitrage_entity_unique_props"},{"line_number":281,"context_line":"            old_alarm \u003d self._old_alarm(alert)"},{"line_number":282,"context_line":"            alert \u003d self._filter_and_cache_alarm("},{"line_number":283,"context_line":"                alert, old_alarm,"},{"line_number":284,"context_line":"                self._filter_get_erroneous,"},{"line_number":285,"context_line":"                get_alarm_update_time(alert))"},{"line_number":286,"context_line":""},{"line_number":287,"context_line":"            if alert:"},{"line_number":288,"context_line":"                alarms.append(alert)"}],"source_content_type":"text/x-python","patch_set":1,"id":"9fdfeff1_618406d4","line":285,"range":{"start_line":275,"start_character":11,"end_line":285,"end_character":45},"updated":"2019-02-13 08:52:15.000000000","message":"extract method here and use comprehension list","commit_id":"39609be338c948a190840be7c094fddaf56730fb"},{"author":{"_account_id":26339,"name":"Muhamad Najjar","email":"muhamad.najjar@nokia.com","username":"7mode3294"},"change_message_id":"b38eb03d77246368cb7216627d177652f7f3516d","unresolved":false,"context_lines":[{"line_number":272,"context_line":"    def _enrich_alerts(self, alerts, event_type):"},{"line_number":273,"context_line":"        alarms \u003d []"},{"line_number":274,"context_line":"        for alert in alerts:"},{"line_number":275,"context_line":"            alert[DSProps.EVENT_TYPE] \u003d event_type"},{"line_number":276,"context_line":"            vitrage_entity_unique_props \u003d \\"},{"line_number":277,"context_line":"                self._calculate_vitrage_entity_unique_props(alert)"},{"line_number":278,"context_line":""},{"line_number":279,"context_line":"            alert[PDProps.ENTITY_UNIQUE_PROPS] \u003d \\"},{"line_number":280,"context_line":"                vitrage_entity_unique_props"},{"line_number":281,"context_line":"            old_alarm \u003d self._old_alarm(alert)"},{"line_number":282,"context_line":"            alert \u003d self._filter_and_cache_alarm("},{"line_number":283,"context_line":"                alert, old_alarm,"},{"line_number":284,"context_line":"                self._filter_get_erroneous,"},{"line_number":285,"context_line":"                get_alarm_update_time(alert))"},{"line_number":286,"context_line":""},{"line_number":287,"context_line":"            if alert:"},{"line_number":288,"context_line":"                alarms.append(alert)"}],"source_content_type":"text/x-python","patch_set":1,"id":"9fdfeff1_81632a1a","line":285,"range":{"start_line":275,"start_character":11,"end_line":285,"end_character":45},"in_reply_to":"9fdfeff1_618406d4","updated":"2019-02-13 09:03:03.000000000","message":"Done","commit_id":"39609be338c948a190840be7c094fddaf56730fb"}]}
