You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@eagle.apache.org by ji...@apache.org on 2016/11/24 14:20:06 UTC
incubator-eagle git commit: [MINOR] change delay strategy of topology
check app
Repository: incubator-eagle
Updated Branches:
refs/heads/master de061d599 -> 52dc7a5d9
[MINOR] change delay strategy of topology check app
Author: wujinhu <wu...@126.com>
Closes #682 from wujinhu/EAGLE-789.
Project: http://git-wip-us.apache.org/repos/asf/incubator-eagle/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-eagle/commit/52dc7a5d
Tree: http://git-wip-us.apache.org/repos/asf/incubator-eagle/tree/52dc7a5d
Diff: http://git-wip-us.apache.org/repos/asf/incubator-eagle/diff/52dc7a5d
Branch: refs/heads/master
Commit: 52dc7a5d99ed37b7778813c8b6483a4227e7c0ee
Parents: de061d5
Author: wujinhu <wu...@126.com>
Authored: Thu Nov 24 22:19:56 2016 +0800
Committer: wujinhu <wu...@126.com>
Committed: Thu Nov 24 22:19:56 2016 +0800
----------------------------------------------------------------------
...adoopQueueRunningApplicationHealthCheck.java | 2 +-
.../SparkHistoryJobApplicationHealthCheck.java | 2 +-
.../TopologyCheckApplicationHealthCheck.java | 36 +++++++++++++-------
3 files changed, 25 insertions(+), 15 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-eagle/blob/52dc7a5d/eagle-jpm/eagle-hadoop-queue/src/main/java/org/apache/eagle/hadoop/queue/HadoopQueueRunningApplicationHealthCheck.java
----------------------------------------------------------------------
diff --git a/eagle-jpm/eagle-hadoop-queue/src/main/java/org/apache/eagle/hadoop/queue/HadoopQueueRunningApplicationHealthCheck.java b/eagle-jpm/eagle-hadoop-queue/src/main/java/org/apache/eagle/hadoop/queue/HadoopQueueRunningApplicationHealthCheck.java
index 61c7687..6a7535c 100644
--- a/eagle-jpm/eagle-hadoop-queue/src/main/java/org/apache/eagle/hadoop/queue/HadoopQueueRunningApplicationHealthCheck.java
+++ b/eagle-jpm/eagle-hadoop-queue/src/main/java/org/apache/eagle/hadoop/queue/HadoopQueueRunningApplicationHealthCheck.java
@@ -71,7 +71,7 @@ public class HadoopQueueRunningApplicationHealthCheck extends ApplicationHealthC
.metricName(HadoopClusterConstants.MetricName.HADOOP_CLUSTER_ALLOCATED_MEMORY)
.startTime(System.currentTimeMillis() - 24 * 60 * 60000L)
.endTime(System.currentTimeMillis())
- .pageSize(Integer.MAX_VALUE)
+ .pageSize(10)
.send();
List<Map<List<String>, List<Double>>> results = response.getObj();
long currentProcessTimeStamp = results.get(0).get("value").get(0).longValue();
http://git-wip-us.apache.org/repos/asf/incubator-eagle/blob/52dc7a5d/eagle-jpm/eagle-jpm-spark-history/src/main/java/org/apache/eagle/jpm/spark/history/SparkHistoryJobApplicationHealthCheck.java
----------------------------------------------------------------------
diff --git a/eagle-jpm/eagle-jpm-spark-history/src/main/java/org/apache/eagle/jpm/spark/history/SparkHistoryJobApplicationHealthCheck.java b/eagle-jpm/eagle-jpm-spark-history/src/main/java/org/apache/eagle/jpm/spark/history/SparkHistoryJobApplicationHealthCheck.java
index fe6bd5a..d6f5031 100644
--- a/eagle-jpm/eagle-jpm-spark-history/src/main/java/org/apache/eagle/jpm/spark/history/SparkHistoryJobApplicationHealthCheck.java
+++ b/eagle-jpm/eagle-jpm-spark-history/src/main/java/org/apache/eagle/jpm/spark/history/SparkHistoryJobApplicationHealthCheck.java
@@ -65,7 +65,7 @@ public class SparkHistoryJobApplicationHealthCheck extends ApplicationHealthChec
GenericServiceAPIResponseEntity response = client
.search(query)
- .startTime(System.currentTimeMillis() - 24 * 60 * 60000L)
+ .startTime(System.currentTimeMillis() - 12 * 60 * 60000L)
.endTime(System.currentTimeMillis())
.pageSize(10)
.send();
http://git-wip-us.apache.org/repos/asf/incubator-eagle/blob/52dc7a5d/eagle-topology-check/eagle-topology-app/src/main/java/org/apache/eagle/topology/TopologyCheckApplicationHealthCheck.java
----------------------------------------------------------------------
diff --git a/eagle-topology-check/eagle-topology-app/src/main/java/org/apache/eagle/topology/TopologyCheckApplicationHealthCheck.java b/eagle-topology-check/eagle-topology-app/src/main/java/org/apache/eagle/topology/TopologyCheckApplicationHealthCheck.java
index 5115af6..7860cb5 100644
--- a/eagle-topology-check/eagle-topology-app/src/main/java/org/apache/eagle/topology/TopologyCheckApplicationHealthCheck.java
+++ b/eagle-topology-check/eagle-topology-app/src/main/java/org/apache/eagle/topology/TopologyCheckApplicationHealthCheck.java
@@ -59,19 +59,11 @@ public class TopologyCheckApplicationHealthCheck extends ApplicationHealthCheckB
message += String.format("Application is not RUNNING, status is %s. ", status.toString());
}
- String query = String.format("%s[@site=\"%s\"]<@site>{max(timestamp)}",
- TopologyConstants.GENERIC_METRIC_SERVICE,
- topologyCheckAppConfig.dataExtractorConfig.site);
-
- GenericServiceAPIResponseEntity response = client
- .search(query)
- .metricName(String.format(TopologyConstants.METRIC_LIVE_RATIO_NAME_FORMAT, TopologyConstants.DATA_NODE_ROLE))
- .startTime(System.currentTimeMillis() - 2 * 60 * 60000L)
- .endTime(System.currentTimeMillis())
- .pageSize(Integer.MAX_VALUE)
- .send();
- List<Map<List<String>, List<Double>>> results = response.getObj();
- long currentProcessTimeStamp = results.get(0).get("value").get(0).longValue();
+ long currentProcessTimeStamp = Math.min(
+ Math.min(
+ getServiceLatestUpdateTime(TopologyConstants.HBASE_INSTANCE_SERVICE_NAME, client),
+ getServiceLatestUpdateTime(TopologyConstants.HDFS_INSTANCE_SERVICE_NAME, client)
+ ), getServiceLatestUpdateTime(TopologyConstants.MR_INSTANCE_SERVICE_NAME, client));
long currentTimeStamp = System.currentTimeMillis();
long maxDelayTime = DEFAULT_MAX_DELAY_TIME;
if (topologyCheckAppConfig.getConfig().hasPath(MAX_DELAY_TIME_KEY)) {
@@ -96,4 +88,22 @@ public class TopologyCheckApplicationHealthCheck extends ApplicationHealthCheckB
}
}
}
+
+ private long getServiceLatestUpdateTime(String serviceName, IEagleServiceClient client) throws Exception {
+ String query = String.format("%s[@site=\"%s\"]<@site>{max(lastUpdateTime)}",
+ serviceName,
+ topologyCheckAppConfig.dataExtractorConfig.site);
+
+ GenericServiceAPIResponseEntity response = client
+ .search(query)
+ .pageSize(10)
+ .send();
+
+ List<Map<List<String>, List<Double>>> results = response.getObj();
+ if (results.size() == 0) {
+ return Long.MAX_VALUE;
+ }
+ long currentProcessTimeStamp = results.get(0).get("value").get(0).longValue();
+ return currentProcessTimeStamp;
+ }
}