in bigquery-antipattern-recognition/src/main/java/com/google/zetasql/toolkit/antipattern/util/BigQueryHelper.java [72:111]
public TableResult getQueriesFromIS(
String daysBack,
String startTime,
String endTime,
String ISTable,
Integer slotsMsMin,
Long timeoutInSecs,
Float topNPercent,
String region)
throws InterruptedException {
String timeCriteria;
if (StringUtils.isBlank(startTime) || StringUtils.isBlank(endTime)) {
logger.info(
"Running job on project {}, reading from: {}, scanning last {} days."
+ "and selecting queries with minimum {} slotms. "
+ " Considering only top {}% slot consuming jobs",
bigquery.getOptions().getProjectId(), ISTable, daysBack, slotsMsMin, topNPercent * 100);
timeCriteria = " creation_time >= CURRENT_TIMESTAMP - INTERVAL " + daysBack + " DAY\n";
} else {
logger.info(
"Running job on project {}, reading from: {}, scanning between {} and {}."
+ "and selecting queries with minimum {} slotms",
bigquery.getOptions().getProjectId(),
ISTable,
startTime,
endTime,
slotsMsMin);
startTime = startTime.trim();
endTime = endTime.trim();
if (!(startTime.startsWith("'") || startTime.startsWith("\""))) {
startTime = "'" + startTime + "'";
}
if (!(endTime.startsWith("'") || endTime.startsWith("\""))) {
endTime = "'" + endTime + "'";
}
timeCriteria = " creation_time BETWEEN " + startTime + " AND " + endTime + "\n";
}
return getQueriesFromIS(timeoutInSecs, timeCriteria, ISTable, slotsMsMin, topNPercent, region);
}