public Optional getJobElapsedTime()

in src/main/java/com/google/cloud/dfmetrics/pipelinemanager/MonitoringClient.java [157:173]


  public Optional<Double> getJobElapsedTime(
      String project, String jobId, TimeInterval timeInterval) {
    LOG.info("Getting elapsed time for {} under {}", jobId, project);
    String filter =
        String.format(
            "metric.type = \"dataflow.googleapis.com/job/elapsed_time\" "
                + "AND metric.labels.job_id=\"%s\" ",
            jobId);
    ListTimeSeriesRequest request =
        getTimeSeriesRequest(project, filter, timeInterval, getAggregation());
    List<Double> timeSeries = listTimeSeriesAsDouble(request);
    if (timeSeries.isEmpty()) {
      LOG.warn("No monitoring data found. Unable to get Data freshness information.");
      return Optional.empty();
    }
    return Optional.of(Collections.max(timeSeries));
  }