From 7785c4164baea370440082390357972f7632210f Mon Sep 17 00:00:00 2001
From: mrproliu <741550557@qq.com>
Date: Tue, 18 Feb 2025 20:16:14 +0800
Subject: [PATCH] Move `metrics-baseline` into `ai-pipeline` module (#13041)
---
docs/en/api/metrics-query-expression.md | 2 +-
docs/en/changes/changes.md | 1 +
oap-server/ai-pipeline/pom.xml | 17 ++-
.../server/ai/pipeline/AIPipelineConfig.java | 2 +
.../server/ai/pipeline/AIPipelineModule.java | 6 +-
.../ai/pipeline/AIPipelineProvider.java | 27 ++--
.../services}/BaselineQueryService.java | 2 +-
.../services}/BaselineQueryServiceImpl.java | 2 +-
.../services/HttpUriRecognitionService.java | 4 +-
.../services}/PredictServiceMetrics.java | 2 +-
.../ai/pipeline/services}/ServiceMetrics.java | 2 +-
.../src/main/proto/baseline.proto | 0
.../src/test/java}/BaselineQueryServer.java | 10 +-
.../src/test/java}/BaselineServerTest.java | 8 +-
oap-server/metrics-baseline/pom.xml | 77 ----------
.../oap/server/baseline/BaselineModule.java | 36 -----
.../baseline/BaselineModuleProvider.java | 77 ----------
...ing.oap.server.library.module.ModuleDefine | 19 ---
...g.oap.server.library.module.ModuleProvider | 19 ---
oap-server/mqe-rt/pom.xml | 2 +-
.../skywalking/mqe/rt/MQEVisitorBase.java | 8 +-
oap-server/pom.xml | 1 -
oap-server/server-core/pom.xml | 5 -
.../oap/server/core/CoreModule.java | 2 +
.../oap/server/core/CoreModuleProvider.java | 11 +-
.../group/EndpointNameGroupService.java} | 19 +--
.../config/group/EndpointNameGrouping.java | 138 ++++++++++--------
.../core/config/group/ai}/HttpUriPattern.java | 2 +-
.../config/group/ai}/HttpUriRecognition.java | 5 +-
.../oap/server/core/CoreModuleTest.java | 2 +-
oap-server/server-starter/pom.xml | 5 -
.../src/main/resources/application.yml | 8 +-
.../cases/alarm/banyandb/docker-compose.yml | 2 +-
test/e2e-v2/cases/alarm/es/docker-compose.yml | 2 +-
.../alarm/es/es-sharding/docker-compose.yml | 2 +-
.../cases/alarm/mysql/docker-compose.yml | 2 +-
.../cases/alarm/postgres/docker-compose.yml | 2 +-
test/e2e-v2/cases/mqe/docker-compose.yml | 2 +-
38 files changed, 164 insertions(+), 369 deletions(-)
rename oap-server/{metrics-baseline/src/main/java/org/apache/skywalking/oap/server/baseline/service => ai-pipeline/src/main/java/org/apache/skywalking/oap/server/ai/pipeline/services}/BaselineQueryService.java (96%)
rename oap-server/{metrics-baseline/src/main/java/org/apache/skywalking/oap/server/baseline/service => ai-pipeline/src/main/java/org/apache/skywalking/oap/server/ai/pipeline/services}/BaselineQueryServiceImpl.java (99%)
rename oap-server/{metrics-baseline/src/main/java/org/apache/skywalking/oap/server/baseline/service => ai-pipeline/src/main/java/org/apache/skywalking/oap/server/ai/pipeline/services}/PredictServiceMetrics.java (96%)
rename oap-server/{metrics-baseline/src/main/java/org/apache/skywalking/oap/server/baseline/service => ai-pipeline/src/main/java/org/apache/skywalking/oap/server/ai/pipeline/services}/ServiceMetrics.java (94%)
rename oap-server/{metrics-baseline => ai-pipeline}/src/main/proto/baseline.proto (100%)
rename oap-server/{metrics-baseline/src/test/java/org/apache/skywalking/oap/server/baseline => ai-pipeline/src/test/java}/BaselineQueryServer.java (99%)
rename oap-server/{metrics-baseline/src/test/java/org/apache/skywalking/oap/server/baseline => ai-pipeline/src/test/java}/BaselineServerTest.java (93%)
delete mode 100644 oap-server/metrics-baseline/pom.xml
delete mode 100644 oap-server/metrics-baseline/src/main/java/org/apache/skywalking/oap/server/baseline/BaselineModule.java
delete mode 100644 oap-server/metrics-baseline/src/main/java/org/apache/skywalking/oap/server/baseline/BaselineModuleProvider.java
delete mode 100644 oap-server/metrics-baseline/src/main/resources/META-INF/services/org.apache.skywalking.oap.server.library.module.ModuleDefine
delete mode 100755 oap-server/metrics-baseline/src/main/resources/META-INF/services/org.apache.skywalking.oap.server.library.module.ModuleProvider
rename oap-server/{metrics-baseline/src/main/java/org/apache/skywalking/oap/server/baseline/BaselineModuleConfig.java => server-core/src/main/java/org/apache/skywalking/oap/server/core/config/group/EndpointNameGroupService.java} (65%)
rename oap-server/{ai-pipeline/src/main/java/org/apache/skywalking/oap/server/ai/pipeline/services/api => server-core/src/main/java/org/apache/skywalking/oap/server/core/config/group/ai}/HttpUriPattern.java (94%)
rename oap-server/{ai-pipeline/src/main/java/org/apache/skywalking/oap/server/ai/pipeline/services/api => server-core/src/main/java/org/apache/skywalking/oap/server/core/config/group/ai}/HttpUriRecognition.java (90%)
diff --git a/docs/en/api/metrics-query-expression.md b/docs/en/api/metrics-query-expression.md
index 9f8a02a01a..74550e0934 100644
--- a/docs/en/api/metrics-query-expression.md
+++ b/docs/en/api/metrics-query-expression.md
@@ -511,7 +511,7 @@ baseline(service_resp_time, upper)
```
**Notice**:
-- This feature is required to enable the `baseline module` and deploy a baseline service. And the baseline service should implement the protocol of the [baseline.proto](../../../oap-server/metrics-baseline/src/main/proto/baseline.proto).
+- This feature is required to enable the `baseline module` and deploy a baseline service. And the baseline service should implement the protocol of the [baseline.proto](../../../oap-server/ai-pipeline/src/main/proto/baseline.proto).
Otherwise, the result will be empty.
- The baseline operation requires the relative metrics declared through baseline service.
Otherwise, the result will be empty, which means there is no baseline or predicated value.
diff --git a/docs/en/changes/changes.md b/docs/en/changes/changes.md
index 37c970a109..0ae72511d9 100644
--- a/docs/en/changes/changes.md
+++ b/docs/en/changes/changes.md
@@ -15,6 +15,7 @@
production-ready. Don't need H2 as default storage anymore.
* [Breaking Change] Bump up BanyanDB server version to 0.8.0. This version is not compatible with the previous
versions. Please upgrade the BanyanDB server to 0.8.0 before upgrading OAP to 10.2.0.
+* Move `metrics-baseline` module into `ai-pipeline` module.
#### OAP Server
diff --git a/oap-server/ai-pipeline/pom.xml b/oap-server/ai-pipeline/pom.xml
index 5b98b6fc56..ddcf480d7c 100644
--- a/oap-server/ai-pipeline/pom.xml
+++ b/oap-server/ai-pipeline/pom.xml
@@ -62,6 +62,21 @@
library-client
${project.version}
+
+ org.apache.skywalking
+ server-core
+ ${project.version}
+
+
+ io.grpc
+ grpc-testing
+ test
+
+
+ org.powermock
+ powermock-reflect
+ test
+
@@ -95,4 +110,4 @@
-
\ No newline at end of file
+
diff --git a/oap-server/ai-pipeline/src/main/java/org/apache/skywalking/oap/server/ai/pipeline/AIPipelineConfig.java b/oap-server/ai-pipeline/src/main/java/org/apache/skywalking/oap/server/ai/pipeline/AIPipelineConfig.java
index 64714a77d4..3cd005dc29 100644
--- a/oap-server/ai-pipeline/src/main/java/org/apache/skywalking/oap/server/ai/pipeline/AIPipelineConfig.java
+++ b/oap-server/ai-pipeline/src/main/java/org/apache/skywalking/oap/server/ai/pipeline/AIPipelineConfig.java
@@ -27,4 +27,6 @@ import org.apache.skywalking.oap.server.library.module.ModuleConfig;
public class AIPipelineConfig extends ModuleConfig {
private String uriRecognitionServerAddr;
private int uriRecognitionServerPort = 17128;
+ private String baselineServerAddr;
+ private int baselineServerPort = 18080;
}
diff --git a/oap-server/ai-pipeline/src/main/java/org/apache/skywalking/oap/server/ai/pipeline/AIPipelineModule.java b/oap-server/ai-pipeline/src/main/java/org/apache/skywalking/oap/server/ai/pipeline/AIPipelineModule.java
index 0ffe9d975a..d325447d3d 100644
--- a/oap-server/ai-pipeline/src/main/java/org/apache/skywalking/oap/server/ai/pipeline/AIPipelineModule.java
+++ b/oap-server/ai-pipeline/src/main/java/org/apache/skywalking/oap/server/ai/pipeline/AIPipelineModule.java
@@ -18,7 +18,7 @@
package org.apache.skywalking.oap.server.ai.pipeline;
-import org.apache.skywalking.oap.server.ai.pipeline.services.api.HttpUriRecognition;
+import org.apache.skywalking.oap.server.ai.pipeline.services.BaselineQueryService;
import org.apache.skywalking.oap.server.library.module.ModuleDefine;
public class AIPipelineModule extends ModuleDefine {
@@ -30,8 +30,6 @@ public class AIPipelineModule extends ModuleDefine {
@Override
public Class[] services() {
- return new Class[]{
- HttpUriRecognition.class
- };
+ return new Class[]{BaselineQueryService.class};
}
}
diff --git a/oap-server/ai-pipeline/src/main/java/org/apache/skywalking/oap/server/ai/pipeline/AIPipelineProvider.java b/oap-server/ai-pipeline/src/main/java/org/apache/skywalking/oap/server/ai/pipeline/AIPipelineProvider.java
index 6bc924781c..70dfffdce9 100644
--- a/oap-server/ai-pipeline/src/main/java/org/apache/skywalking/oap/server/ai/pipeline/AIPipelineProvider.java
+++ b/oap-server/ai-pipeline/src/main/java/org/apache/skywalking/oap/server/ai/pipeline/AIPipelineProvider.java
@@ -18,8 +18,11 @@
package org.apache.skywalking.oap.server.ai.pipeline;
+import org.apache.skywalking.oap.server.ai.pipeline.services.BaselineQueryService;
+import org.apache.skywalking.oap.server.ai.pipeline.services.BaselineQueryServiceImpl;
import org.apache.skywalking.oap.server.ai.pipeline.services.HttpUriRecognitionService;
-import org.apache.skywalking.oap.server.ai.pipeline.services.api.HttpUriRecognition;
+import org.apache.skywalking.oap.server.core.CoreModule;
+import org.apache.skywalking.oap.server.core.config.group.EndpointNameGroupService;
import org.apache.skywalking.oap.server.library.module.ModuleConfig;
import org.apache.skywalking.oap.server.library.module.ModuleDefine;
import org.apache.skywalking.oap.server.library.module.ModuleProvider;
@@ -56,25 +59,31 @@ public class AIPipelineProvider extends ModuleProvider {
@Override
public void prepare() throws ServiceNotProvidedException, ModuleStartException {
- final HttpUriRecognitionService httpUriRecognitionService = new HttpUriRecognitionService(
- aiPipelineConfig.getUriRecognitionServerAddr(),
- aiPipelineConfig.getUriRecognitionServerPort()
- );
- this.registerServiceImplementation(HttpUriRecognition.class, httpUriRecognitionService);
+ this.registerServiceImplementation(BaselineQueryService.class, new BaselineQueryServiceImpl(
+ aiPipelineConfig.getBaselineServerAddr(),
+ aiPipelineConfig.getBaselineServerPort()
+ ));
}
@Override
public void start() throws ServiceNotProvidedException, ModuleStartException {
-
+ final HttpUriRecognitionService httpUriRecognitionService = new HttpUriRecognitionService(
+ aiPipelineConfig.getUriRecognitionServerAddr(),
+ aiPipelineConfig.getUriRecognitionServerPort()
+ );
+ getManager().find(CoreModule.NAME).provider()
+ .getService(EndpointNameGroupService.class)
+ .startHttpUriRecognitionSvr(httpUriRecognitionService);
}
@Override
public void notifyAfterCompleted() throws ServiceNotProvidedException, ModuleStartException {
-
}
@Override
public String[] requiredModules() {
- return new String[0];
+ return new String[] {
+ CoreModule.NAME
+ };
}
}
diff --git a/oap-server/metrics-baseline/src/main/java/org/apache/skywalking/oap/server/baseline/service/BaselineQueryService.java b/oap-server/ai-pipeline/src/main/java/org/apache/skywalking/oap/server/ai/pipeline/services/BaselineQueryService.java
similarity index 96%
rename from oap-server/metrics-baseline/src/main/java/org/apache/skywalking/oap/server/baseline/service/BaselineQueryService.java
rename to oap-server/ai-pipeline/src/main/java/org/apache/skywalking/oap/server/ai/pipeline/services/BaselineQueryService.java
index 860c836d0b..1b97aff777 100644
--- a/oap-server/metrics-baseline/src/main/java/org/apache/skywalking/oap/server/baseline/service/BaselineQueryService.java
+++ b/oap-server/ai-pipeline/src/main/java/org/apache/skywalking/oap/server/ai/pipeline/services/BaselineQueryService.java
@@ -16,7 +16,7 @@
*
*/
-package org.apache.skywalking.oap.server.baseline.service;
+package org.apache.skywalking.oap.server.ai.pipeline.services;
import java.util.Map;
import org.apache.skywalking.oap.server.library.module.Service;
diff --git a/oap-server/metrics-baseline/src/main/java/org/apache/skywalking/oap/server/baseline/service/BaselineQueryServiceImpl.java b/oap-server/ai-pipeline/src/main/java/org/apache/skywalking/oap/server/ai/pipeline/services/BaselineQueryServiceImpl.java
similarity index 99%
rename from oap-server/metrics-baseline/src/main/java/org/apache/skywalking/oap/server/baseline/service/BaselineQueryServiceImpl.java
rename to oap-server/ai-pipeline/src/main/java/org/apache/skywalking/oap/server/ai/pipeline/services/BaselineQueryServiceImpl.java
index c7b43698ca..5f686b071e 100644
--- a/oap-server/metrics-baseline/src/main/java/org/apache/skywalking/oap/server/baseline/service/BaselineQueryServiceImpl.java
+++ b/oap-server/ai-pipeline/src/main/java/org/apache/skywalking/oap/server/ai/pipeline/services/BaselineQueryServiceImpl.java
@@ -16,7 +16,7 @@
*
*/
-package org.apache.skywalking.oap.server.baseline.service;
+package org.apache.skywalking.oap.server.ai.pipeline.services;
import com.google.common.cache.Cache;
import com.google.common.cache.CacheBuilder;
diff --git a/oap-server/ai-pipeline/src/main/java/org/apache/skywalking/oap/server/ai/pipeline/services/HttpUriRecognitionService.java b/oap-server/ai-pipeline/src/main/java/org/apache/skywalking/oap/server/ai/pipeline/services/HttpUriRecognitionService.java
index e4e37289e2..d98b748805 100644
--- a/oap-server/ai-pipeline/src/main/java/org/apache/skywalking/oap/server/ai/pipeline/services/HttpUriRecognitionService.java
+++ b/oap-server/ai-pipeline/src/main/java/org/apache/skywalking/oap/server/ai/pipeline/services/HttpUriRecognitionService.java
@@ -28,8 +28,8 @@ import org.apache.skywalking.oap.server.ai.pipeline.grpc.HttpUriRecognitionReque
import org.apache.skywalking.oap.server.ai.pipeline.grpc.HttpUriRecognitionResponse;
import org.apache.skywalking.oap.server.ai.pipeline.grpc.HttpUriRecognitionServiceGrpc;
import org.apache.skywalking.oap.server.ai.pipeline.grpc.HttpUriRecognitionSyncRequest;
-import org.apache.skywalking.oap.server.ai.pipeline.services.api.HttpUriPattern;
-import org.apache.skywalking.oap.server.ai.pipeline.services.api.HttpUriRecognition;
+import org.apache.skywalking.oap.server.core.config.group.ai.HttpUriPattern;
+import org.apache.skywalking.oap.server.core.config.group.ai.HttpUriRecognition;
import org.apache.skywalking.oap.server.library.client.grpc.GRPCClient;
import org.apache.skywalking.oap.server.library.util.StringUtil;
diff --git a/oap-server/metrics-baseline/src/main/java/org/apache/skywalking/oap/server/baseline/service/PredictServiceMetrics.java b/oap-server/ai-pipeline/src/main/java/org/apache/skywalking/oap/server/ai/pipeline/services/PredictServiceMetrics.java
similarity index 96%
rename from oap-server/metrics-baseline/src/main/java/org/apache/skywalking/oap/server/baseline/service/PredictServiceMetrics.java
rename to oap-server/ai-pipeline/src/main/java/org/apache/skywalking/oap/server/ai/pipeline/services/PredictServiceMetrics.java
index f2abf524d0..b5c4442bad 100644
--- a/oap-server/metrics-baseline/src/main/java/org/apache/skywalking/oap/server/baseline/service/PredictServiceMetrics.java
+++ b/oap-server/ai-pipeline/src/main/java/org/apache/skywalking/oap/server/ai/pipeline/services/PredictServiceMetrics.java
@@ -16,7 +16,7 @@
*
*/
-package org.apache.skywalking.oap.server.baseline.service;
+package org.apache.skywalking.oap.server.ai.pipeline.services;
import lombok.Builder;
import lombok.Data;
diff --git a/oap-server/metrics-baseline/src/main/java/org/apache/skywalking/oap/server/baseline/service/ServiceMetrics.java b/oap-server/ai-pipeline/src/main/java/org/apache/skywalking/oap/server/ai/pipeline/services/ServiceMetrics.java
similarity index 94%
rename from oap-server/metrics-baseline/src/main/java/org/apache/skywalking/oap/server/baseline/service/ServiceMetrics.java
rename to oap-server/ai-pipeline/src/main/java/org/apache/skywalking/oap/server/ai/pipeline/services/ServiceMetrics.java
index cb7de2f1a3..e46c94a70c 100644
--- a/oap-server/metrics-baseline/src/main/java/org/apache/skywalking/oap/server/baseline/service/ServiceMetrics.java
+++ b/oap-server/ai-pipeline/src/main/java/org/apache/skywalking/oap/server/ai/pipeline/services/ServiceMetrics.java
@@ -16,7 +16,7 @@
*
*/
-package org.apache.skywalking.oap.server.baseline.service;
+package org.apache.skywalking.oap.server.ai.pipeline.services;
import lombok.Builder;
import lombok.Data;
diff --git a/oap-server/metrics-baseline/src/main/proto/baseline.proto b/oap-server/ai-pipeline/src/main/proto/baseline.proto
similarity index 100%
rename from oap-server/metrics-baseline/src/main/proto/baseline.proto
rename to oap-server/ai-pipeline/src/main/proto/baseline.proto
diff --git a/oap-server/metrics-baseline/src/test/java/org/apache/skywalking/oap/server/baseline/BaselineQueryServer.java b/oap-server/ai-pipeline/src/test/java/BaselineQueryServer.java
similarity index 99%
rename from oap-server/metrics-baseline/src/test/java/org/apache/skywalking/oap/server/baseline/BaselineQueryServer.java
rename to oap-server/ai-pipeline/src/test/java/BaselineQueryServer.java
index b2eafd8597..65f3b72ce6 100644
--- a/oap-server/metrics-baseline/src/test/java/org/apache/skywalking/oap/server/baseline/BaselineQueryServer.java
+++ b/oap-server/ai-pipeline/src/test/java/BaselineQueryServer.java
@@ -16,19 +16,17 @@
*
*/
-package org.apache.skywalking.oap.server.baseline;
-
import com.google.protobuf.Empty;
import io.grpc.stub.StreamObserver;
import lombok.Builder;
import lombok.Data;
-import org.apache.skywalking.apm.baseline.v3.AlarmBaselineMetricsNames;
-import org.apache.skywalking.oap.server.core.analysis.DownSampling;
-import org.apache.skywalking.oap.server.core.analysis.TimeBucket;
-import org.apache.skywalking.apm.baseline.v3.AlarmBaselineServiceGrpc;
import org.apache.skywalking.apm.baseline.v3.AlarmBaselineLabeledValue;
+import org.apache.skywalking.apm.baseline.v3.AlarmBaselineMetricsNames;
+import org.apache.skywalking.apm.baseline.v3.AlarmBaselineServiceGrpc;
import org.apache.skywalking.apm.baseline.v3.AlarmBaselineValue;
import org.apache.skywalking.apm.baseline.v3.KeyStringValuePair;
+import org.apache.skywalking.oap.server.core.analysis.DownSampling;
+import org.apache.skywalking.oap.server.core.analysis.TimeBucket;
import java.util.ArrayList;
import java.util.Calendar;
diff --git a/oap-server/metrics-baseline/src/test/java/org/apache/skywalking/oap/server/baseline/BaselineServerTest.java b/oap-server/ai-pipeline/src/test/java/BaselineServerTest.java
similarity index 93%
rename from oap-server/metrics-baseline/src/test/java/org/apache/skywalking/oap/server/baseline/BaselineServerTest.java
rename to oap-server/ai-pipeline/src/test/java/BaselineServerTest.java
index 254ef3e4ec..2685a849af 100644
--- a/oap-server/metrics-baseline/src/test/java/org/apache/skywalking/oap/server/baseline/BaselineServerTest.java
+++ b/oap-server/ai-pipeline/src/test/java/BaselineServerTest.java
@@ -16,17 +16,15 @@
*
*/
-package org.apache.skywalking.oap.server.baseline;
-
import io.grpc.ManagedChannel;
import io.grpc.Server;
import io.grpc.inprocess.InProcessChannelBuilder;
import io.grpc.inprocess.InProcessServerBuilder;
import io.grpc.util.MutableHandlerRegistry;
import lombok.extern.slf4j.Slf4j;
-import org.apache.skywalking.oap.server.baseline.service.BaselineQueryServiceImpl;
-import org.apache.skywalking.oap.server.baseline.service.PredictServiceMetrics;
-import org.apache.skywalking.oap.server.baseline.service.ServiceMetrics;
+import org.apache.skywalking.oap.server.ai.pipeline.services.BaselineQueryServiceImpl;
+import org.apache.skywalking.oap.server.ai.pipeline.services.PredictServiceMetrics;
+import org.apache.skywalking.oap.server.ai.pipeline.services.ServiceMetrics;
import org.apache.skywalking.oap.server.core.analysis.DownSampling;
import org.apache.skywalking.oap.server.core.analysis.TimeBucket;
import org.junit.jupiter.api.AfterEach;
diff --git a/oap-server/metrics-baseline/pom.xml b/oap-server/metrics-baseline/pom.xml
deleted file mode 100644
index 34a2e0aa2c..0000000000
--- a/oap-server/metrics-baseline/pom.xml
+++ /dev/null
@@ -1,77 +0,0 @@
-
-
-
-
-
- oap-server
- org.apache.skywalking
- ${revision}
-
- 4.0.0
-
- metrics-baseline
-
-
-
- org.apache.skywalking
- server-core
- ${project.version}
-
-
- io.grpc
- grpc-testing
- test
-
-
- org.powermock
- powermock-reflect
- test
-
-
-
-
-
-
- org.xolstice.maven.plugins
- protobuf-maven-plugin
- ${protobuf-maven-plugin.version}
-
-
- com.google.protobuf:protoc:${com.google.protobuf.protoc.version}:exe:${os.detected.classifier}
-
- grpc-java
- io.grpc:protoc-gen-grpc-java:${protoc-gen-grpc-java.plugin.version}:exe:${os.detected.classifier}
-
-
-
-
-
- compile
- compile-custom
-
-
-
-
-
-
-
diff --git a/oap-server/metrics-baseline/src/main/java/org/apache/skywalking/oap/server/baseline/BaselineModule.java b/oap-server/metrics-baseline/src/main/java/org/apache/skywalking/oap/server/baseline/BaselineModule.java
deleted file mode 100644
index 0d27a456ac..0000000000
--- a/oap-server/metrics-baseline/src/main/java/org/apache/skywalking/oap/server/baseline/BaselineModule.java
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-package org.apache.skywalking.oap.server.baseline;
-
-import org.apache.skywalking.oap.server.baseline.service.BaselineQueryService;
-import org.apache.skywalking.oap.server.library.module.ModuleDefine;
-
-public class BaselineModule extends ModuleDefine {
- public static final String NAME = "baseline";
-
- public BaselineModule() {
- super(NAME);
- }
-
- @Override
- public Class[] services() {
- return new Class[]{BaselineQueryService.class};
- }
-
-}
diff --git a/oap-server/metrics-baseline/src/main/java/org/apache/skywalking/oap/server/baseline/BaselineModuleProvider.java b/oap-server/metrics-baseline/src/main/java/org/apache/skywalking/oap/server/baseline/BaselineModuleProvider.java
deleted file mode 100644
index 20e5b63398..0000000000
--- a/oap-server/metrics-baseline/src/main/java/org/apache/skywalking/oap/server/baseline/BaselineModuleProvider.java
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-package org.apache.skywalking.oap.server.baseline;
-
-import org.apache.skywalking.oap.server.baseline.service.BaselineQueryService;
-import org.apache.skywalking.oap.server.baseline.service.BaselineQueryServiceImpl;
-import org.apache.skywalking.oap.server.library.module.ModuleConfig;
-import org.apache.skywalking.oap.server.library.module.ModuleDefine;
-import org.apache.skywalking.oap.server.library.module.ModuleProvider;
-import org.apache.skywalking.oap.server.library.module.ModuleStartException;
-import org.apache.skywalking.oap.server.library.module.ServiceNotProvidedException;
-
-public class BaselineModuleProvider extends ModuleProvider {
- private BaselineModuleConfig config;
-
- @Override
- public String name() {
- return "default";
- }
-
- @Override
- public Class extends ModuleDefine> module() {
- return BaselineModule.class;
- }
-
- @Override
- public ConfigCreator extends ModuleConfig> newConfigCreator() {
- return new ConfigCreator() {
- @Override
- public Class type() {
- return BaselineModuleConfig.class;
- }
-
- @Override
- public void onInitialized(BaselineModuleConfig moduleConfig) {
- config = moduleConfig;
- }
- };
- }
-
- @Override
- public void prepare() throws ServiceNotProvidedException, ModuleStartException {
- this.registerServiceImplementation(BaselineQueryService.class, new BaselineQueryServiceImpl(config.getServiceHost(),
- config.getServicePort()));
- }
-
- @Override
- public void start() throws ServiceNotProvidedException, ModuleStartException {
-
- }
-
- @Override
- public void notifyAfterCompleted() throws ServiceNotProvidedException, ModuleStartException {
-
- }
-
- @Override
- public String[] requiredModules() {
- return new String[0];
- }
-}
diff --git a/oap-server/metrics-baseline/src/main/resources/META-INF/services/org.apache.skywalking.oap.server.library.module.ModuleDefine b/oap-server/metrics-baseline/src/main/resources/META-INF/services/org.apache.skywalking.oap.server.library.module.ModuleDefine
deleted file mode 100644
index fed83836ee..0000000000
--- a/oap-server/metrics-baseline/src/main/resources/META-INF/services/org.apache.skywalking.oap.server.library.module.ModuleDefine
+++ /dev/null
@@ -1,19 +0,0 @@
-#
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements. See the NOTICE file distributed with
-# this work for additional information regarding copyright ownership.
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-#
-
-org.apache.skywalking.oap.server.baseline.BaselineModule
diff --git a/oap-server/metrics-baseline/src/main/resources/META-INF/services/org.apache.skywalking.oap.server.library.module.ModuleProvider b/oap-server/metrics-baseline/src/main/resources/META-INF/services/org.apache.skywalking.oap.server.library.module.ModuleProvider
deleted file mode 100755
index 1721d6f41a..0000000000
--- a/oap-server/metrics-baseline/src/main/resources/META-INF/services/org.apache.skywalking.oap.server.library.module.ModuleProvider
+++ /dev/null
@@ -1,19 +0,0 @@
-#
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements. See the NOTICE file distributed with
-# this work for additional information regarding copyright ownership.
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-#
-
-org.apache.skywalking.oap.server.baseline.BaselineModuleProvider
diff --git a/oap-server/mqe-rt/pom.xml b/oap-server/mqe-rt/pom.xml
index fcaa3ae0f3..a70dec6fdd 100644
--- a/oap-server/mqe-rt/pom.xml
+++ b/oap-server/mqe-rt/pom.xml
@@ -46,7 +46,7 @@
org.apache.skywalking
- metrics-baseline
+ ai-pipeline
${project.version}
diff --git a/oap-server/mqe-rt/src/main/java/org/apache/skywalking/mqe/rt/MQEVisitorBase.java b/oap-server/mqe-rt/src/main/java/org/apache/skywalking/mqe/rt/MQEVisitorBase.java
index 9d44c232f9..a1691e9dec 100644
--- a/oap-server/mqe-rt/src/main/java/org/apache/skywalking/mqe/rt/MQEVisitorBase.java
+++ b/oap-server/mqe-rt/src/main/java/org/apache/skywalking/mqe/rt/MQEVisitorBase.java
@@ -40,9 +40,9 @@ import org.apache.skywalking.mqe.rt.operation.SortLabelValuesOp;
import org.apache.skywalking.mqe.rt.operation.SortValuesOp;
import org.apache.skywalking.mqe.rt.operation.TopNOfOp;
import org.apache.skywalking.mqe.rt.operation.TrendOp;
-import org.apache.skywalking.oap.server.baseline.BaselineModule;
-import org.apache.skywalking.oap.server.baseline.service.BaselineQueryService;
-import org.apache.skywalking.oap.server.baseline.service.PredictServiceMetrics;
+import org.apache.skywalking.oap.server.ai.pipeline.AIPipelineModule;
+import org.apache.skywalking.oap.server.ai.pipeline.services.BaselineQueryService;
+import org.apache.skywalking.oap.server.ai.pipeline.services.PredictServiceMetrics;
import org.apache.skywalking.oap.server.core.analysis.metrics.DataLabel;
import org.apache.skywalking.oap.server.core.analysis.metrics.DataTable;
import org.apache.skywalking.oap.server.core.query.mqe.ExpressionResult;
@@ -87,7 +87,7 @@ public abstract class MQEVisitorBase extends MQEParserBaseVisitorai-pipeline
mqe-grammar
mqe-rt
- metrics-baseline
diff --git a/oap-server/server-core/pom.xml b/oap-server/server-core/pom.xml
index b7d8be798d..784da5435c 100644
--- a/oap-server/server-core/pom.xml
+++ b/oap-server/server-core/pom.xml
@@ -102,11 +102,6 @@
io.zipkin.zipkin2
zipkin
-
- org.apache.skywalking
- ai-pipeline
- ${project.version}
-
org.apache.groovy
groovy
diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/CoreModule.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/CoreModule.java
index 176aca298a..91509759ea 100755
--- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/CoreModule.java
+++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/CoreModule.java
@@ -30,6 +30,7 @@ import org.apache.skywalking.oap.server.core.config.DownSamplingConfigService;
import org.apache.skywalking.oap.server.core.config.HierarchyDefinitionService;
import org.apache.skywalking.oap.server.core.config.IComponentLibraryCatalogService;
import org.apache.skywalking.oap.server.core.config.NamingControl;
+import org.apache.skywalking.oap.server.core.config.group.EndpointNameGroupService;
import org.apache.skywalking.oap.server.core.hierarchy.HierarchyService;
import org.apache.skywalking.oap.server.core.management.ui.menu.UIMenuManagementService;
import org.apache.skywalking.oap.server.core.management.ui.template.UITemplateManagementService;
@@ -108,6 +109,7 @@ public class CoreModule extends ModuleDefine {
classes.add(CommandService.class);
classes.add(HierarchyService.class);
+ classes.add(EndpointNameGroupService.class);
return classes.toArray(new Class[]{});
}
diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/CoreModuleProvider.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/CoreModuleProvider.java
index 7b61f0e901..f07049a285 100755
--- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/CoreModuleProvider.java
+++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/CoreModuleProvider.java
@@ -20,8 +20,6 @@ package org.apache.skywalking.oap.server.core;
import java.io.FileNotFoundException;
import java.io.IOException;
-import org.apache.skywalking.oap.server.ai.pipeline.AIPipelineModule;
-import org.apache.skywalking.oap.server.ai.pipeline.services.api.HttpUriRecognition;
import org.apache.skywalking.oap.server.configuration.api.ConfigurationModule;
import org.apache.skywalking.oap.server.configuration.api.DynamicConfigurationService;
import org.apache.skywalking.oap.server.core.analysis.ApdexThresholdConfig;
@@ -48,6 +46,7 @@ import org.apache.skywalking.oap.server.core.config.DownSamplingConfigService;
import org.apache.skywalking.oap.server.core.config.HierarchyDefinitionService;
import org.apache.skywalking.oap.server.core.config.IComponentLibraryCatalogService;
import org.apache.skywalking.oap.server.core.config.NamingControl;
+import org.apache.skywalking.oap.server.core.config.group.EndpointNameGroupService;
import org.apache.skywalking.oap.server.core.config.group.EndpointNameGrouping;
import org.apache.skywalking.oap.server.core.config.group.EndpointNameGroupingRuleWatcher;
import org.apache.skywalking.oap.server.core.config.group.openapi.EndpointNameGroupingRule4OpenapiWatcher;
@@ -190,6 +189,7 @@ public class CoreModuleProvider extends ModuleProvider {
endpointNameGrouping
);
this.registerServiceImplementation(NamingControl.class, namingControl);
+ this.registerServiceImplementation(EndpointNameGroupService.class, endpointNameGrouping);
MeterEntity.setNamingControl(namingControl);
try {
endpointNameGroupingRuleWatcher = new EndpointNameGroupingRuleWatcher(
@@ -396,11 +396,7 @@ public class CoreModuleProvider extends ModuleProvider {
grpcServer.addHandler(new HealthCheckServiceHandler());
grpcServer.addInterceptor(WatermarkGRPCInterceptor.INSTANCE);
- endpointNameGrouping.startHttpUriRecognitionSvr(
- getManager()
- .find(AIPipelineModule.NAME)
- .provider()
- .getService(HttpUriRecognition.class),
+ endpointNameGrouping.prepareForHTTPUrlRecognition(
getService(MetadataQueryService.class),
moduleConfig.getSyncPeriodHttpUriRecognitionPattern(),
moduleConfig.getTrainingPeriodHttpUriRecognitionPattern(),
@@ -490,7 +486,6 @@ public class CoreModuleProvider extends ModuleProvider {
return new String[] {
TelemetryModule.NAME,
ConfigurationModule.NAME,
- AIPipelineModule.NAME
};
}
}
diff --git a/oap-server/metrics-baseline/src/main/java/org/apache/skywalking/oap/server/baseline/BaselineModuleConfig.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/config/group/EndpointNameGroupService.java
similarity index 65%
rename from oap-server/metrics-baseline/src/main/java/org/apache/skywalking/oap/server/baseline/BaselineModuleConfig.java
rename to oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/config/group/EndpointNameGroupService.java
index 7bad4169c3..373061465a 100644
--- a/oap-server/metrics-baseline/src/main/java/org/apache/skywalking/oap/server/baseline/BaselineModuleConfig.java
+++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/config/group/EndpointNameGroupService.java
@@ -16,17 +16,14 @@
*
*/
-package org.apache.skywalking.oap.server.baseline;
+package org.apache.skywalking.oap.server.core.config.group;
-import lombok.Getter;
-import lombok.Setter;
-import org.apache.skywalking.oap.server.library.module.ModuleConfig;
+import org.apache.skywalking.oap.server.core.config.group.ai.HttpUriRecognition;
+import org.apache.skywalking.oap.server.library.module.Service;
-public class BaselineModuleConfig extends ModuleConfig {
- @Setter
- @Getter
- private String serviceHost = "";
- @Setter
- @Getter
- private int servicePort = 0;
+public interface EndpointNameGroupService extends Service {
+ /**
+ * Start the HTTP URL Recognition service to group endpoint name
+ */
+ void startHttpUriRecognitionSvr(final HttpUriRecognition httpUriRecognitionSvr);
}
diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/config/group/EndpointNameGrouping.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/config/group/EndpointNameGrouping.java
index 5647c30590..81de84d04f 100644
--- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/config/group/EndpointNameGrouping.java
+++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/config/group/EndpointNameGrouping.java
@@ -30,8 +30,11 @@ import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.Executors;
import java.util.concurrent.TimeUnit;
import java.util.concurrent.atomic.AtomicInteger;
-import org.apache.skywalking.oap.server.ai.pipeline.services.api.HttpUriPattern;
-import org.apache.skywalking.oap.server.ai.pipeline.services.api.HttpUriRecognition;
+
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import org.apache.skywalking.oap.server.core.config.group.ai.HttpUriPattern;
+import org.apache.skywalking.oap.server.core.config.group.ai.HttpUriRecognition;
import org.apache.skywalking.oap.server.core.config.group.openapi.EndpointGroupingRule4Openapi;
import org.apache.skywalking.oap.server.core.config.group.uri.quickmatch.QuickUriGroupingRule;
import org.apache.skywalking.oap.server.core.query.MetadataQueryService;
@@ -46,7 +49,7 @@ import lombok.Setter;
import lombok.extern.slf4j.Slf4j;
@Slf4j
-public class EndpointNameGrouping {
+public class EndpointNameGrouping implements EndpointNameGroupService {
public static final String ABANDONED_ENDPOINT_NAME = "_abandoned";
/**
@@ -83,6 +86,10 @@ public class EndpointNameGrouping {
* The max number of HTTP URIs per service for further URI pattern recognition.
*/
private int maxHttpUrisNumberPerService = 3000;
+ /**
+ * Prepare for start HTTP URL Recognition config
+ */
+ private HTTPUrlRecognitionConfig httpUrlRecognitionConfig;
/**
* Format the endpoint name according to the API patterns.
@@ -185,68 +192,85 @@ public class EndpointNameGrouping {
return new Tuple2<>(formatResult.getReplacedName(), formatResult.isMatch());
}
- public void startHttpUriRecognitionSvr(final HttpUriRecognition httpUriRecognitionSvr,
- final MetadataQueryService metadataQueryService,
- int syncPeriodHttpUriRecognitionPattern,
- int trainingPeriodHttpUriRecognitionPattern,
- int maxEndpointCandidatePerSvr) {
+ public void prepareForHTTPUrlRecognition(final MetadataQueryService metadataQueryService,
+ int syncPeriodHttpUriRecognitionPattern,
+ int trainingPeriodHttpUriRecognitionPattern,
+ int maxEndpointCandidatePerSvr) {
this.maxHttpUrisNumberPerService = maxEndpointCandidatePerSvr;
- if (!httpUriRecognitionSvr.isInitialized()) {
+ this.httpUrlRecognitionConfig = new HTTPUrlRecognitionConfig(
+ metadataQueryService, syncPeriodHttpUriRecognitionPattern, trainingPeriodHttpUriRecognitionPattern,
+ maxEndpointCandidatePerSvr
+ );
+ }
+
+ @Override
+ public void startHttpUriRecognitionSvr(HttpUriRecognition httpUriRecognitionSvr) {
+ if (this.httpUrlRecognitionConfig == null || !httpUriRecognitionSvr.isInitialized()) {
return;
}
this.quickUriGroupingRule = new QuickUriGroupingRule();
+ HTTPUrlRecognitionConfig config = this.httpUrlRecognitionConfig;
Executors.newSingleThreadScheduledExecutor()
- .scheduleWithFixedDelay(
- new RunnableWithExceptionProtection(
- () -> {
- int currentExecutionCounter = aiPipelineExecutionCounter.incrementAndGet();
- if (currentExecutionCounter % trainingPeriodHttpUriRecognitionPattern == 0) {
- // Send the cached URIs to the recognition server to build new patterns.
- cachedHttpUris.forEach((serviceName, httpUris) -> {
- final List candidates4UriPatterns = new ArrayList<>(
- 3000);
- httpUris.forEach((uri, candidates) -> {
- if (candidates.size() == 0) {
- //unrecognized uri
- candidates4UriPatterns.add(new HttpUriRecognition.HTTPUri(uri));
- } else {
- String candidateUri;
- while ((candidateUri = candidates.poll()) != null) {
- candidates4UriPatterns.add(
- new HttpUriRecognition.HTTPUri(candidateUri));
- }
- }
- });
+ .scheduleWithFixedDelay(
+ new RunnableWithExceptionProtection(
+ () -> {
+ int currentExecutionCounter = aiPipelineExecutionCounter.incrementAndGet();
+ if (currentExecutionCounter % config.trainingPeriodHttpUriRecognitionPattern == 0) {
+ // Send the cached URIs to the recognition server to build new patterns.
+ cachedHttpUris.forEach((serviceName, httpUris) -> {
+ final List candidates4UriPatterns = new ArrayList<>(
+ 3000);
+ httpUris.forEach((uri, candidates) -> {
+ if (candidates.size() == 0) {
+ //unrecognized uri
+ candidates4UriPatterns.add(new HttpUriRecognition.HTTPUri(uri));
+ } else {
+ String candidateUri;
+ while ((candidateUri = candidates.poll()) != null) {
+ candidates4UriPatterns.add(
+ new HttpUriRecognition.HTTPUri(candidateUri));
+ }
+ }
+ });
- // Reset the cache once the URIs are sent to the recognition server.
- httpUris.clear();
- httpUriRecognitionSvr.feedRawData(serviceName, candidates4UriPatterns);
- });
- }
- if (currentExecutionCounter % syncPeriodHttpUriRecognitionPattern == 0) {
- // Sync with the recognition server per 1 min to get the latest patterns.
- try {
- metadataQueryService.listServices(null, null).forEach(
- service -> {
- final List patterns
- = httpUriRecognitionSvr.fetchAllPatterns(service.getName());
- if (CollectionUtils.isNotEmpty(patterns)) {
- patterns.forEach(
- p -> quickUriGroupingRule.addRule(
- service.getName(), p.getPattern()));
+ // Reset the cache once the URIs are sent to the recognition server.
+ httpUris.clear();
+ httpUriRecognitionSvr.feedRawData(serviceName, candidates4UriPatterns);
+ });
+ }
+ if (currentExecutionCounter % config.syncPeriodHttpUriRecognitionPattern == 0) {
+ // Sync with the recognition server per 1 min to get the latest patterns.
+ try {
+ config.metadataQueryService.listServices(null, null).forEach(
+ service -> {
+ final List patterns
+ = httpUriRecognitionSvr.fetchAllPatterns(service.getName());
+ if (CollectionUtils.isNotEmpty(patterns)) {
+ patterns.forEach(
+ p -> quickUriGroupingRule.addRule(
+ service.getName(), p.getPattern()));
- }
- }
- );
- } catch (IOException e) {
- log.error("Fail to load all services.", e);
- }
+ }
+ }
+ );
+ } catch (IOException e) {
+ log.error("Fail to load all services.", e);
+ }
- }
- },
- t -> log.error("Fail to recognize URI patterns.", t)
- ), 60, 1, TimeUnit.SECONDS
- );
+ }
+ },
+ t -> log.error("Fail to recognize URI patterns.", t)
+ ), 60, 1, TimeUnit.SECONDS
+ );
}
+
+ @Data
+ @AllArgsConstructor
+ private static class HTTPUrlRecognitionConfig {
+ private MetadataQueryService metadataQueryService;
+ private int syncPeriodHttpUriRecognitionPattern;
+ private int trainingPeriodHttpUriRecognitionPattern;
+ private int maxEndpointCandidatePerSvr;
+ }
}
diff --git a/oap-server/ai-pipeline/src/main/java/org/apache/skywalking/oap/server/ai/pipeline/services/api/HttpUriPattern.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/config/group/ai/HttpUriPattern.java
similarity index 94%
rename from oap-server/ai-pipeline/src/main/java/org/apache/skywalking/oap/server/ai/pipeline/services/api/HttpUriPattern.java
rename to oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/config/group/ai/HttpUriPattern.java
index bb3f0a588d..cc04ac6d31 100644
--- a/oap-server/ai-pipeline/src/main/java/org/apache/skywalking/oap/server/ai/pipeline/services/api/HttpUriPattern.java
+++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/config/group/ai/HttpUriPattern.java
@@ -16,7 +16,7 @@
*
*/
-package org.apache.skywalking.oap.server.ai.pipeline.services.api;
+package org.apache.skywalking.oap.server.core.config.group.ai;
import lombok.Getter;
import lombok.RequiredArgsConstructor;
diff --git a/oap-server/ai-pipeline/src/main/java/org/apache/skywalking/oap/server/ai/pipeline/services/api/HttpUriRecognition.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/config/group/ai/HttpUriRecognition.java
similarity index 90%
rename from oap-server/ai-pipeline/src/main/java/org/apache/skywalking/oap/server/ai/pipeline/services/api/HttpUriRecognition.java
rename to oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/config/group/ai/HttpUriRecognition.java
index 40daefc1b5..39724d4351 100644
--- a/oap-server/ai-pipeline/src/main/java/org/apache/skywalking/oap/server/ai/pipeline/services/api/HttpUriRecognition.java
+++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/config/group/ai/HttpUriRecognition.java
@@ -16,17 +16,16 @@
*
*/
-package org.apache.skywalking.oap.server.ai.pipeline.services.api;
+package org.apache.skywalking.oap.server.core.config.group.ai;
import java.util.List;
import lombok.Getter;
import lombok.RequiredArgsConstructor;
-import org.apache.skywalking.oap.server.library.module.Service;
/**
* HttpUriRecognition is a service to recognize the patterns of HTTP URIs
*/
-public interface HttpUriRecognition extends Service {
+public interface HttpUriRecognition {
/**
* @return true if the service is initialized and active.
diff --git a/oap-server/server-core/src/test/java/org/apache/skywalking/oap/server/core/CoreModuleTest.java b/oap-server/server-core/src/test/java/org/apache/skywalking/oap/server/core/CoreModuleTest.java
index 4f6276d97a..a8e0098a72 100644
--- a/oap-server/server-core/src/test/java/org/apache/skywalking/oap/server/core/CoreModuleTest.java
+++ b/oap-server/server-core/src/test/java/org/apache/skywalking/oap/server/core/CoreModuleTest.java
@@ -26,6 +26,6 @@ public class CoreModuleTest {
public void testOpenServiceList() {
CoreModule coreModule = new CoreModule();
- Assertions.assertEquals(48, coreModule.services().length);
+ Assertions.assertEquals(49, coreModule.services().length);
}
}
diff --git a/oap-server/server-starter/pom.xml b/oap-server/server-starter/pom.xml
index ab9961114d..51f79f3fc6 100644
--- a/oap-server/server-starter/pom.xml
+++ b/oap-server/server-starter/pom.xml
@@ -296,11 +296,6 @@
storage-elasticsearch-plugin
${project.version}
-
- org.apache.skywalking
- metrics-baseline
- ${project.version}
-
diff --git a/oap-server/server-starter/src/main/resources/application.yml b/oap-server/server-starter/src/main/resources/application.yml
index 469c4ace7f..674f2bb481 100644
--- a/oap-server/server-starter/src/main/resources/application.yml
+++ b/oap-server/server-starter/src/main/resources/application.yml
@@ -693,9 +693,5 @@ ai-pipeline:
default:
uriRecognitionServerAddr: ${SW_AI_PIPELINE_URI_RECOGNITION_SERVER_ADDR:}
uriRecognitionServerPort: ${SW_AI_PIPELINE_URI_RECOGNITION_SERVER_PORT:17128}
-
-baseline:
- selector: ${SW_BASELINE:default}
- default:
- serviceHost: ${SW_BASELINE_SERVICE_HOST:}
- servicePort: ${SW_BASELINE_SERVICE_PORT:18080}
+ baselineServerAddr: ${SW_API_PIPELINE_BASELINE_SERVICE_HOST:}
+ baselineServerPort: ${SW_API_PIPELINE_BASELINE_SERVICE_PORT:18080}
diff --git a/test/e2e-v2/cases/alarm/banyandb/docker-compose.yml b/test/e2e-v2/cases/alarm/banyandb/docker-compose.yml
index 3be2aca755..9c42ee12e1 100644
--- a/test/e2e-v2/cases/alarm/banyandb/docker-compose.yml
+++ b/test/e2e-v2/cases/alarm/banyandb/docker-compose.yml
@@ -30,7 +30,7 @@ services:
environment:
SW_STORAGE: banyandb
SW_SEARCHABLE_ALARM_TAG_KEYS: level,receivers
- SW_BASELINE_SERVICE_HOST: baseline-server
+ SW_API_PIPELINE_BASELINE_SERVICE_HOST: baseline-server
ports:
- 12800
depends_on:
diff --git a/test/e2e-v2/cases/alarm/es/docker-compose.yml b/test/e2e-v2/cases/alarm/es/docker-compose.yml
index 6f30d90658..6c066a40a5 100644
--- a/test/e2e-v2/cases/alarm/es/docker-compose.yml
+++ b/test/e2e-v2/cases/alarm/es/docker-compose.yml
@@ -37,7 +37,7 @@ services:
environment:
SW_STORAGE: elasticsearch
SW_SEARCHABLE_ALARM_TAG_KEYS: level,receivers
- SW_BASELINE_SERVICE_HOST: baseline-server
+ SW_API_PIPELINE_BASELINE_SERVICE_HOST: baseline-server
ports:
- 12800
depends_on:
diff --git a/test/e2e-v2/cases/alarm/es/es-sharding/docker-compose.yml b/test/e2e-v2/cases/alarm/es/es-sharding/docker-compose.yml
index 22f38c98fb..a8cef85fd9 100644
--- a/test/e2e-v2/cases/alarm/es/es-sharding/docker-compose.yml
+++ b/test/e2e-v2/cases/alarm/es/es-sharding/docker-compose.yml
@@ -38,7 +38,7 @@ services:
SW_STORAGE: elasticsearch
SW_SEARCHABLE_ALARM_TAG_KEYS: level,receivers
SW_STORAGE_ES_LOGIC_SHARDING: "true"
- SW_BASELINE_SERVICE_HOST: baseline-server
+ SW_API_PIPELINE_BASELINE_SERVICE_HOST: baseline-server
ports:
- 12800
depends_on:
diff --git a/test/e2e-v2/cases/alarm/mysql/docker-compose.yml b/test/e2e-v2/cases/alarm/mysql/docker-compose.yml
index 19711a7e73..ce79c178f2 100644
--- a/test/e2e-v2/cases/alarm/mysql/docker-compose.yml
+++ b/test/e2e-v2/cases/alarm/mysql/docker-compose.yml
@@ -39,7 +39,7 @@ services:
environment:
SW_STORAGE: mysql
SW_SEARCHABLE_ALARM_TAG_KEYS: level,receivers
- SW_BASELINE_SERVICE_HOST: baseline-server
+ SW_API_PIPELINE_BASELINE_SERVICE_HOST: baseline-server
entrypoint: ['sh', '-c', '/download-mysql.sh /skywalking/oap-libs && /skywalking/docker-entrypoint.sh']
ports:
- 12800
diff --git a/test/e2e-v2/cases/alarm/postgres/docker-compose.yml b/test/e2e-v2/cases/alarm/postgres/docker-compose.yml
index 98c8c258e1..1dc4ae7775 100644
--- a/test/e2e-v2/cases/alarm/postgres/docker-compose.yml
+++ b/test/e2e-v2/cases/alarm/postgres/docker-compose.yml
@@ -39,7 +39,7 @@ services:
SW_STORAGE: postgresql
SW_JDBC_URL: "jdbc:postgresql://postgres:5432/skywalking"
SW_SEARCHABLE_ALARM_TAG_KEYS: level,receivers
- SW_BASELINE_SERVICE_HOST: baseline-server
+ SW_API_PIPELINE_BASELINE_SERVICE_HOST: baseline-server
ports:
- 12800
depends_on:
diff --git a/test/e2e-v2/cases/mqe/docker-compose.yml b/test/e2e-v2/cases/mqe/docker-compose.yml
index 337189fe47..457fd337b7 100644
--- a/test/e2e-v2/cases/mqe/docker-compose.yml
+++ b/test/e2e-v2/cases/mqe/docker-compose.yml
@@ -23,7 +23,7 @@ services:
volumes:
- ./oal/core.oal:/skywalking/config/oal/core.oal
environment:
- SW_BASELINE_SERVICE_HOST: baseline-server
+ SW_API_PIPELINE_BASELINE_SERVICE_HOST: baseline-server
depends_on:
banyandb:
condition: service_healthy