)]}'
{"vitrage/datasources/alarm_transformer_base.py":[{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"2c245f24fd9073c768797aadd7abe65c9e96872c","unresolved":false,"context_lines":[{"line_number":59,"context_line":"    def create_neighbor_placeholder_vertex(self, **kwargs):"},{"line_number":60,"context_line":"        if VProps.TYPE not in kwargs:"},{"line_number":61,"context_line":"            LOG.error(\"Can\u0027t create placeholder vertex. Missing property TYPE\")"},{"line_number":62,"context_line":"            raise ValueError(\u0027Missing property TYPE\u0027)"},{"line_number":63,"context_line":""},{"line_number":64,"context_line":"        if VProps.ID not in kwargs:"},{"line_number":65,"context_line":"            LOG.error(\"Can\u0027t create placeholder vertex. Missing property ID\")"}],"source_content_type":"text/x-python","patch_set":8,"id":"ba5201f7_e9792f94","line":62,"range":{"start_line":62,"start_character":12,"end_line":62,"end_character":53},"updated":"2017-01-08 10:00:01.000000000","message":"Do we want to fail the entire alarm creation? is someone catching this exception?","commit_id":"5310a6573754d42c967969e3f871789f5c267fbd"},{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"2c245f24fd9073c768797aadd7abe65c9e96872c","unresolved":false,"context_lines":[{"line_number":65,"context_line":"            LOG.error(\"Can\u0027t create placeholder vertex. Missing property ID\")"},{"line_number":66,"context_line":"            raise ValueError(\u0027Missing property ID\u0027)"},{"line_number":67,"context_line":""},{"line_number":68,"context_line":"        key_fields \u003d self._key_values(kwargs[VProps.TYPE], kwargs[VProps.ID])"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"        return graph_utils.create_vertex("},{"line_number":71,"context_line":"            tbase.build_key(key_fields),"}],"source_content_type":"text/x-python","patch_set":8,"id":"ba5201f7_c9846b5f","line":68,"range":{"start_line":68,"start_character":8,"end_line":68,"end_character":77},"updated":"2017-01-08 10:00:01.000000000","message":"Is it the same as calling _create_entity_key(entity_event)? This was how the key was generated in Cinder datasource","commit_id":"5310a6573754d42c967969e3f871789f5c267fbd"}],"vitrage/datasources/doctor/transformer.py":[{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"607df27a8ec7feef286f97280e8cd4c24b42b272","unresolved":false,"context_lines":[{"line_number":56,"context_line":"            update_timestamp\u003dentity_event[DoctorProps.UPDATE_TIME],"},{"line_number":57,"context_line":"            metadata\u003ddetails)"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"    def _create_update_neighbors(self, entity_event):"},{"line_number":60,"context_line":"        return [self._create_neighbor("},{"line_number":61,"context_line":"            entity_event,"},{"line_number":62,"context_line":"            get_detail(entity_event, DoctorDetails.HOSTNAME),"}],"source_content_type":"text/x-python","patch_set":9,"id":"ba5201f7_ea3f4b85","line":59,"range":{"start_line":59,"start_character":8,"end_line":59,"end_character":32},"updated":"2017-01-09 11:50:26.000000000","message":"What about DoctorProps.TIME?","commit_id":"6259f419e5fed60fefaf675069ce3ce707cf086f"},{"author":{"_account_id":19122,"name":"Alexey Weyl","email":"aloshaweyl@gmail.com","username":"alexey_weyl"},"change_message_id":"d9b86ed0acb3429bbc287b797e271180259fe283","unresolved":false,"context_lines":[{"line_number":56,"context_line":"            update_timestamp\u003dentity_event[DoctorProps.UPDATE_TIME],"},{"line_number":57,"context_line":"            metadata\u003ddetails)"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"    def _create_update_neighbors(self, entity_event):"},{"line_number":60,"context_line":"        return [self._create_neighbor("},{"line_number":61,"context_line":"            entity_event,"},{"line_number":62,"context_line":"            get_detail(entity_event, DoctorDetails.HOSTNAME),"}],"source_content_type":"text/x-python","patch_set":9,"id":"ba5201f7_e5a93c92","line":59,"range":{"start_line":59,"start_character":8,"end_line":59,"end_character":32},"in_reply_to":"ba5201f7_ea3f4b85","updated":"2017-01-09 12:13:43.000000000","message":"SampleTimestamp is a general time thus no need to retrieve it from specific properties","commit_id":"6259f419e5fed60fefaf675069ce3ce707cf086f"}],"vitrage/datasources/nagios/transformer.py":[{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"607df27a8ec7feef286f97280e8cd4c24b42b272","unresolved":false,"context_lines":[{"line_number":73,"context_line":"    def _create_update_neighbors(self, entity_event):"},{"line_number":74,"context_line":"        return self._create_nagios_neighbors(entity_event)"},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"    def _create_nagios_neighbors(self, entity_event):"},{"line_number":77,"context_line":"        resource_type \u003d entity_event[NagiosProperties.RESOURCE_TYPE]"},{"line_number":78,"context_line":"        if resource_type:"},{"line_number":79,"context_line":"            return [self._create_neighbor("}],"source_content_type":"text/x-python","patch_set":9,"id":"ba5201f7_0a800f46","line":76,"range":{"start_line":76,"start_character":8,"end_line":76,"end_character":32},"updated":"2017-01-09 11:50:26.000000000","message":"What about the timestamp? Why not use LAST_CHECK?","commit_id":"6259f419e5fed60fefaf675069ce3ce707cf086f"},{"author":{"_account_id":19122,"name":"Alexey Weyl","email":"aloshaweyl@gmail.com","username":"alexey_weyl"},"change_message_id":"d9b86ed0acb3429bbc287b797e271180259fe283","unresolved":false,"context_lines":[{"line_number":73,"context_line":"    def _create_update_neighbors(self, entity_event):"},{"line_number":74,"context_line":"        return self._create_nagios_neighbors(entity_event)"},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"    def _create_nagios_neighbors(self, entity_event):"},{"line_number":77,"context_line":"        resource_type \u003d entity_event[NagiosProperties.RESOURCE_TYPE]"},{"line_number":78,"context_line":"        if resource_type:"},{"line_number":79,"context_line":"            return [self._create_neighbor("}],"source_content_type":"text/x-python","patch_set":9,"id":"ba5201f7_45912852","line":76,"range":{"start_line":76,"start_character":8,"end_line":76,"end_character":32},"in_reply_to":"ba5201f7_0a800f46","updated":"2017-01-09 12:13:43.000000000","message":"SampleTimestamp is a general time thus no need to retrieve it from specific properties","commit_id":"6259f419e5fed60fefaf675069ce3ce707cf086f"}],"vitrage/datasources/transformer_base.py":[{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"2c245f24fd9073c768797aadd7abe65c9e96872c","unresolved":false,"context_lines":[{"line_number":44,"context_line":""},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"AVAILABLE \u003d \u0027available\u0027"},{"line_number":47,"context_line":"CLUSTER_ID \u003d \u0027cluster1\u0027"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"def extract_field_value(entity_event, *args):"}],"source_content_type":"text/x-python","patch_set":8,"id":"ba5201f7_e963efae","line":47,"range":{"start_line":47,"start_character":14,"end_line":47,"end_character":22},"updated":"2017-01-08 10:00:01.000000000","message":"Is this the name we want? Maybe something that looks better in the UI? (like \"OpenStack Cluster\")","commit_id":"5310a6573754d42c967969e3f871789f5c267fbd"},{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"607df27a8ec7feef286f97280e8cd4c24b42b272","unresolved":false,"context_lines":[{"line_number":44,"context_line":""},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"AVAILABLE \u003d \u0027available\u0027"},{"line_number":47,"context_line":"CLUSTER_ID \u003d \u0027cluster1\u0027"},{"line_number":48,"context_line":""},{"line_number":49,"context_line":""},{"line_number":50,"context_line":"def extract_field_value(entity_event, *args):"}],"source_content_type":"text/x-python","patch_set":9,"id":"ba5201f7_6a9efb64","line":47,"range":{"start_line":47,"start_character":14,"end_line":47,"end_character":22},"updated":"2017-01-09 11:50:26.000000000","message":"Can you use a nicer name?","commit_id":"6259f419e5fed60fefaf675069ce3ce707cf086f"}],"vitrage/datasources/zabbix/transformer.py":[{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"2c245f24fd9073c768797aadd7abe65c9e96872c","unresolved":false,"context_lines":[{"line_number":104,"context_line":""},{"line_number":105,"context_line":"        return []"},{"line_number":106,"context_line":""},{"line_number":107,"context_line":"    def _create_neighbor(self,"},{"line_number":108,"context_line":"                         vitrage_id,"},{"line_number":109,"context_line":"                         sample_timestamp,"},{"line_number":110,"context_line":"                         resource_type,"}],"source_content_type":"text/x-python","patch_set":8,"id":"ba5201f7_c92e2b42","line":107,"range":{"start_line":107,"start_character":8,"end_line":107,"end_character":24},"updated":"2017-01-08 10:00:01.000000000","message":"Is it possible to move the entire function to the base class? (similar to the resources case)","commit_id":"5310a6573754d42c967969e3f871789f5c267fbd"},{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"2c245f24fd9073c768797aadd7abe65c9e96872c","unresolved":false,"context_lines":[{"line_number":117,"context_line":"            VProps.SAMPLE_TIMESTAMP: sample_timestamp"},{"line_number":118,"context_line":"        }"},{"line_number":119,"context_line":"        resource_vertex \u003d \\"},{"line_number":120,"context_line":"            transformer.create_neighbor_placeholder_vertex(**properties)"},{"line_number":121,"context_line":""},{"line_number":122,"context_line":"        relationship_edge \u003d graph_utils.create_edge("},{"line_number":123,"context_line":"            source_id\u003dvitrage_id,"}],"source_content_type":"text/x-python","patch_set":8,"id":"ba5201f7_49fcfbb7","line":120,"range":{"start_line":120,"start_character":0,"end_line":120,"end_character":72},"updated":"2017-01-08 10:00:01.000000000","message":"Why call this method for nova transformer? isn\u0027t it good enough to call AlarmTransformerBase.create_neighbor_placeholder_vertex()?","commit_id":"5310a6573754d42c967969e3f871789f5c267fbd"},{"author":{"_account_id":19159,"name":"Ifat Afek","email":"ifat.afek@nokia.com","username":"ifat_afek"},"change_message_id":"607df27a8ec7feef286f97280e8cd4c24b42b272","unresolved":false,"context_lines":[{"line_number":86,"context_line":"    def _create_update_neighbors(self, entity_event):"},{"line_number":87,"context_line":"        return self._create_zabbix_neighbors(entity_event)"},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"    def _create_zabbix_neighbors(self, entity_event):"},{"line_number":90,"context_line":"        self._unify_time_format(entity_event)"},{"line_number":91,"context_line":""},{"line_number":92,"context_line":"        resource_type \u003d entity_event[ZProps.RESOURCE_TYPE]"}],"source_content_type":"text/x-python","patch_set":9,"id":"ba5201f7_4ad93783","line":89,"range":{"start_line":89,"start_character":8,"end_line":89,"end_character":32},"updated":"2017-01-09 11:50:26.000000000","message":"What about ZProps.TIMESTAMP?","commit_id":"6259f419e5fed60fefaf675069ce3ce707cf086f"},{"author":{"_account_id":19122,"name":"Alexey Weyl","email":"aloshaweyl@gmail.com","username":"alexey_weyl"},"change_message_id":"d9b86ed0acb3429bbc287b797e271180259fe283","unresolved":false,"context_lines":[{"line_number":86,"context_line":"    def _create_update_neighbors(self, entity_event):"},{"line_number":87,"context_line":"        return self._create_zabbix_neighbors(entity_event)"},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"    def _create_zabbix_neighbors(self, entity_event):"},{"line_number":90,"context_line":"        self._unify_time_format(entity_event)"},{"line_number":91,"context_line":""},{"line_number":92,"context_line":"        resource_type \u003d entity_event[ZProps.RESOURCE_TYPE]"}],"source_content_type":"text/x-python","patch_set":9,"id":"ba5201f7_e5805cfa","line":89,"range":{"start_line":89,"start_character":8,"end_line":89,"end_character":32},"in_reply_to":"ba5201f7_4ad93783","updated":"2017-01-09 12:13:43.000000000","message":"SampleTimestamp is a general time thus no need to retrieve it from specific properties","commit_id":"6259f419e5fed60fefaf675069ce3ce707cf086f"}]}
