You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@gobblin.apache.org by hu...@apache.org on 2018/01/23 01:01:32 UTC

incubator-gobblin git commit: [GOBBLIN-380] Add log about time elapsed for waiting services to be healthy

Repository: incubator-gobblin
Updated Branches:
  refs/heads/master a5281123a -> ec8529885


[GOBBLIN-380] Add log about time elapsed for waiting services to be healthy

Closes #2254 from zxcware/msg


Project: http://git-wip-us.apache.org/repos/asf/incubator-gobblin/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-gobblin/commit/ec852988
Tree: http://git-wip-us.apache.org/repos/asf/incubator-gobblin/tree/ec852988
Diff: http://git-wip-us.apache.org/repos/asf/incubator-gobblin/diff/ec852988

Branch: refs/heads/master
Commit: ec8529885ca1024683bcfca6c0275a3e9ad6ea7d
Parents: a528112
Author: zhchen <zh...@linkedin.com>
Authored: Mon Jan 22 17:01:22 2018 -0800
Committer: Hung Tran <hu...@linkedin.com>
Committed: Mon Jan 22 17:01:22 2018 -0800

----------------------------------------------------------------------
 .../org/apache/gobblin/metrics/GobblinMetrics.java    | 14 +++++++++++---
 .../instance/StandardGobblinInstanceDriver.java       |  5 +++--
 .../runtime/scheduler/QuartzJobSpecScheduler.java     |  3 +++
 3 files changed, 17 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-gobblin/blob/ec852988/gobblin-metrics-libs/gobblin-metrics/src/main/java/org/apache/gobblin/metrics/GobblinMetrics.java
----------------------------------------------------------------------
diff --git a/gobblin-metrics-libs/gobblin-metrics/src/main/java/org/apache/gobblin/metrics/GobblinMetrics.java b/gobblin-metrics-libs/gobblin-metrics/src/main/java/org/apache/gobblin/metrics/GobblinMetrics.java
index 76eb6d3..510f066 100644
--- a/gobblin-metrics-libs/gobblin-metrics/src/main/java/org/apache/gobblin/metrics/GobblinMetrics.java
+++ b/gobblin-metrics-libs/gobblin-metrics/src/main/java/org/apache/gobblin/metrics/GobblinMetrics.java
@@ -394,6 +394,8 @@ public class GobblinMetrics {
         .getProperty(ConfigurationKeys.METRICS_REPORT_INTERVAL_KEY, ConfigurationKeys.DEFAULT_METRICS_REPORT_INTERVAL));
     ScheduledReporter.setReportingInterval(properties, reportInterval, reportTimeUnit);
 
+    long startTime = System.currentTimeMillis();
+
     try {
       // Build and start the JMX reporter
       buildJmxMetricReporter(properties);
@@ -423,7 +425,8 @@ public class GobblinMetrics {
     }
 
     this.metricsReportingStarted = true;
-    LOGGER.info("Metrics reporting has been started: GobblinMetrics {}", this.toString());
+    LOGGER.info("Metrics reporting has been started in {} ms: GobblinMetrics {}",
+        System.currentTimeMillis() - startTime, this.toString());
   }
 
   /**
@@ -751,8 +754,13 @@ public class GobblinMetrics {
       if (CustomCodahaleReporterFactory.class.isAssignableFrom(clazz)) {
         CustomCodahaleReporterFactory customCodahaleReporterFactory =
             ((CustomCodahaleReporterFactory) clazz.getConstructor().newInstance());
-        com.codahale.metrics.ScheduledReporter scheduledReporter = this.codahaleReportersCloser
-            .register(customCodahaleReporterFactory.newScheduledReporter(RootMetricContext.get(), properties));
+        com.codahale.metrics.ScheduledReporter scheduledReporter =
+            customCodahaleReporterFactory.newScheduledReporter(RootMetricContext.get(), properties);
+        if (scheduledReporter == null) {
+          LOGGER.warn("Factory {} returns a null scheduledReporter", clazz.getSimpleName());
+          return;
+        }
+        this.codahaleReportersCloser.register(scheduledReporter);
         String reporterSinkMsg = reporterSink.isPresent()?"to " + reporterSink.get():"";
         LOGGER.info("Will start reporting metrics " + reporterSinkMsg + " using " + reporterClass);
         this.codahaleScheduledReporters.add(scheduledReporter);

http://git-wip-us.apache.org/repos/asf/incubator-gobblin/blob/ec852988/gobblin-runtime/src/main/java/org/apache/gobblin/runtime/instance/StandardGobblinInstanceDriver.java
----------------------------------------------------------------------
diff --git a/gobblin-runtime/src/main/java/org/apache/gobblin/runtime/instance/StandardGobblinInstanceDriver.java b/gobblin-runtime/src/main/java/org/apache/gobblin/runtime/instance/StandardGobblinInstanceDriver.java
index 942be5a..4f1ae4c 100644
--- a/gobblin-runtime/src/main/java/org/apache/gobblin/runtime/instance/StandardGobblinInstanceDriver.java
+++ b/gobblin-runtime/src/main/java/org/apache/gobblin/runtime/instance/StandardGobblinInstanceDriver.java
@@ -129,10 +129,11 @@ public class StandardGobblinInstanceDriver extends DefaultGobblinInstanceDriverI
   protected void startUp() throws Exception {
     getLog().info("Starting driver ...");
     if (null != _subservices) {
-      getLog().info("Starting subservices");
+      getLog().info("Starting subservices. Timeout is {} ms", getInstanceCfg().getStartTimeoutMs());
+      long startTime = System.currentTimeMillis();
       _subservices.startAsync();
       _subservices.awaitHealthy(getInstanceCfg().getStartTimeoutMs(), TimeUnit.MILLISECONDS);
-      getLog().info("All subservices have been started.");
+      getLog().info("All subservices have been started. Time waited is {} ms", System.currentTimeMillis() - startTime);
     }
     else {
       getLog().info("No subservices found.");

http://git-wip-us.apache.org/repos/asf/incubator-gobblin/blob/ec852988/gobblin-runtime/src/main/java/org/apache/gobblin/runtime/scheduler/QuartzJobSpecScheduler.java
----------------------------------------------------------------------
diff --git a/gobblin-runtime/src/main/java/org/apache/gobblin/runtime/scheduler/QuartzJobSpecScheduler.java b/gobblin-runtime/src/main/java/org/apache/gobblin/runtime/scheduler/QuartzJobSpecScheduler.java
index 909a6d1..4e46cee 100644
--- a/gobblin-runtime/src/main/java/org/apache/gobblin/runtime/scheduler/QuartzJobSpecScheduler.java
+++ b/gobblin-runtime/src/main/java/org/apache/gobblin/runtime/scheduler/QuartzJobSpecScheduler.java
@@ -142,7 +142,10 @@ public class QuartzJobSpecScheduler extends AbstractJobSpecScheduler {
     super.startUp();
     _scheduler.startAsync();
     // Start-up should not take long
+    getLog().info("Waiting QuartzJobSpecScheduler to run. Timeout is {} ms", _cfg.getStartUpTimeoutMs());
+    long startTime = System.currentTimeMillis();
     _scheduler.awaitRunning(_cfg.getStartUpTimeoutMs(), TimeUnit.MILLISECONDS);
+    getLog().info("QuartzJobSpecScheduler runs. Time waited is {} ms", System.currentTimeMillis() - startTime);
   }
 
   @Override protected void shutDown() throws TimeoutException {