From ca8bf3ed8de7a47615d6e51a4f05899912d3d21f Mon Sep 17 00:00:00 2001 From: Vladimir Date: Fri, 18 Dec 2020 13:27:09 +0700 Subject: [PATCH 01/10] vak-1446 tags -> class ActiveAlarm and tags -> class ArchivedAlarm. --- fm/models/activealarm.py | 2 ++ fm/models/archivedalarm.py | 2 ++ 2 files changed, 4 insertions(+) diff --git a/fm/models/activealarm.py b/fm/models/activealarm.py index 6115bdf603..b1970196d3 100644 --- a/fm/models/activealarm.py +++ b/fm/models/activealarm.py @@ -133,6 +133,8 @@ class ActiveAlarm(Document): dlm_windows = ListField(IntField()) # RCA_* enums rca_type = IntField(default=RCA_NONE) + # tags + tags = DictField(required=True) def __str__(self): return "%s" % self.id diff --git a/fm/models/archivedalarm.py b/fm/models/archivedalarm.py index 5d6716a3f8..e12e55b415 100644 --- a/fm/models/archivedalarm.py +++ b/fm/models/archivedalarm.py @@ -104,6 +104,8 @@ class ArchivedAlarm(Document): rca_neighbors = ListField(IntField()) # RCA_* enums rca_type = IntField(default=RCA_NONE) + # tags + tags = DictField(required=True) def __str__(self): return "%s" % self.id -- GitLab From b359b8bc337ee0b684e52c8841ea26f00f8c7a15 Mon Sep 17 00:00:00 2001 From: Vladimir Komarov Date: Fri, 18 Dec 2020 14:34:52 +0700 Subject: [PATCH 02/10] vak-1446 solution of issue before testing. --- fm/models/activealarm.py | 5 ++++- fm/models/archivedalarm.py | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/fm/models/activealarm.py b/fm/models/activealarm.py index b1970196d3..68b597b3ae 100644 --- a/fm/models/activealarm.py +++ b/fm/models/activealarm.py @@ -134,7 +134,7 @@ class ActiveAlarm(Document): # RCA_* enums rca_type = IntField(default=RCA_NONE) # tags - tags = DictField(required=True) + tags = DictField(required=False) def __str__(self): return "%s" % self.id @@ -154,6 +154,8 @@ class ActiveAlarm(Document): self.uplinks = data.uplinks self.rca_neighbors = data.rca_neighbors self.dlm_windows = data.dlm_windows + if not self.id: + self.tags = {"tags": list(set(self.managed_object.tags + self.managed_object.object_profile.tags))} def safe_save(self, **kwargs): """ @@ -281,6 +283,7 @@ class ActiveAlarm(Document): uplinks=self.uplinks, rca_neighbors=self.rca_neighbors, rca_type=self.rca_type, + tags=self.tags, ) ct = self.alarm_class.get_control_time(self.reopens) if ct: diff --git a/fm/models/archivedalarm.py b/fm/models/archivedalarm.py index e12e55b415..6798fba74c 100644 --- a/fm/models/archivedalarm.py +++ b/fm/models/archivedalarm.py @@ -105,7 +105,7 @@ class ArchivedAlarm(Document): # RCA_* enums rca_type = IntField(default=RCA_NONE) # tags - tags = DictField(required=True) + tags = DictField(required=False) def __str__(self): return "%s" % self.id -- GitLab From 57d97c69cc43c5a27ecc39e14f8c3c35deb23711 Mon Sep 17 00:00:00 2001 From: Vladimir Komarov Date: Fri, 18 Dec 2020 14:42:05 +0700 Subject: [PATCH 03/10] vak-1446 fixed black's mistake. --- fm/models/activealarm.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/fm/models/activealarm.py b/fm/models/activealarm.py index 68b597b3ae..6fda7f9f49 100644 --- a/fm/models/activealarm.py +++ b/fm/models/activealarm.py @@ -155,7 +155,12 @@ class ActiveAlarm(Document): self.rca_neighbors = data.rca_neighbors self.dlm_windows = data.dlm_windows if not self.id: - self.tags = {"tags": list(set(self.managed_object.tags + self.managed_object.object_profile.tags))} + self.tags = { + "tags": list( + set(self.managed_object.tags + self.managed_object.object_profile.tags) + ) + } + def safe_save(self, **kwargs): """ -- GitLab From 25d6f7df53def71f8c312d410c5932721b5b9687 Mon Sep 17 00:00:00 2001 From: Vladimir Komarov Date: Fri, 18 Dec 2020 14:45:15 +0700 Subject: [PATCH 04/10] vak-1446 fixed flake8's mistake. --- fm/models/activealarm.py | 1 - 1 file changed, 1 deletion(-) diff --git a/fm/models/activealarm.py b/fm/models/activealarm.py index 6fda7f9f49..aa2230875b 100644 --- a/fm/models/activealarm.py +++ b/fm/models/activealarm.py @@ -161,7 +161,6 @@ class ActiveAlarm(Document): ) } - def safe_save(self, **kwargs): """ Create new alarm or update existing if still exists -- GitLab From 7326bd7e0b6f7ab0a418e0938ca54f9327e6c5da Mon Sep 17 00:00:00 2001 From: Vladimir Komarov Date: Fri, 18 Dec 2020 15:35:38 +0700 Subject: [PATCH 05/10] vak-1446 changed type of tags fields. --- fm/models/activealarm.py | 8 ++------ fm/models/archivedalarm.py | 2 +- 2 files changed, 3 insertions(+), 7 deletions(-) diff --git a/fm/models/activealarm.py b/fm/models/activealarm.py index aa2230875b..73e86e5ad5 100644 --- a/fm/models/activealarm.py +++ b/fm/models/activealarm.py @@ -134,7 +134,7 @@ class ActiveAlarm(Document): # RCA_* enums rca_type = IntField(default=RCA_NONE) # tags - tags = DictField(required=False) + tags = ListField(StringField()) def __str__(self): return "%s" % self.id @@ -155,11 +155,7 @@ class ActiveAlarm(Document): self.rca_neighbors = data.rca_neighbors self.dlm_windows = data.dlm_windows if not self.id: - self.tags = { - "tags": list( - set(self.managed_object.tags + self.managed_object.object_profile.tags) - ) - } + self.tags = list(set(self.managed_object.tags + self.managed_object.object_profile.tags)) def safe_save(self, **kwargs): """ diff --git a/fm/models/archivedalarm.py b/fm/models/archivedalarm.py index 6798fba74c..85cf3188d0 100644 --- a/fm/models/archivedalarm.py +++ b/fm/models/archivedalarm.py @@ -105,7 +105,7 @@ class ArchivedAlarm(Document): # RCA_* enums rca_type = IntField(default=RCA_NONE) # tags - tags = DictField(required=False) + tags = ListField(StringField()) def __str__(self): return "%s" % self.id -- GitLab From e530bbdcef291b6dc82d75d02d4f501f3facd037 Mon Sep 17 00:00:00 2001 From: Vladimir Komarov Date: Fri, 18 Dec 2020 15:43:19 +0700 Subject: [PATCH 06/10] vak-1446 fixed balck's mistake. --- fm/models/activealarm.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/fm/models/activealarm.py b/fm/models/activealarm.py index 73e86e5ad5..5133114f76 100644 --- a/fm/models/activealarm.py +++ b/fm/models/activealarm.py @@ -155,7 +155,9 @@ class ActiveAlarm(Document): self.rca_neighbors = data.rca_neighbors self.dlm_windows = data.dlm_windows if not self.id: - self.tags = list(set(self.managed_object.tags + self.managed_object.object_profile.tags)) + self.tags = list( + set(self.managed_object.tags + self.managed_object.object_profile.tags) + ) def safe_save(self, **kwargs): """ -- GitLab From fda093f7553200fcc2fba23d3ad7aa47e0ed59f6 Mon Sep 17 00:00:00 2001 From: Vladimir Komarov Date: Fri, 18 Dec 2020 18:24:38 +0700 Subject: [PATCH 07/10] vak-1446 added checking about value None. --- fm/models/activealarm.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/fm/models/activealarm.py b/fm/models/activealarm.py index 5133114f76..a04d8e864d 100644 --- a/fm/models/activealarm.py +++ b/fm/models/activealarm.py @@ -155,9 +155,9 @@ class ActiveAlarm(Document): self.rca_neighbors = data.rca_neighbors self.dlm_windows = data.dlm_windows if not self.id: - self.tags = list( - set(self.managed_object.tags + self.managed_object.object_profile.tags) - ) + tags = set(self.managed_object.tags or []) + tags |= set(self.managed_object.object_profile.tags or []) + self.tags = list(tags) def safe_save(self, **kwargs): """ -- GitLab From 667802ad4a0dfd7a9af5014db393a2190ad59a37 Mon Sep 17 00:00:00 2001 From: Vladimir Komarov Date: Mon, 21 Dec 2020 19:11:23 +0700 Subject: [PATCH 08/10] vak-1446 alarm.tags -> datastream --- services/datastream/streams/alarm.py | 1 + 1 file changed, 1 insertion(+) diff --git a/services/datastream/streams/alarm.py b/services/datastream/streams/alarm.py index 9cc11893b5..9aa8f5a513 100644 --- a/services/datastream/streams/alarm.py +++ b/services/datastream/streams/alarm.py @@ -35,6 +35,7 @@ class AlarmDataStream(DataStream): "timestamp": cls.qs(alarm.timestamp), "severity": alarm.severity, "reopens": alarm.reopens, + "tags": alarm.tags, } if alarm.root: r["root"] = str(alarm.root) -- GitLab From 419157fd8deaa44e722ac869cde3d99c40a7b8d6 Mon Sep 17 00:00:00 2001 From: Vladimir Komarov Date: Mon, 21 Dec 2020 19:44:44 +0700 Subject: [PATCH 09/10] vak-1446 alarm.tags -> docs --- docs/en/docs/dev/reference/api/datastream/alarm.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/en/docs/dev/reference/api/datastream/alarm.md b/docs/en/docs/dev/reference/api/datastream/alarm.md index a880cc1f3e..97410f8a93 100644 --- a/docs/en/docs/dev/reference/api/datastream/alarm.md +++ b/docs/en/docs/dev/reference/api/datastream/alarm.md @@ -25,6 +25,7 @@ | {{ tab }} name | String | Alarm Class' Name | | vars | Object {{ complex }} | Key-value dictionary of alarm's variables | | reopens | Integer | Number of alarm's reopens | +| tags | Object {{ complex }} | Alarm tags | | escalation | Object {{ complex }} | Escalation data (if escalated) | | {{ tab }} timestamp | String | Escalation timestamp in ISO 8601 format | | {{ tab }} tt_system | Object {{ complex }} | TT System to escalate | -- GitLab From 727f1c0a1c6c9a7d9eee9bda043790159f335c70 Mon Sep 17 00:00:00 2001 From: Vladimir Komarov Date: Mon, 21 Dec 2020 20:50:47 +0700 Subject: [PATCH 10/10] vak-1446 alarm.tags -> docs.en.docs.user.mx.alarm.md --- docs/en/docs/user/reference/mx/alarm.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/en/docs/user/reference/mx/alarm.md b/docs/en/docs/user/reference/mx/alarm.md index a5fbd6b1bb..7d0236ecfd 100644 --- a/docs/en/docs/user/reference/mx/alarm.md +++ b/docs/en/docs/user/reference/mx/alarm.md @@ -45,6 +45,7 @@ Message contains JSON with following fields: | {{ tab }} name | String | Alarm Class' Name | | vars | Object {{ complex }} | Key-value dictionary of alarm's variables | | reopens | Integer | Number of alarm's reopens | +| tags | Object {{ complex }} | Alarm tags | | escalation | Object {{ complex }} | Escalation data (if escalated) | | {{ tab }} timestamp | String | Escalation timestamp in ISO 8601 format | | {{ tab }} tt_system | Object {{ complex }} | TT System to escalate | -- GitLab