@@ -54,11 +54,11 @@ def cli(obj, alert, severity, timeout, purge):
5454
5555 if alert :
5656 with click .progressbar (heartbeats , label = f'Checking { len (heartbeats )} heartbeats' ) as bar :
57- alerts = client .get_alerts (query = [('environment ' , 'Heartbeats ' )], page_size = len ( heartbeats ) )
57+ alerts = client .get_alerts (query = [('event ' , '~Heartbeat ' )], page_size = 'ALL' )
5858 new_alerts = []
5959
6060 for b in bar :
61- want_environment = b . attributes . pop ( 'environment' , ' Heartbeats')
61+ want_environment = ' Heartbeats'
6262 want_severity = b .attributes .pop ('severity' , severity )
6363 want_service = b .attributes .pop ('service' , ['Alerta' ])
6464 want_group = b .attributes .pop ('group' , 'System' )
@@ -111,7 +111,7 @@ def cli(obj, alert, severity, timeout, purge):
111111 }
112112 )
113113
114- number_of_co = 100
114+ number_of_co = 50
115115 number_of_alerts = len (new_alerts )
116116 number_of_sends = number_of_alerts // number_of_co
117117 alert_groups = [new_alerts [i * number_of_co :(i + 1 ) * number_of_co ] for i in range (number_of_sends )]
@@ -121,3 +121,14 @@ def cli(obj, alert, severity, timeout, purge):
121121 with click .progressbar (alert_groups , label = f'Alerting { len (new_alerts )} heartbeats' ) as bar :
122122 for b in bar :
123123 client .send_alerts (b )
124+
125+
126+ alerts = [alert .id for alert in alerts ]
127+ number_of_deletes = len (alerts )
128+ number_of_delete_sends = number_of_deletes // number_of_co
129+ delete_groups = [alerts [i * number_of_co :(i + 1 ) * number_of_co ] for i in range (number_of_delete_sends )]
130+ if number_of_deletes % number_of_co :
131+ delete_groups .append (alerts [number_of_co * number_of_delete_sends :number_of_co * number_of_delete_sends + number_of_deletes % number_of_co ])
132+ with click .progressbar (delete_groups , label = f'Removing { len (alerts )} old alerts' ) as bar :
133+ for delete_group in bar :
134+ client .delete_alerts (delete_group )
0 commit comments