minor, refine metric.
Project: http://git-wip-us.apache.org/repos/asf/kylin/repo Commit: http://git-wip-us.apache.org/repos/asf/kylin/commit/826788a3 Tree: http://git-wip-us.apache.org/repos/asf/kylin/tree/826788a3 Diff: http://git-wip-us.apache.org/repos/asf/kylin/diff/826788a3 Branch: refs/heads/master Commit: 826788a35b717159381e53adb3c5da16eeac360d Parents: f2722eb Author: tttMelody <245915...@qq.com> Authored: Wed Dec 27 20:55:06 2017 +0800 Committer: Hongbin Ma <m...@kyligence.io> Committed: Thu Dec 28 10:34:43 2017 +0800 ---------------------------------------------------------------------- .../org/apache/kylin/rest/service/QueryService.java | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/kylin/blob/826788a3/server-base/src/main/java/org/apache/kylin/rest/service/QueryService.java ---------------------------------------------------------------------- diff --git a/server-base/src/main/java/org/apache/kylin/rest/service/QueryService.java b/server-base/src/main/java/org/apache/kylin/rest/service/QueryService.java index 2b76ae3..9afec83 100644 --- a/server-base/src/main/java/org/apache/kylin/rest/service/QueryService.java +++ b/server-base/src/main/java/org/apache/kylin/rest/service/QueryService.java @@ -409,7 +409,6 @@ public class QueryService extends BasicService { HtraceInit.init(); scope = Trace.startSpan("query life cycle for " + queryContext.getQueryId(), Sampler.ALWAYS); } - String traceUrl = getTraceUrl(scope); try (SetThreadName ignored = new SetThreadName("Query %s", queryContext.getQueryId())) { @@ -516,10 +515,11 @@ public class QueryService extends BasicService { sqlResponse.setTraceUrl(traceUrl); logQuery(sqlRequest, sqlResponse); - - QueryMetricsFacade.updateMetrics(sqlRequest, sqlResponse); - QueryMetrics2Facade.updateMetrics(sqlRequest, sqlResponse); - + try { + recordMetric(sqlRequest, sqlResponse); + } catch (Throwable th) { + logger.warn("Write metric error.", th); + } if (sqlResponse.getIsException()) throw new InternalErrorException(sqlResponse.getExceptionMessage()); @@ -528,13 +528,17 @@ public class QueryService extends BasicService { } finally { BackdoorToggles.cleanToggles(); QueryContext.reset(); - if (scope != null) { scope.close(); } } } + protected void recordMetric(SQLRequest sqlRequest, SQLResponse sqlResponse) throws UnknownHostException { + QueryMetricsFacade.updateMetrics(sqlRequest, sqlResponse); + QueryMetrics2Facade.updateMetrics(sqlRequest, sqlResponse); + } + private String getTraceUrl(TraceScope scope) { if (scope == null) { return null;