panic icon indicating copy to clipboard operation
panic copied to clipboard

Remove internal alerts mechanism from Alerter service

Open dillu24 opened this issue 3 years ago • 0 comments

Technical Story

When receiving an alert from the Alerter the AlertStore performs the following:

  • It stores the alert in Mongo
  • Stores the state of the alerted metric inside Redis. This is then used by the API/UI to display the problems in the Overview Dashboard.

Following the SRP (single responsibility principle) the AlertStore should perform one job only, that being of storing the alert in Mongo. Therefore, we need to create another component which continuously checks the values of each metric and compares them to the alertable thresholds/conditions.

In order to do this change we need to perform the following tasks:

  • Remove metric state storing logic from the AlertStore
  • Remove internal alerts mechanism as it would no longer be needed
  • Develop the MetricsStateStore by integrating each monitorable in a granular way using the Strategy pattern

Description

The aim of this ticket is to remove the internal alerts mechanism from the Alerterservice

Requirements

To achieve the aims of this ticket you need to perform the following:

  • [ ] Remove the internal alerts logic from the AlertStore
  • [ ] Remove any variables/constants/helper functions that are no longer being used.
  • [ ] Remove internal alerts
  • [ ] Remove internal alerts metric codes and grouped codes
  • [ ] Remove internal alert sending logic from every manager
  • [ ] Modify the AlertStore unit tests accordingly
  • [ ] Modify the manager components' unit tests to remove the internal alerts tests
  • [ ] Remove any mentioning of internal alerts from the documentation

Acceptance criteria

When: A component is restarted Then: No internal alert is ever raised

dillu24 avatar Jun 08 '22 07:06 dillu24