@@ -55,9 +55,6 @@ public class DetectorIndexManagementService extends AbstractLifecycleComponent i
5555
5656 private Logger logger = LogManager .getLogger (DetectorIndexManagementService .class );
5757
58- private static final String ALERT_HISTORY_ALL = ".opensearch-sap-alerts-history-*" ;
59- private static final String FINDING_HISTORY_ALL = ".opensearch-sap-findings-*" ;
60-
6158 private final Client client ;
6259 private final ThreadPool threadPool ;
6360 private final ClusterService clusterService ;
@@ -235,7 +232,7 @@ private String executorName() {
235232 return ThreadPool .Names .MANAGEMENT ;
236233 }
237234
238- private void deleteOldIndices (String tag , String indices ) {
235+ private void deleteOldIndices (String tag , String ... indices ) {
239236 logger .error ("info deleteOldIndices" );
240237 ClusterStateRequest clusterStateRequest = new ClusterStateRequest ()
241238 .clear ()
@@ -250,7 +247,7 @@ private void deleteOldIndices(String tag, String indices) {
250247 public void onResponse (ClusterStateResponse clusterStateResponse ) {
251248 if (!clusterStateResponse .getState ().metadata ().getIndices ().isEmpty ()) {
252249 List <String > indicesToDelete = getIndicesToDelete (clusterStateResponse );
253- logger .info ("Deleting old " + tag + " indices viz $ indicesToDelete" );
250+ logger .info ("Checking if we should delete " + tag + " indices: [" + indicesToDelete + "] " );
254251 deleteAllOldHistoryIndices (indicesToDelete );
255252 } else {
256253 logger .info ("No Old " + tag + " Indices to delete" );
@@ -269,12 +266,14 @@ private List<String> getIndicesToDelete(ClusterStateResponse clusterStateRespons
269266 List <String > indicesToDelete = new ArrayList <>();
270267 for (ObjectCursor <IndexMetadata > in : clusterStateResponse .getState ().metadata ().indices ().values ()) {
271268 IndexMetadata indexMetaData = in .value ;
272- indicesToDelete .add (
273- getHistoryIndexToDelete (indexMetaData , alertHistoryRetentionPeriod .millis (), alertHistoryIndices , alertHistoryEnabled )
274- );
275- indicesToDelete .add (
276- getHistoryIndexToDelete (indexMetaData , findingHistoryRetentionPeriod .millis (), findingHistoryIndices , findingHistoryEnabled )
277- );
269+ String indexToDelete = getHistoryIndexToDelete (indexMetaData , alertHistoryRetentionPeriod .millis (), alertHistoryIndices , alertHistoryEnabled );
270+ if (indexToDelete != null ) {
271+ indicesToDelete .add (indexToDelete );
272+ }
273+ indexToDelete = getHistoryIndexToDelete (indexMetaData , findingHistoryRetentionPeriod .millis (), findingHistoryIndices , findingHistoryEnabled );
274+ if (indexToDelete != null ) {
275+ indicesToDelete .add (indexToDelete );
276+ }
278277 }
279278 return indicesToDelete ;
280279 }
@@ -319,15 +318,17 @@ private void deleteAllOldHistoryIndices(List<String> indicesToDelete) {
319318 public void onResponse (AcknowledgedResponse deleteIndicesResponse ) {
320319 if (!deleteIndicesResponse .isAcknowledged ()) {
321320 logger .error (
322- "Could not delete one or more Alerting/Finding history indices: $ indicesToDelete. Retrying one by one."
321+ "Could not delete one or more Alerting/Finding history indices: [" + indicesToDelete + "] . Retrying one by one."
323322 );
324323 deleteOldHistoryIndex (indicesToDelete );
324+ } else {
325+ logger .info ("Succsessfuly deleted indices: [" + indicesToDelete + "]" );
325326 }
326327 }
327328
328329 @ Override
329330 public void onFailure (Exception e ) {
330- logger .error ("Delete for Alerting/Finding History Indices $ indicesToDelete Failed . Retrying one By one." );
331+ logger .error ("Delete for Alerting/Finding History Indices failed: [" + indicesToDelete + "] . Retrying one By one." );
331332 deleteOldHistoryIndex (indicesToDelete );
332333 }
333334 }
@@ -351,7 +352,7 @@ public void onResponse(AcknowledgedResponse acknowledgedResponse) {
351352
352353 @ Override
353354 public void onFailure (Exception e ) {
354- logger .debug ("Exception ${e.message} while deleting the index " + index );
355+ logger .debug ("Exception: [" + e . getMessage () + "] while deleting the index " + index );
355356 }
356357 }
357358 );
@@ -360,12 +361,12 @@ public void onFailure(Exception e) {
360361
361362 private void rolloverAndDeleteAlertHistoryIndices () {
362363 if (alertHistoryEnabled ) rolloverAlertHistoryIndices ();
363- deleteOldIndices ("History " , ALERT_HISTORY_ALL );
364+ deleteOldIndices ("Alert " , DetectorMonitorConfig . getAllAlertsIndicesPatternForAllTypes (). toArray ( new String [ 0 ]) );
364365 }
365366
366367 private void rolloverAndDeleteFindingHistoryIndices () {
367368 if (findingHistoryEnabled ) rolloverFindingHistoryIndices ();
368- deleteOldIndices ("Finding" , FINDING_HISTORY_ALL );
369+ deleteOldIndices ("Finding" , DetectorMonitorConfig . getAllFindingsIndicesPatternForAllTypes (). toArray ( new String [ 0 ]) );
369370 }
370371
371372 private void rolloverIndex (
@@ -393,13 +394,13 @@ private void rolloverIndex(
393394 @ Override
394395 public void onResponse (RolloverResponse rolloverResponse ) {
395396 if (!rolloverResponse .isRolledOver ()) {
396- logger .info (index + "not rolled over. Conditions were: ${response.conditionStatus}" );
397+ logger .info (index + "not rolled over. Conditions were: " + rolloverResponse . getConditionStatus () );
397398 }
398399 }
399400
400401 @ Override
401402 public void onFailure (Exception e ) {
402- logger .error (index + " not roll over failed ." );
403+ logger .error ("rollover failed for index [" + index + "] ." );
403404 }
404405 }
405406 );
@@ -417,9 +418,9 @@ private void rolloverAlertHistoryIndices() {
417418 private void rolloverFindingHistoryIndices () {
418419 for (HistoryIndexInfo h : findingHistoryIndices ) {
419420 rolloverIndex (
420- h .isInitialized , h .indexAlias ,
421- h .indexPattern , h .indexMappings ,
422- h .maxDocs , h .maxAge
421+ h .isInitialized , h .indexAlias ,
422+ h .indexPattern , h .indexMappings ,
423+ h .maxDocs , h .maxAge
423424 );
424425 }
425426 }
0 commit comments