From ce74c3ed5b3074b2afed13484be1d7d994cbcdf6 Mon Sep 17 00:00:00 2001 From: Joanne Wang Date: Fri, 15 Mar 2024 12:04:13 -0700 Subject: [PATCH] [Backport 2.11] Backport #1427 and #1464 to 2.11 (#1479) * Feature findings enhancemnt (#1427) (#1457) * added support for param in Finding API * added detectionType as param for Findings API enhancements * added searchString param in FIndingsAPI * adding addiional params findingIds, startTime and endTime --------- (cherry picked from commit 2420c2ccfd2c4fa6405527d062f916269bbf4e57) Signed-off-by: Riya Saxena Signed-off-by: github-actions[bot] Co-authored-by: github-actions[bot] * Findings API Enhancements changes and integ tests fix (#1464) (#1474) * solution to fix integ tests Signed-off-by: Riya Saxena * fix flaky DocumentMonitor Runner tests Signed-off-by: Riya Saxena * fix findings API enhancemnts Signed-off-by: Riya Saxena --------- Signed-off-by: Riya Saxena (cherry picked from commit ba84d04d56fcbd8eb1ae0c9c35cb9fb6b432afbc) * fix integ tests Signed-off-by: Joanne Wang --------- Signed-off-by: Riya Saxena Signed-off-by: github-actions[bot] Signed-off-by: Joanne Wang Co-authored-by: opensearch-trigger-bot[bot] <98922864+opensearch-trigger-bot[bot]@users.noreply.github.com> Co-authored-by: github-actions[bot] Co-authored-by: Riya <69919272+riysaxen-amzn@users.noreply.github.com> --- .../alerting/transport/TransportGetFindingsAction.kt | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/alerting/src/main/kotlin/org/opensearch/alerting/transport/TransportGetFindingsAction.kt b/alerting/src/main/kotlin/org/opensearch/alerting/transport/TransportGetFindingsAction.kt index 4f6117540..584ef050f 100644 --- a/alerting/src/main/kotlin/org/opensearch/alerting/transport/TransportGetFindingsAction.kt +++ b/alerting/src/main/kotlin/org/opensearch/alerting/transport/TransportGetFindingsAction.kt @@ -40,6 +40,7 @@ import org.opensearch.commons.alerting.model.FindingWithDocs import org.opensearch.commons.utils.recreateObject import org.opensearch.core.action.ActionListener import org.opensearch.core.common.Strings +import org.opensearch.core.common.io.stream.NamedWriteableRegistry import org.opensearch.core.xcontent.NamedXContentRegistry import org.opensearch.core.xcontent.XContentParser import org.opensearch.core.xcontent.XContentParserUtils @@ -62,7 +63,8 @@ class TransportGetFindingsSearchAction @Inject constructor( clusterService: ClusterService, actionFilters: ActionFilters, val settings: Settings, - val xContentRegistry: NamedXContentRegistry + val xContentRegistry: NamedXContentRegistry, + val namedWriteableRegistry: NamedWriteableRegistry ) : HandledTransportAction ( AlertingActions.GET_FINDINGS_ACTION_NAME, transportService, @@ -83,7 +85,7 @@ class TransportGetFindingsSearchAction @Inject constructor( actionListener: ActionListener ) { val getFindingsRequest = request as? GetFindingsRequest - ?: recreateObject(request) { GetFindingsRequest(it) } + ?: recreateObject(request, namedWriteableRegistry) { GetFindingsRequest(it) } val tableProp = getFindingsRequest.table val sortBuilder = SortBuilders @@ -101,12 +103,11 @@ class TransportGetFindingsSearchAction @Inject constructor( .seqNoAndPrimaryTerm(true) .version(true) - val queryBuilder = QueryBuilders.boolQuery() + val queryBuilder = getFindingsRequest.boolQueryBuilder ?: QueryBuilders.boolQuery() if (!getFindingsRequest.findingId.isNullOrBlank()) { queryBuilder.filter(QueryBuilders.termQuery("_id", getFindingsRequest.findingId)) } - if (getFindingsRequest.monitorId != null) { queryBuilder.filter(QueryBuilders.termQuery("monitor_id", getFindingsRequest.monitorId)) } else if (getFindingsRequest.monitorIds.isNullOrEmpty() == false) { @@ -134,7 +135,6 @@ class TransportGetFindingsSearchAction @Inject constructor( ) ) } - searchSourceBuilder.query(queryBuilder) client.threadPool().threadContext.stashContext().use {