From 3da32c954053cc871f8970843d6486ec132f5b59 Mon Sep 17 00:00:00 2001 From: iliax Date: Thu, 20 Jul 2023 18:59:43 +0400 Subject: [PATCH] wip --- .../ui/service/graphs/GraphDescriptions.java | 1 - .../kafka/ui/service/graphs/GraphsService.java | 1 - .../PromQueryLangGrammar.java | 6 ++---- .../prometheus => graphs}/PromQueryTemplate.java | 15 +++++++-------- 4 files changed, 9 insertions(+), 14 deletions(-) rename kafka-ui-api/src/main/java/com/provectus/kafka/ui/service/{metrics/prometheus => graphs}/PromQueryLangGrammar.java (79%) rename kafka-ui-api/src/main/java/com/provectus/kafka/ui/service/{metrics/prometheus => graphs}/PromQueryTemplate.java (72%) diff --git a/kafka-ui-api/src/main/java/com/provectus/kafka/ui/service/graphs/GraphDescriptions.java b/kafka-ui-api/src/main/java/com/provectus/kafka/ui/service/graphs/GraphDescriptions.java index 57458a9a19..71e80b801d 100644 --- a/kafka-ui-api/src/main/java/com/provectus/kafka/ui/service/graphs/GraphDescriptions.java +++ b/kafka-ui-api/src/main/java/com/provectus/kafka/ui/service/graphs/GraphDescriptions.java @@ -1,7 +1,6 @@ package com.provectus.kafka.ui.service.graphs; import com.provectus.kafka.ui.exception.ValidationException; -import com.provectus.kafka.ui.service.metrics.prometheus.PromQueryTemplate; import java.time.Duration; import java.util.HashMap; import java.util.List; diff --git a/kafka-ui-api/src/main/java/com/provectus/kafka/ui/service/graphs/GraphsService.java b/kafka-ui-api/src/main/java/com/provectus/kafka/ui/service/graphs/GraphsService.java index e7dc7457e3..5ac3965007 100644 --- a/kafka-ui-api/src/main/java/com/provectus/kafka/ui/service/graphs/GraphsService.java +++ b/kafka-ui-api/src/main/java/com/provectus/kafka/ui/service/graphs/GraphsService.java @@ -4,7 +4,6 @@ import com.google.common.base.Preconditions; import com.provectus.kafka.ui.exception.NotFoundException; import com.provectus.kafka.ui.exception.ValidationException; import com.provectus.kafka.ui.model.KafkaCluster; -import com.provectus.kafka.ui.service.metrics.prometheus.PromQueryTemplate; import java.time.Duration; import java.time.Instant; import java.util.Map; diff --git a/kafka-ui-api/src/main/java/com/provectus/kafka/ui/service/metrics/prometheus/PromQueryLangGrammar.java b/kafka-ui-api/src/main/java/com/provectus/kafka/ui/service/graphs/PromQueryLangGrammar.java similarity index 79% rename from kafka-ui-api/src/main/java/com/provectus/kafka/ui/service/metrics/prometheus/PromQueryLangGrammar.java rename to kafka-ui-api/src/main/java/com/provectus/kafka/ui/service/graphs/PromQueryLangGrammar.java index ad62b3ccef..072a3b9d7b 100644 --- a/kafka-ui-api/src/main/java/com/provectus/kafka/ui/service/metrics/prometheus/PromQueryLangGrammar.java +++ b/kafka-ui-api/src/main/java/com/provectus/kafka/ui/service/graphs/PromQueryLangGrammar.java @@ -1,4 +1,4 @@ -package com.provectus.kafka.ui.service.metrics.prometheus; +package com.provectus.kafka.ui.service.graphs; import java.util.Optional; import org.antlr.v4.runtime.BailErrorStrategy; @@ -26,9 +26,7 @@ class PromQueryLangGrammar { } private static PromQLParser createParser(String str) { - PromQLLexer lexer = new PromQLLexer(CharStreams.fromString(str)); - CommonTokenStream tokenStream = new CommonTokenStream(lexer); - var parser = new PromQLParser(tokenStream); + var parser = new PromQLParser(new CommonTokenStream(new PromQLLexer(CharStreams.fromString(str)))); parser.removeErrorListeners(); parser.setErrorHandler(new BailErrorStrategy()); return parser; diff --git a/kafka-ui-api/src/main/java/com/provectus/kafka/ui/service/metrics/prometheus/PromQueryTemplate.java b/kafka-ui-api/src/main/java/com/provectus/kafka/ui/service/graphs/PromQueryTemplate.java similarity index 72% rename from kafka-ui-api/src/main/java/com/provectus/kafka/ui/service/metrics/prometheus/PromQueryTemplate.java rename to kafka-ui-api/src/main/java/com/provectus/kafka/ui/service/graphs/PromQueryTemplate.java index 141b7e9455..06325760e2 100644 --- a/kafka-ui-api/src/main/java/com/provectus/kafka/ui/service/metrics/prometheus/PromQueryTemplate.java +++ b/kafka-ui-api/src/main/java/com/provectus/kafka/ui/service/graphs/PromQueryTemplate.java @@ -1,29 +1,28 @@ -package com.provectus.kafka.ui.service.metrics.prometheus; +package com.provectus.kafka.ui.service.graphs; import com.google.common.collect.Sets; import com.provectus.kafka.ui.exception.ValidationException; -import com.provectus.kafka.ui.service.graphs.GraphDescription; import java.util.HashMap; import java.util.Map; import java.util.Optional; import java.util.Set; import org.apache.commons.lang3.text.StrSubstitutor; -public class PromQueryTemplate { +class PromQueryTemplate { private final String queryTemplate; private final Set paramsNames; - public PromQueryTemplate(GraphDescription d) { + PromQueryTemplate(GraphDescription d) { this(d.prometheusQuery(), d.params()); } - public PromQueryTemplate(String templateQueryString, Set paramsNames) { + PromQueryTemplate(String templateQueryString, Set paramsNames) { this.queryTemplate = templateQueryString; this.paramsNames = paramsNames; } - public String getQuery(String clusterName, Map paramValues) { + String getQuery(String clusterName, Map paramValues) { var missingParams = Sets.difference(paramsNames, paramValues.keySet()); if (!missingParams.isEmpty()) { throw new ValidationException("Not all params set for query, missing: " + missingParams); @@ -33,12 +32,12 @@ public class PromQueryTemplate { return replaceParams(replacements); } - public Optional validateSyntax() { + Optional validateSyntax() { Map fakeReplacements = new HashMap<>(); fakeReplacements.put("cluster", "1"); paramsNames.forEach(paramName -> fakeReplacements.put(paramName, "1")); - String prepared = replaceParams(fakeReplacements); + String prepared = replaceParams(fakeReplacements); return PromQueryLangGrammar.validateExpression(prepared); }