未验证 提交 6feeaf6e 编写于 作者: Z Zhenxu Ke 提交者: GitHub

Update submodule to sync namespaced proto files (#6026)

* update submodule to sync namespaced proto files

* add compat E2E test and update mock collector

* add changelog, fix GHA syntax, compat Java agent

* highlight notes, use archive dist, revert compat in agent

* polish changelog, add missing `-javaagent` in provider

* fix wrong position of JAVA_OPTS

* polish changelog
上级 8d33f027
# 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.
name: E2E
on:
pull_request:
push:
branches:
- master
env:
SKIP_TEST: true
jobs:
Compatability:
name: Compatability
runs-on: ubuntu-latest
timeout-minutes: 30
env:
SW_SIMPLE_CASE: compat
SW_AGENT_JDK_VERSION: 11
SW_OAP_BASE_IMAGE: adoptopenjdk/openjdk11:alpine
steps:
- uses: actions/checkout@v2
with:
submodules: true
- name: Cache local Maven repository
uses: actions/cache@v2
with:
path: ~/.m2/repository
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
restore-keys: |
${{ runner.os }}-maven-
- name: Set Up Java
uses: actions/setup-java@v1
with:
java-version: 11
- name: Build Docker Image
run: make docker
- name: Copy dist package
run: cp -R dist test/e2e/
- name: Compatability Test (8.3.0 Agent)
run: ./mvnw --batch-mode -f test/e2e/pom.xml -am -DfailIfNoTests=false verify -Dit.test=org.apache.skywalking.e2e.simple.SimpleE2E
- uses: actions/upload-artifact@v1
if: failure()
with:
name: logs
path: logs
......@@ -7,6 +7,7 @@ Release Notes.
#### Project
* Incompatible with previous releases when use H2/MySQL/TiDB storage options, due to support multiple alarm rules triggered for one entity.
* Chore: adapt `create_source_release.sh` to make it runnable on Linux.
* Add `package` to `.proto` files, prevent polluting top-level namespace in some languages; The OAP server supports previous agent releases, whereas the previous OAP server (<=8.3.0) won't recognize newer agents since this version (>= 8.4.0).
#### Java Agent
* The operation name of quartz-scheduler plugin, has been changed as the `quartz-scheduler/${className}` format.
......@@ -21,7 +22,7 @@ Release Notes.
* Support Kafka MirrorMaker 2.0 to replicate topics between Kafka clusters.
* Add the rule name field to alarm record storage entity as a part of ID, to support multiple alarm rules triggered for one entity. The scope id has been removed from the ID.
* Fix MAL concurrent execution issues.
* Fix group name can't be query in the GraphQL.
* Fix group name can't be queried in the GraphQL.
* Fix potential gRPC connection leak(not closed) for the channels among OAP instances.
* Filter OAP instances(unassigned in booting stage) of the empty IP in KubernetesCoordinator.
* Add component ID for Python aiohttp plugin requester and server.
......
Subproject commit 754995b9bd4e64c34e970df3c3011efc9181c2a3
Subproject commit 8c10f757a9088fef06d6d8b986b8a0650b7fa106
......@@ -28,6 +28,7 @@ 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;
import org.apache.skywalking.oap.server.receiver.browser.module.BrowserModule;
import org.apache.skywalking.oap.server.receiver.browser.provider.handler.grpc.BrowserPerfServiceHandlerCompat;
import org.apache.skywalking.oap.server.receiver.browser.provider.handler.grpc.BrowserPerfServiceHandler;
import org.apache.skywalking.oap.server.receiver.browser.provider.handler.rest.BrowserErrorLogReportListServletHandler;
import org.apache.skywalking.oap.server.receiver.browser.provider.handler.rest.BrowserErrorLogReportSingleServletHandler;
......@@ -74,9 +75,10 @@ public class BrowserModuleProvider extends ModuleProvider {
GRPCHandlerRegister grpcHandlerRegister = getManager().find(SharingServerModule.NAME)
.provider().getService(GRPCHandlerRegister.class);
// grpc
grpcHandlerRegister.addHandler(
new BrowserPerfServiceHandler(
getManager(), moduleConfig, perfDataListenerManager(), errorLogListenerManager()));
BrowserPerfServiceHandler browserPerfServiceHandler = new BrowserPerfServiceHandler(
getManager(), moduleConfig, perfDataListenerManager(), errorLogListenerManager());
grpcHandlerRegister.addHandler(browserPerfServiceHandler);
grpcHandlerRegister.addHandler(new BrowserPerfServiceHandlerCompat(browserPerfServiceHandler));
// rest
JettyHandlerRegister jettyHandlerRegister = getManager().find(SharingServerModule.NAME)
......
/*
* 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.receiver.browser.provider.handler.grpc;
import io.grpc.stub.StreamObserver;
import lombok.RequiredArgsConstructor;
import org.apache.skywalking.apm.network.common.v3.Commands;
import org.apache.skywalking.apm.network.language.agent.v3.BrowserErrorLog;
import org.apache.skywalking.apm.network.language.agent.v3.BrowserPerfData;
import org.apache.skywalking.apm.network.language.agent.v3.compat.BrowserPerfServiceGrpc;
import org.apache.skywalking.oap.server.library.server.grpc.GRPCHandler;
@RequiredArgsConstructor
public class BrowserPerfServiceHandlerCompat extends BrowserPerfServiceGrpc.BrowserPerfServiceImplBase implements GRPCHandler {
private final BrowserPerfServiceHandler delegate;
@Override
public void collectPerfData(final BrowserPerfData request, final StreamObserver<Commands> responseObserver) {
delegate.collectPerfData(request, responseObserver);
}
@Override
public StreamObserver<BrowserErrorLog> collectErrorLogs(final StreamObserver<Commands> responseObserver) {
return delegate.collectErrorLogs(responseObserver);
}
}
......@@ -27,6 +27,7 @@ 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;
import org.apache.skywalking.oap.server.receiver.clr.module.CLRModule;
import org.apache.skywalking.oap.server.receiver.clr.provider.handler.CLRMetricReportServiceHandlerCompat;
import org.apache.skywalking.oap.server.receiver.clr.provider.handler.CLRMetricReportServiceHandler;
import org.apache.skywalking.oap.server.receiver.sharing.server.SharingServerModule;
......@@ -66,7 +67,9 @@ public class CLRModuleProvider extends ModuleProvider {
GRPCHandlerRegister grpcHandlerRegister = getManager().find(SharingServerModule.NAME)
.provider()
.getService(GRPCHandlerRegister.class);
grpcHandlerRegister.addHandler(new CLRMetricReportServiceHandler(getManager()));
CLRMetricReportServiceHandler clrMetricReportServiceHandler = new CLRMetricReportServiceHandler(getManager());
grpcHandlerRegister.addHandler(clrMetricReportServiceHandler);
grpcHandlerRegister.addHandler(new CLRMetricReportServiceHandlerCompat(clrMetricReportServiceHandler));
}
@Override
......
/*
* 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.receiver.clr.provider.handler;
import io.grpc.stub.StreamObserver;
import lombok.RequiredArgsConstructor;
import org.apache.skywalking.apm.network.common.v3.Commands;
import org.apache.skywalking.apm.network.language.agent.v3.CLRMetricCollection;
import org.apache.skywalking.apm.network.language.agent.v3.compat.CLRMetricReportServiceGrpc;
import org.apache.skywalking.oap.server.library.server.grpc.GRPCHandler;
@RequiredArgsConstructor
public class CLRMetricReportServiceHandlerCompat extends CLRMetricReportServiceGrpc.CLRMetricReportServiceImplBase implements GRPCHandler {
private final CLRMetricReportServiceHandler delegate;
@Override
public void collect(final CLRMetricCollection request, final StreamObserver<Commands> responseObserver) {
delegate.collect(request, responseObserver);
}
}
......@@ -27,6 +27,7 @@ import org.apache.skywalking.oap.server.library.module.ModuleProvider;
import org.apache.skywalking.oap.server.library.module.ModuleStartException;
import org.apache.skywalking.oap.server.receiver.jvm.module.JVMModule;
import org.apache.skywalking.oap.server.receiver.jvm.provider.handler.JVMMetricReportServiceHandler;
import org.apache.skywalking.oap.server.receiver.jvm.provider.handler.JVMMetricReportServiceHandlerCompat;
import org.apache.skywalking.oap.server.receiver.sharing.server.SharingServerModule;
public class JVMModuleProvider extends ModuleProvider {
......@@ -61,7 +62,9 @@ public class JVMModuleProvider extends ModuleProvider {
GRPCHandlerRegister grpcHandlerRegister = getManager().find(SharingServerModule.NAME)
.provider()
.getService(GRPCHandlerRegister.class);
grpcHandlerRegister.addHandler(new JVMMetricReportServiceHandler(getManager()));
JVMMetricReportServiceHandler jvmMetricReportServiceHandler = new JVMMetricReportServiceHandler(getManager());
grpcHandlerRegister.addHandler(jvmMetricReportServiceHandler);
grpcHandlerRegister.addHandler(new JVMMetricReportServiceHandlerCompat(jvmMetricReportServiceHandler));
}
@Override
......
/*
* 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.receiver.jvm.provider.handler;
import io.grpc.stub.StreamObserver;
import lombok.RequiredArgsConstructor;
import org.apache.skywalking.apm.network.common.v3.Commands;
import org.apache.skywalking.apm.network.language.agent.v3.JVMMetricCollection;
import org.apache.skywalking.apm.network.language.agent.v3.compat.JVMMetricReportServiceGrpc;
import org.apache.skywalking.oap.server.library.server.grpc.GRPCHandler;
@RequiredArgsConstructor
public class JVMMetricReportServiceHandlerCompat extends JVMMetricReportServiceGrpc.JVMMetricReportServiceImplBase implements GRPCHandler {
private final JVMMetricReportServiceHandler delegate;
@Override
public void collect(final JVMMetricCollection request, final StreamObserver<Commands> responseObserver) {
delegate.collect(request, responseObserver);
}
}
......@@ -26,6 +26,7 @@ import org.apache.skywalking.oap.server.library.module.ModuleDefine;
import org.apache.skywalking.oap.server.library.module.ModuleProvider;
import org.apache.skywalking.oap.server.receiver.register.module.RegisterModule;
import org.apache.skywalking.oap.server.receiver.register.provider.handler.v8.grpc.ManagementServiceHandler;
import org.apache.skywalking.oap.server.receiver.register.provider.handler.v8.grpc.ManagementServiceHandlerCompat;
import org.apache.skywalking.oap.server.receiver.register.provider.handler.v8.rest.ManagementServiceKeepAliveHandler;
import org.apache.skywalking.oap.server.receiver.register.provider.handler.v8.rest.ManagementServiceReportPropertiesHandler;
import org.apache.skywalking.oap.server.receiver.sharing.server.SharingServerModule;
......@@ -56,7 +57,9 @@ public class RegisterModuleProvider extends ModuleProvider {
GRPCHandlerRegister grpcHandlerRegister = getManager().find(SharingServerModule.NAME)
.provider()
.getService(GRPCHandlerRegister.class);
grpcHandlerRegister.addHandler(new ManagementServiceHandler(getManager()));
ManagementServiceHandler managementServiceHandler = new ManagementServiceHandler(getManager());
grpcHandlerRegister.addHandler(managementServiceHandler);
grpcHandlerRegister.addHandler(new ManagementServiceHandlerCompat(managementServiceHandler));
JettyHandlerRegister jettyHandlerRegister = getManager().find(SharingServerModule.NAME)
.provider()
......
/*
* 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.receiver.register.provider.handler.v8.grpc;
import io.grpc.stub.StreamObserver;
import lombok.RequiredArgsConstructor;
import org.apache.skywalking.apm.network.common.v3.Commands;
import org.apache.skywalking.apm.network.management.v3.InstancePingPkg;
import org.apache.skywalking.apm.network.management.v3.InstanceProperties;
import org.apache.skywalking.apm.network.management.v3.compat.ManagementServiceGrpc;
import org.apache.skywalking.oap.server.library.server.grpc.GRPCHandler;
@RequiredArgsConstructor
public class ManagementServiceHandlerCompat extends ManagementServiceGrpc.ManagementServiceImplBase implements GRPCHandler {
private final ManagementServiceHandler delegate;
@Override
public void reportInstanceProperties(final InstanceProperties request, final StreamObserver<Commands> responseObserver) {
delegate.reportInstanceProperties(request, responseObserver);
}
@Override
public void keepAlive(final InstancePingPkg request, final StreamObserver<Commands> responseObserver) {
delegate.keepAlive(request, responseObserver);
}
}
/*
* 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.aop.server.receiver.mesh;
import io.grpc.stub.StreamObserver;
import lombok.RequiredArgsConstructor;
import org.apache.skywalking.apm.network.servicemesh.v3.MeshProbeDownstream;
import org.apache.skywalking.apm.network.servicemesh.v3.ServiceMeshMetric;
import org.apache.skywalking.apm.network.servicemesh.v3.compat.ServiceMeshMetricServiceGrpc;
@RequiredArgsConstructor
public class MeshGRPCHandlerCompat extends ServiceMeshMetricServiceGrpc.ServiceMeshMetricServiceImplBase {
private final MeshGRPCHandler delegate;
@Override
public StreamObserver<ServiceMeshMetric> collect(final StreamObserver<MeshProbeDownstream> responseObserver) {
return delegate.collect(responseObserver);
}
}
......@@ -68,7 +68,9 @@ public class MeshReceiverProvider extends ModuleProvider {
GRPCHandlerRegister service = getManager().find(SharingServerModule.NAME)
.provider()
.getService(GRPCHandlerRegister.class);
service.addHandler(new MeshGRPCHandler(getManager()));
MeshGRPCHandler meshGRPCHandler = new MeshGRPCHandler(getManager());
service.addHandler(meshGRPCHandler);
service.addHandler(new MeshGRPCHandlerCompat(meshGRPCHandler));
}
@Override
......
......@@ -28,6 +28,7 @@ import org.apache.skywalking.oap.server.library.module.ModuleProvider;
import org.apache.skywalking.oap.server.library.module.ServiceNotProvidedException;
import org.apache.skywalking.oap.server.receiver.meter.module.MeterReceiverModule;
import org.apache.skywalking.oap.server.receiver.meter.provider.handler.MeterServiceHandler;
import org.apache.skywalking.oap.server.receiver.meter.provider.handler.MeterServiceHandlerCompat;
import org.apache.skywalking.oap.server.receiver.sharing.server.SharingServerModule;
public class MeterReceiverProvider extends ModuleProvider {
......@@ -61,7 +62,9 @@ public class MeterReceiverProvider extends ModuleProvider {
GRPCHandlerRegister grpcHandlerRegister = getManager().find(SharingServerModule.NAME)
.provider()
.getService(GRPCHandlerRegister.class);
grpcHandlerRegister.addHandler(new MeterServiceHandler(processService));
MeterServiceHandler meterServiceHandlerCompat = new MeterServiceHandler(processService);
grpcHandlerRegister.addHandler(meterServiceHandlerCompat);
grpcHandlerRegister.addHandler(new MeterServiceHandlerCompat(meterServiceHandlerCompat));
}
@Override
......
/*
* 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.receiver.meter.provider.handler;
import io.grpc.stub.StreamObserver;
import lombok.RequiredArgsConstructor;
import org.apache.skywalking.apm.network.common.v3.Commands;
import org.apache.skywalking.apm.network.language.agent.v3.MeterData;
import org.apache.skywalking.apm.network.language.agent.v3.compat.MeterReportServiceGrpc;
import org.apache.skywalking.oap.server.library.server.grpc.GRPCHandler;
@RequiredArgsConstructor
public class MeterServiceHandlerCompat extends MeterReportServiceGrpc.MeterReportServiceImplBase implements GRPCHandler {
private final MeterServiceHandler delegate;
@Override
public StreamObserver<MeterData> collect(final StreamObserver<Commands> responseObserver) {
return delegate.collect(responseObserver);
}
}
......@@ -27,6 +27,7 @@ import org.apache.skywalking.oap.server.library.module.ModuleStartException;
import org.apache.skywalking.oap.server.library.module.ServiceNotProvidedException;
import org.apache.skywalking.oap.server.receiver.profile.module.ProfileModule;
import org.apache.skywalking.oap.server.receiver.profile.provider.handler.ProfileTaskServiceHandler;
import org.apache.skywalking.oap.server.receiver.profile.provider.handler.ProfileTaskServiceHandlerCompat;
import org.apache.skywalking.oap.server.receiver.sharing.server.SharingServerModule;
/**
......@@ -57,7 +58,9 @@ public class ProfileModuleProvider extends ModuleProvider {
GRPCHandlerRegister grpcHandlerRegister = getManager().find(SharingServerModule.NAME)
.provider()
.getService(GRPCHandlerRegister.class);
grpcHandlerRegister.addHandler(new ProfileTaskServiceHandler(getManager()));
ProfileTaskServiceHandler profileTaskServiceHandler = new ProfileTaskServiceHandler(getManager());
grpcHandlerRegister.addHandler(profileTaskServiceHandler);
grpcHandlerRegister.addHandler(new ProfileTaskServiceHandlerCompat(profileTaskServiceHandler));
}
@Override
......
/*
* 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.receiver.profile.provider.handler;
import io.grpc.stub.StreamObserver;
import lombok.RequiredArgsConstructor;
import org.apache.skywalking.apm.network.common.v3.Commands;
import org.apache.skywalking.apm.network.language.profile.v3.ProfileTaskCommandQuery;
import org.apache.skywalking.apm.network.language.profile.v3.ProfileTaskFinishReport;
import org.apache.skywalking.apm.network.language.profile.v3.ThreadSnapshot;
import org.apache.skywalking.apm.network.language.profile.v3.compat.ProfileTaskGrpc;
import org.apache.skywalking.oap.server.library.server.grpc.GRPCHandler;
@RequiredArgsConstructor
public class ProfileTaskServiceHandlerCompat extends ProfileTaskGrpc.ProfileTaskImplBase implements GRPCHandler {
private final ProfileTaskServiceHandler delegate;
@Override
public void getProfileTaskCommands(final ProfileTaskCommandQuery request, final StreamObserver<Commands> responseObserver) {
delegate.getProfileTaskCommands(request, responseObserver);
}
@Override
public StreamObserver<ThreadSnapshot> collectSnapshot(final StreamObserver<Commands> responseObserver) {
return delegate.collectSnapshot(responseObserver);
}
@Override
public void reportTaskFinish(final ProfileTaskFinishReport request, final StreamObserver<Commands> responseObserver) {
delegate.reportTaskFinish(request, responseObserver);
}
}
......@@ -30,6 +30,7 @@ import org.apache.skywalking.oap.server.library.module.ServiceNotProvidedExcepti
import org.apache.skywalking.oap.server.receiver.sharing.server.SharingServerModule;
import org.apache.skywalking.oap.server.receiver.trace.module.TraceModule;
import org.apache.skywalking.oap.server.receiver.trace.provider.handler.v8.grpc.TraceSegmentReportServiceHandler;
import org.apache.skywalking.oap.server.receiver.trace.provider.handler.v8.grpc.TraceSegmentReportServiceHandlerCompat;
import org.apache.skywalking.oap.server.receiver.trace.provider.handler.v8.rest.TraceSegmentReportListServletHandler;
import org.apache.skywalking.oap.server.receiver.trace.provider.handler.v8.rest.TraceSegmentReportSingleServletHandler;
import org.apache.skywalking.oap.server.telemetry.TelemetryModule;
......@@ -65,7 +66,9 @@ public class TraceModuleProvider extends ModuleProvider {
.provider()
.getService(JettyHandlerRegister.class);
grpcHandlerRegister.addHandler(new TraceSegmentReportServiceHandler(getManager()));
TraceSegmentReportServiceHandler traceSegmentReportServiceHandler = new TraceSegmentReportServiceHandler(getManager());
grpcHandlerRegister.addHandler(traceSegmentReportServiceHandler);
grpcHandlerRegister.addHandler(new TraceSegmentReportServiceHandlerCompat(traceSegmentReportServiceHandler));
jettyHandlerRegister.addHandler(new TraceSegmentReportListServletHandler(getManager()));
jettyHandlerRegister.addHandler(new TraceSegmentReportSingleServletHandler(getManager()));
......
/*
* 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.receiver.trace.provider.handler.v8.grpc;
import io.grpc.stub.StreamObserver;
import lombok.RequiredArgsConstructor;
import org.apache.skywalking.apm.network.common.v3.Commands;
import org.apache.skywalking.apm.network.language.agent.v3.SegmentCollection;
import org.apache.skywalking.apm.network.language.agent.v3.SegmentObject;
import org.apache.skywalking.apm.network.language.agent.v3.compat.TraceSegmentReportServiceGrpc;
import org.apache.skywalking.oap.server.library.server.grpc.GRPCHandler;
@RequiredArgsConstructor
public class TraceSegmentReportServiceHandlerCompat extends TraceSegmentReportServiceGrpc.TraceSegmentReportServiceImplBase implements GRPCHandler {
private final TraceSegmentReportServiceHandler delegate;
@Override
public StreamObserver<SegmentObject> collect(final StreamObserver<Commands> responseObserver) {
return delegate.collect(responseObserver);
}
@Override
public void collectInSync(final SegmentCollection request, final StreamObserver<Commands> responseObserver) {
delegate.collectInSync(request, responseObserver);
}
}
# 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.
version: '2.1'
services:
oap:
environment:
SW_PROMETHEUS_FETCHER: "default"
SW_TELEMETRY: prometheus
extends:
file: ../../base-compose.yml
service: oap
ui:
extends:
file: ../../base-compose.yml
service: ui
depends_on:
oap:
condition: service_healthy
provider:
build:
context: ../../../..
dockerfile: e2e-test/docker/Dockerfile.provider
args:
- SW_AGENT_JDK_VERSION=${SW_AGENT_JDK_VERSION:-11}
- DIST_PACKAGE=http://archive.apache.org/dist/skywalking/8.3.0/apache-skywalking-apm-8.3.0.tar.gz
networks:
- e2e
expose:
- 9090
- 5005
volumes:
- ../../../jacoco:/jacoco
environment:
SW_AGENT_COLLECTOR_BACKEND_SERVICES: oap:11800
JAVA_OPTS: -javaagent:/skywalking/agent/skywalking-agent.jar=logging.output=CONSOLE
healthcheck:
test: ["CMD", "sh", "-c", "nc -nz 127.0.0.1 9090"]
interval: 5s
timeout: 60s
retries: 120
depends_on:
oap:
condition: service_healthy
networks:
e2e:
......@@ -21,7 +21,7 @@ RESPOSITORY=$2
COMMIT_ID=$3
DIST_DIRECTORY=$4
HOME_DIR="$(cd "$(dirname $0)"; pwd)"
ROOT_DIR="$(cd "$(dirname $0)"; pwd)"
git clone $RESPOSITORY $WORK_DIRECTORY
......@@ -29,8 +29,8 @@ cd $WORK_DIRECTORY
git checkout $COMMIT_ID
mvn -B package -DskipTests
"$ROOT_DIR"/../../../../mvnw -B package -DskipTests
[[ -d $DIST_DIRECTORY ]] || mkdir -p $DIST_DIRECTORY
cp $WORK_DIRECTORY/dist/* $DIST_DIRECTORY/
\ No newline at end of file
cp $WORK_DIRECTORY/dist/* $DIST_DIRECTORY/
......@@ -35,7 +35,7 @@
<packaging>pom</packaging>
<properties>
<agent-test-tools.version>d75f7e1f593bd3816f6cd815482e355658adb8a0</agent-test-tools.version>
<agent-test-tools.version>24270f8f1ee1cb9186ede5202ff1c4ae3d2d482a</agent-test-tools.version>
<agent-test-tools.workingDirectory>${project.basedir}/target/agent-test-tools</agent-test-tools.workingDirectory>
<agent-test-tools.repos>https://github.com/apache/skywalking-agent-test-tool.git</agent-test-tools.repos>
</properties>
......@@ -70,4 +70,4 @@
</plugins>
</build>
</project>
\ No newline at end of file
</project>
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册