This is an automated email from the ASF dual-hosted git repository.
lizhimins pushed a commit to branch rocketmq-studio
in repository https://gitbox.apache.org/repos/asf/rocketmq-dashboard.git
The following commit(s) were added to refs/heads/rocketmq-studio by this push:
new 8d6b21c7 fix(metrics): normalize backend types with root locale (#1487)
8d6b21c7 is described below
commit 8d6b21c7293d38c211f57f3dc518656727c84831
Author: yyqdbngt <[email protected]>
AuthorDate: Tue Aug 11 17:49:14 2026 +0800
fix(metrics): normalize backend types with root locale (#1487)
Co-authored-by: yyqdbngt <[email protected]>
---
.../studio/cluster/metrics/MetricsBackendType.java | 4 +++-
.../studio/cluster/metrics/MetricsBackendTypeTest.java | 17 +++++++++++++++++
2 files changed, 20 insertions(+), 1 deletion(-)
diff --git
a/server/src/main/java/org/apache/rocketmq/studio/cluster/metrics/MetricsBackendType.java
b/server/src/main/java/org/apache/rocketmq/studio/cluster/metrics/MetricsBackendType.java
index 147a78c8..ac5e256e 100644
---
a/server/src/main/java/org/apache/rocketmq/studio/cluster/metrics/MetricsBackendType.java
+++
b/server/src/main/java/org/apache/rocketmq/studio/cluster/metrics/MetricsBackendType.java
@@ -16,6 +16,8 @@
*/
package org.apache.rocketmq.studio.cluster.metrics;
+import java.util.Locale;
+
/**
* Prometheus-compatible metrics backend types supported by RocketMQ Studio.
* <p>
@@ -53,7 +55,7 @@ public enum MetricsBackendType {
if (providerType == null) {
return PROMETHEUS;
}
- return switch (providerType.trim().toUpperCase()) {
+ return switch (providerType.trim().toUpperCase(Locale.ROOT)) {
case "PROMETHEUS" -> PROMETHEUS;
case "VICTORIAMETRICS", "VICTORIA_METRICS", "VICTORIA" ->
VICTORIA_METRICS;
case "THANOS" -> THANOS;
diff --git
a/server/src/test/java/org/apache/rocketmq/studio/cluster/metrics/MetricsBackendTypeTest.java
b/server/src/test/java/org/apache/rocketmq/studio/cluster/metrics/MetricsBackendTypeTest.java
index 02defc44..f47aa601 100644
---
a/server/src/test/java/org/apache/rocketmq/studio/cluster/metrics/MetricsBackendTypeTest.java
+++
b/server/src/test/java/org/apache/rocketmq/studio/cluster/metrics/MetricsBackendTypeTest.java
@@ -18,6 +18,8 @@ package org.apache.rocketmq.studio.cluster.metrics;
import org.junit.jupiter.api.Test;
+import java.util.Locale;
+
import static org.assertj.core.api.Assertions.assertThat;
class MetricsBackendTypeTest {
@@ -43,6 +45,21 @@ class MetricsBackendTypeTest {
assertThat(MetricsBackendType.fromProviderType("unknown-backend")).isEqualTo(MetricsBackendType.PROMETHEUS);
}
+ @Test
+ void shouldResolveProviderTypeIndependentlyOfDefaultLocale() {
+ Locale originalLocale = Locale.getDefault();
+
+ MetricsBackendType backendType;
+ try {
+ Locale.setDefault(Locale.forLanguageTag("tr-TR"));
+ backendType = MetricsBackendType.fromProviderType("mimir");
+ } finally {
+ Locale.setDefault(originalLocale);
+ }
+
+ assertThat(backendType).isEqualTo(MetricsBackendType.MIMIR);
+ }
+
@Test
void shouldExposeDistinctQueryPathsForBackends() {
assertThat(MetricsBackendType.PROMETHEUS.getQueryPath()).isEqualTo("/api/v1/query_range");