You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pinot.apache.org by ji...@apache.org on 2021/01/14 23:57:47 UTC
[incubator-pinot] branch master updated: [TE] fix dimensional
summary in emails (#6443)
This is an automated email from the ASF dual-hosted git repository.
jihao pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-pinot.git
The following commit(s) were added to refs/heads/master by this push:
new 99fe289 [TE] fix dimensional summary in emails (#6443)
99fe289 is described below
commit 99fe2896318b23f6489fc55194937d0ba69e5407
Author: Vincent Chen <ji...@linkedin.com>
AuthorDate: Thu Jan 14 15:57:28 2021 -0800
[TE] fix dimensional summary in emails (#6443)
This PR is to fix email alerts that include dimension analysis ignoring the dimensional filters in the corresponding detection configs.
---
.../thirdeye/dashboard/resources/v2/RootCauseResource.java | 11 +++++++++--
1 file changed, 9 insertions(+), 2 deletions(-)
diff --git a/thirdeye/thirdeye-dashboard/src/main/java/org/apache/pinot/thirdeye/dashboard/resources/v2/RootCauseResource.java b/thirdeye/thirdeye-dashboard/src/main/java/org/apache/pinot/thirdeye/dashboard/resources/v2/RootCauseResource.java
index 53e2cb9..a497684 100644
--- a/thirdeye/thirdeye-dashboard/src/main/java/org/apache/pinot/thirdeye/dashboard/resources/v2/RootCauseResource.java
+++ b/thirdeye/thirdeye-dashboard/src/main/java/org/apache/pinot/thirdeye/dashboard/resources/v2/RootCauseResource.java
@@ -19,11 +19,14 @@
package org.apache.pinot.thirdeye.dashboard.resources.v2;
+import com.fasterxml.jackson.databind.ObjectMapper;
import com.google.common.base.Preconditions;
import io.dropwizard.auth.Auth;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
+import java.net.URLEncoder;
+import java.nio.charset.StandardCharsets;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashMap;
@@ -47,6 +50,7 @@ import org.apache.pinot.thirdeye.datasource.DAORegistry;
import org.apache.pinot.thirdeye.rootcause.Entity;
import org.apache.pinot.thirdeye.rootcause.RCAFramework;
import org.apache.pinot.thirdeye.rootcause.RCAFrameworkExecutionResult;
+import org.apache.pinot.thirdeye.rootcause.impl.MetricEntity;
import org.apache.pinot.thirdeye.rootcause.impl.TimeRangeEntity;
import org.apache.pinot.thirdeye.rootcause.util.EntityUtils;
import org.slf4j.Logger;
@@ -89,14 +93,17 @@ public class RootCauseResource {
Map<String, Object> responseMessage = new HashMap<>();
MergedAnomalyResultDTO anomalyDTO = DAORegistry.getInstance().getMergedAnomalyResultDAO().findById(anomalyId);
Preconditions.checkNotNull(anomalyDTO, "Anomaly doesn't exist in ThirdEye's repository");
-
+ MetricEntity metricEntity = MetricEntity.fromURN(anomalyDTO.getMetricUrn());
+ ObjectMapper objectMapper = new ObjectMapper();
+ String filterJson = URLEncoder.encode(
+ objectMapper.writeValueAsString(metricEntity.getFilters().asMap()), StandardCharsets.UTF_8.toString());
// In the highlights api we retrieve only the top 3 results across 3 dimensions.
// TODO: polish the results to make it more meaningful
Map<String, Object> cubeHighlights = this.summaryResource.getDataCubeSummary(
anomalyDTO.getMetricUrn(), anomalyDTO.getCollection(), anomalyDTO.getMetric(),
anomalyDTO.getStartTime(), anomalyDTO.getEndTime(),
anomalyDTO.getStartTime() - TimeUnit.DAYS.toMillis(7),
- anomalyDTO.getEndTime() - TimeUnit.DAYS.toMillis(7), Strings.EMPTY, Strings.EMPTY,
+ anomalyDTO.getEndTime() - TimeUnit.DAYS.toMillis(7), Strings.EMPTY, filterJson,
DEFAULT_HIGHLIGHT_CUBE_SUMMARY_SIZE, DEFAULT_HIGHLIGHT_CUBE_DEPTH, SummaryResource.DEFAULT_HIERARCHIES,
false, DEFAULT_EXCLUDED_DIMENSIONS, SummaryResource.DEFAULT_TIMEZONE_ID);
responseMessage.put("cubeResults", cubeHighlights);
---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@pinot.apache.org
For additional commands, e-mail: commits-help@pinot.apache.org