This is an automated email from the ASF dual-hosted git repository.
wusheng pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/skywalking-graalvm-distro.git
The following commit(s) were added to refs/heads/main by this push:
new 8b309be Add 9 E2E tests: event, menu, alarm, log, meter,
trace-profiling, telegraf, zabbix, zipkin
8b309be is described below
commit 8b309be5cb2cf78b2047d08f72e45dbf053e8b98
Author: Wu Sheng <[email protected]>
AuthorDate: Fri Feb 27 19:57:29 2026 +0800
Add 9 E2E tests: event, menu, alarm, log, meter, trace-profiling, telegraf,
zabbix, zipkin
Add docker-compose + BanyanDB E2E tests for 9 upstream cases covering
receiver-event, menu metadata, alarm/webhook, receiver-log/LAL,
receiver-meter/MAL,
trace profiling, receiver-telegraf, receiver-zabbix, and
receiver-zipkin/query-zipkin.
Disabled-by-default modules (zabbix, zipkin) are activated via env vars.
Log and meter tests use inline verification adapted for native image
constraints
(LAL/MAL configs compiled into binary, no mock-sender GHCR image).
---
.github/E2E-CASES.md | 18 +++
.github/workflows/ci.yml | 18 +++
test/e2e/cases/alarm/docker-compose.yml | 91 ++++++++++++++++
test/e2e/cases/alarm/e2e.yaml | 48 ++++++++
test/e2e/cases/event/docker-compose.yml | 48 ++++++++
test/e2e/cases/event/e2e.yaml | 38 +++++++
test/e2e/cases/log/docker-compose.yml | 90 +++++++++++++++
test/e2e/cases/log/e2e.yaml | 59 ++++++++++
test/e2e/cases/menu/docker-compose.yml | 127 ++++++++++++++++++++++
test/e2e/cases/menu/e2e.yaml | 48 ++++++++
test/e2e/cases/meter/docker-compose.yml | 95 ++++++++++++++++
test/e2e/cases/meter/e2e.yaml | 90 +++++++++++++++
test/e2e/cases/trace-profiling/docker-compose.yml | 88 +++++++++++++++
test/e2e/cases/trace-profiling/e2e.yaml | 39 +++++++
test/e2e/cases/vm-telegraf/docker-compose.yml | 59 ++++++++++
test/e2e/cases/vm-telegraf/e2e.yaml | 54 +++++++++
test/e2e/cases/vm-zabbix/docker-compose.yml | 58 ++++++++++
test/e2e/cases/vm-zabbix/e2e.yaml | 43 ++++++++
test/e2e/cases/zipkin/docker-compose.yml | 70 ++++++++++++
test/e2e/cases/zipkin/e2e.yaml | 46 ++++++++
20 files changed, 1227 insertions(+)
diff --git a/.github/E2E-CASES.md b/.github/E2E-CASES.md
index 76cba43..a03c736 100644
--- a/.github/E2E-CASES.md
+++ b/.github/E2E-CASES.md
@@ -12,6 +12,24 @@ Zookeeper/etcd clustering, are excluded.
---
+## Implemented
+
+| Case | Dir | Modules Tested |
+|------|-----|----------------|
+| Simple Java Agent | `simple-java-agent/` | Core tracing, metrics, topology |
+| Istio ALS | `istio-als/` | Envoy ALS receiver, K8s cluster |
+| Event | `event/` | `receiver-event` |
+| Menu | `menu/` | GraphQL menu/dashboard metadata |
+| Alarm | `alarm/` | `alarm` module, webhook |
+| Log | `log/` | `receiver-log`, LAL engine |
+| Meter | `meter/` | `receiver-meter`, MAL, virtual cache/DB |
+| Trace Profiling | `trace-profiling/` | Trace profiling lifecycle |
+| VM Telegraf | `vm-telegraf/` | `receiver-telegraf` |
+| VM Zabbix | `vm-zabbix/` | `receiver-zabbix` (disabled by default) |
+| Zipkin | `zipkin/` | `receiver-zipkin`, `query-zipkin` (disabled by default)
|
+
+---
+
## Tier 1 — Core (no external deps beyond OAP + BanyanDB + Java test services)
| Case | Upstream Path | Cluster | Description |
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 76cf241..11ddbb8 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -218,6 +218,24 @@ jobs:
case: simple-java-agent
- name: Istio ALS
case: istio-als
+ - name: Event
+ case: event
+ - name: Menu
+ case: menu
+ - name: Alarm
+ case: alarm
+ - name: Log
+ case: log
+ - name: Meter
+ case: meter
+ - name: Trace Profiling
+ case: trace-profiling
+ - name: VM Telegraf
+ case: vm-telegraf
+ - name: VM Zabbix
+ case: vm-zabbix
+ - name: Zipkin
+ case: zipkin
steps:
- name: Checkout with submodules
uses: actions/checkout@v4
diff --git a/test/e2e/cases/alarm/docker-compose.yml
b/test/e2e/cases/alarm/docker-compose.yml
new file mode 100644
index 0000000..396e3ba
--- /dev/null
+++ b/test/e2e/cases/alarm/docker-compose.yml
@@ -0,0 +1,91 @@
+# 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.
+
+services:
+ banyandb:
+ extends:
+ file:
../../../../skywalking/test/e2e-v2/script/docker-compose/base-compose.yml
+ service: banyandb
+ ports:
+ - 17912
+
+ oap:
+ image: skywalking-oap-native:latest
+ expose:
+ - 11800
+ - 12800
+ networks:
+ - e2e
+ ports:
+ - 12800
+ environment:
+ SW_HEALTH_CHECKER: default
+ SW_STORAGE_BANYANDB_TARGETS: banyandb:17912
+ SW_CONFIGURATION: none
+ SW_SEARCHABLE_ALARM_TAG_KEYS: level,receivers
+ depends_on:
+ banyandb:
+ condition: service_healthy
+ volumes:
+ -
../../../../skywalking/test/e2e-v2/cases/alarm/alarm-settings.yml:/skywalking/config/alarm-settings.yml
+ healthcheck:
+ test: ["CMD-SHELL", "nc -nz 127.0.0.1 11800 || exit 1"]
+ interval: 5s
+ timeout: 60s
+ retries: 120
+
+ provider-jar:
+ image:
"ghcr.io/apache/skywalking/e2e-service-provider:${SW_E2E_SERVICE_COMMIT}"
+ entrypoint: ["cp", "/app.jar", "/jars/services_provider.jar"]
+ volumes:
+ - service-jars:/jars
+ networks:
+ - e2e
+
+ provider:
+ image:
"ghcr.io/apache/skywalking-java/skywalking-java:${SW_AGENT_JAVA_COMMIT}-java${SW_AGENT_JDK_VERSION}"
+ command: ["java", "-jar", "/jars/services_provider.jar"]
+ volumes:
+ - service-jars:/jars
+ networks:
+ - e2e
+ expose:
+ - 9090
+ ports:
+ - 9090
+ environment:
+ SW_AGENT_COLLECTOR_BACKEND_SERVICES: oap:11800
+ SW_LOGGING_OUTPUT: CONSOLE
+ SW_AGENT_NAME: e2e-service-provider
+ SW_AGENT_INSTANCE_NAME: provider1
+ SW_AGENT_COLLECTOR_GET_PROFILE_TASK_INTERVAL: 1
+ SW_AGENT_COLLECTOR_GET_AGENT_DYNAMIC_CONFIG_INTERVAL: 1
+ SW_METER_ACTIVE: 'false'
+ healthcheck:
+ test: ["CMD", "bash", "-c", "cat < /dev/null > /dev/tcp/127.0.0.1/9090"]
+ interval: 5s
+ timeout: 60s
+ retries: 120
+ depends_on:
+ oap:
+ condition: service_healthy
+ provider-jar:
+ condition: service_completed_successfully
+
+volumes:
+ service-jars:
+
+networks:
+ e2e:
diff --git a/test/e2e/cases/alarm/e2e.yaml b/test/e2e/cases/alarm/e2e.yaml
new file mode 100644
index 0000000..77433f8
--- /dev/null
+++ b/test/e2e/cases/alarm/e2e.yaml
@@ -0,0 +1,48 @@
+# 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.
+
+# Alarm E2E — native OAP with BanyanDB
+# Tests alarm module, webhook, and alarm query via GraphQL.
+
+setup:
+ env: compose
+ file: docker-compose.yml
+ timeout: 20m
+ init-system-environment: ../../script/env
+ steps:
+ - name: set PATH
+ command: export PATH=/tmp/skywalking-infra-e2e/bin:$PATH
+ - name: install yq
+ command: bash
skywalking/test/e2e-v2/script/prepare/setup-e2e-shell/install.sh yq
+ - name: install swctl
+ command: bash
skywalking/test/e2e-v2/script/prepare/setup-e2e-shell/install.sh swctl
+
+trigger:
+ action: http
+ interval: 3s
+ times: 45
+ url: http://${provider_host}:${provider_9090}/users
+ method: POST
+ body: '{"id":"123","name":"skywalking"}'
+ headers:
+ "Content-Type": "application/json"
+
+verify:
+ retry:
+ count: 30
+ interval: 3s
+ cases:
+ - includes:
+ - ../../../../skywalking/test/e2e-v2/cases/alarm/alarm-cases.yaml
diff --git a/test/e2e/cases/event/docker-compose.yml
b/test/e2e/cases/event/docker-compose.yml
new file mode 100644
index 0000000..8ec8ab1
--- /dev/null
+++ b/test/e2e/cases/event/docker-compose.yml
@@ -0,0 +1,48 @@
+# 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.
+
+services:
+ banyandb:
+ extends:
+ file:
../../../../skywalking/test/e2e-v2/script/docker-compose/base-compose.yml
+ service: banyandb
+ ports:
+ - 17912
+
+ oap:
+ image: skywalking-oap-native:latest
+ expose:
+ - 11800
+ - 12800
+ networks:
+ - e2e
+ ports:
+ - 11800
+ - 12800
+ environment:
+ SW_HEALTH_CHECKER: default
+ SW_STORAGE_BANYANDB_TARGETS: banyandb:17912
+ SW_CONFIGURATION: none
+ depends_on:
+ banyandb:
+ condition: service_healthy
+ healthcheck:
+ test: ["CMD-SHELL", "nc -nz 127.0.0.1 11800 || exit 1"]
+ interval: 5s
+ timeout: 60s
+ retries: 120
+
+networks:
+ e2e:
diff --git a/test/e2e/cases/event/e2e.yaml b/test/e2e/cases/event/e2e.yaml
new file mode 100644
index 0000000..85100bb
--- /dev/null
+++ b/test/e2e/cases/event/e2e.yaml
@@ -0,0 +1,38 @@
+# 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.
+
+# Event E2E — native OAP with BanyanDB
+# Tests receiver-event module via gRPC event reporting.
+
+setup:
+ env: compose
+ file: docker-compose.yml
+ timeout: 20m
+ init-system-environment: ../../script/env
+ steps:
+ - name: set PATH
+ command: export PATH=/tmp/skywalking-infra-e2e/bin:$PATH
+ - name: install yq
+ command: bash
skywalking/test/e2e-v2/script/prepare/setup-e2e-shell/install.sh yq
+ - name: install swctl
+ command: bash
skywalking/test/e2e-v2/script/prepare/setup-e2e-shell/install.sh swctl
+
+verify:
+ retry:
+ count: 20
+ interval: 3s
+ cases:
+ - includes:
+ - ../../../../skywalking/test/e2e-v2/cases/event/event-cases.yaml
diff --git a/test/e2e/cases/log/docker-compose.yml
b/test/e2e/cases/log/docker-compose.yml
new file mode 100644
index 0000000..b1c78ec
--- /dev/null
+++ b/test/e2e/cases/log/docker-compose.yml
@@ -0,0 +1,90 @@
+# 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.
+
+services:
+ banyandb:
+ extends:
+ file:
../../../../skywalking/test/e2e-v2/script/docker-compose/base-compose.yml
+ service: banyandb
+ ports:
+ - 17912
+
+ oap:
+ image: skywalking-oap-native:latest
+ expose:
+ - 11800
+ - 12800
+ networks:
+ - e2e
+ ports:
+ - 12800
+ environment:
+ SW_HEALTH_CHECKER: default
+ SW_STORAGE_BANYANDB_TARGETS: banyandb:17912
+ SW_CONFIGURATION: none
+ SW_LOG_LAL_FILES: default
+ SW_LOG_MAL_FILES: ""
+ depends_on:
+ banyandb:
+ condition: service_healthy
+ healthcheck:
+ test: ["CMD-SHELL", "nc -nz 127.0.0.1 11800 || exit 1"]
+ interval: 5s
+ timeout: 60s
+ retries: 120
+
+ provider-jar:
+ image:
"ghcr.io/apache/skywalking/e2e-service-provider:${SW_E2E_SERVICE_COMMIT}"
+ entrypoint: ["cp", "/app.jar", "/jars/services_provider.jar"]
+ volumes:
+ - service-jars:/jars
+ networks:
+ - e2e
+
+ provider:
+ image:
"ghcr.io/apache/skywalking-java/skywalking-java:${SW_AGENT_JAVA_COMMIT}-java${SW_AGENT_JDK_VERSION}"
+ command: ["java", "-jar", "/jars/services_provider.jar"]
+ volumes:
+ - service-jars:/jars
+ networks:
+ - e2e
+ expose:
+ - 9090
+ ports:
+ - 9090
+ environment:
+ SW_AGENT_COLLECTOR_BACKEND_SERVICES: oap:11800
+ SW_LOGGING_OUTPUT: CONSOLE
+ SW_AGENT_NAME: e2e-service-provider
+ SW_AGENT_INSTANCE_NAME: provider1
+ SW_AGENT_COLLECTOR_GET_PROFILE_TASK_INTERVAL: 1
+ SW_AGENT_COLLECTOR_GET_AGENT_DYNAMIC_CONFIG_INTERVAL: 1
+ SW_METER_ACTIVE: 'false'
+ healthcheck:
+ test: ["CMD", "bash", "-c", "cat < /dev/null > /dev/tcp/127.0.0.1/9090"]
+ interval: 5s
+ timeout: 60s
+ retries: 120
+ depends_on:
+ oap:
+ condition: service_healthy
+ provider-jar:
+ condition: service_completed_successfully
+
+volumes:
+ service-jars:
+
+networks:
+ e2e:
diff --git a/test/e2e/cases/log/e2e.yaml b/test/e2e/cases/log/e2e.yaml
new file mode 100644
index 0000000..d4e0305
--- /dev/null
+++ b/test/e2e/cases/log/e2e.yaml
@@ -0,0 +1,59 @@
+# 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.
+
+# Log E2E — native OAP with BanyanDB
+# Tests receiver-log, LAL engine, and log query via GraphQL.
+# Uses the built-in default LAL config (custom test LAL scripts are
+# compiled into the native binary at build time and cannot be mounted).
+
+setup:
+ env: compose
+ file: docker-compose.yml
+ timeout: 20m
+ init-system-environment: ../../script/env
+ steps:
+ - name: set PATH
+ command: export PATH=/tmp/skywalking-infra-e2e/bin:$PATH
+ - name: install yq
+ command: bash
skywalking/test/e2e-v2/script/prepare/setup-e2e-shell/install.sh yq
+ - name: install swctl
+ command: bash
skywalking/test/e2e-v2/script/prepare/setup-e2e-shell/install.sh swctl
+
+trigger:
+ action: http
+ interval: 3s
+ times: -1
+ url: http://${provider_host}:${provider_9090}/logs/trigger
+ method: GET
+
+verify:
+ retry:
+ count: 20
+ interval: 10s
+ cases:
+ # service list
+ - query: swctl --display yaml
--base-url=http://${oap_host}:${oap_12800}/graphql service layer GENERAL
+ expected:
../../../../skywalking/test/e2e-v2/cases/log/expected/service.yml
+ # service endpoint
+ - query: swctl --display yaml
--base-url=http://${oap_host}:${oap_12800}/graphql endpoint list --keyword=logs
--service-name=e2e-service-provider
+ expected:
../../../../skywalking/test/e2e-v2/cases/log/expected/service-endpoint.yml
+ # service instance list
+ - query: swctl --display yaml
--base-url=http://${oap_host}:${oap_12800}/graphql instance list
--service-name=e2e-service-provider
+ expected:
../../../../skywalking/test/e2e-v2/cases/log/expected/service-instance.yml
+ - query: |
+ swctl --display yaml
--base-url=http://${oap_host}:${oap_12800}/graphql logs list
--service-name=e2e-service-provider --tags level=INFO --trace-id=$( \
+ swctl --display yaml
--base-url=http://${oap_host}:${oap_12800}/graphql tv2 ls | yq e '.traces |
map(select(.spans[0].endpointname == "GET:/logs/trigger")) |
.[0].spans[0].traceid' -
+ )
+ expected: ../../../../skywalking/test/e2e-v2/cases/log/expected/logs.yml
diff --git a/test/e2e/cases/menu/docker-compose.yml
b/test/e2e/cases/menu/docker-compose.yml
new file mode 100644
index 0000000..3e0e39d
--- /dev/null
+++ b/test/e2e/cases/menu/docker-compose.yml
@@ -0,0 +1,127 @@
+# 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.
+
+services:
+ banyandb:
+ extends:
+ file:
../../../../skywalking/test/e2e-v2/script/docker-compose/base-compose.yml
+ service: banyandb
+ ports:
+ - 17912
+
+ oap:
+ image: skywalking-oap-native:latest
+ expose:
+ - 11800
+ - 12800
+ networks:
+ - e2e
+ ports:
+ - 12800
+ environment:
+ SW_HEALTH_CHECKER: default
+ SW_STORAGE_BANYANDB_TARGETS: banyandb:17912
+ SW_CONFIGURATION: none
+ depends_on:
+ banyandb:
+ condition: service_healthy
+ healthcheck:
+ test: ["CMD-SHELL", "nc -nz 127.0.0.1 11800 || exit 1"]
+ interval: 5s
+ timeout: 60s
+ retries: 120
+
+ provider-jar:
+ image:
"ghcr.io/apache/skywalking/e2e-service-provider:${SW_E2E_SERVICE_COMMIT}"
+ entrypoint: ["cp", "/app.jar", "/jars/services_provider.jar"]
+ volumes:
+ - service-jars:/jars
+ networks:
+ - e2e
+
+ consumer-jar:
+ image:
"ghcr.io/apache/skywalking/e2e-service-consumer:${SW_E2E_SERVICE_COMMIT}"
+ entrypoint: ["cp", "/app.jar", "/jars/services_consumer.jar"]
+ volumes:
+ - service-jars:/jars
+ networks:
+ - e2e
+
+ provider:
+ image:
"ghcr.io/apache/skywalking-java/skywalking-java:${SW_AGENT_JAVA_COMMIT}-java${SW_AGENT_JDK_VERSION}"
+ command: ["java", "-jar", "/jars/services_provider.jar"]
+ volumes:
+ - service-jars:/jars
+ networks:
+ - e2e
+ expose:
+ - 9090
+ ports:
+ - 9090
+ environment:
+ SW_AGENT_COLLECTOR_BACKEND_SERVICES: oap:11800
+ SW_LOGGING_OUTPUT: CONSOLE
+ SW_AGENT_NAME: e2e-service-provider
+ SW_AGENT_INSTANCE_NAME: provider1
+ SW_AGENT_COLLECTOR_GET_PROFILE_TASK_INTERVAL: 1
+ SW_AGENT_COLLECTOR_GET_AGENT_DYNAMIC_CONFIG_INTERVAL: 1
+ SW_METER_ACTIVE: 'false'
+ healthcheck:
+ test: ["CMD", "bash", "-c", "cat < /dev/null > /dev/tcp/127.0.0.1/9090"]
+ interval: 5s
+ timeout: 60s
+ retries: 120
+ depends_on:
+ oap:
+ condition: service_healthy
+ provider-jar:
+ condition: service_completed_successfully
+
+ consumer:
+ image:
"ghcr.io/apache/skywalking-java/skywalking-java:${SW_AGENT_JAVA_COMMIT}-java${SW_AGENT_JDK_VERSION}"
+ command: ["java", "-jar", "/jars/services_consumer.jar"]
+ volumes:
+ - service-jars:/jars
+ networks:
+ - e2e
+ expose:
+ - 9092
+ ports:
+ - 9092
+ environment:
+ SW_AGENT_COLLECTOR_BACKEND_SERVICES: oap:11800
+ SW_LOGGING_OUTPUT: CONSOLE
+ PROVIDER_URL: http://provider:9090
+ SW_AGENT_NAME: e2e-service-consumer
+ SW_AGENT_INSTANCE_NAME: consumer1
+ SW_AGENT_COLLECTOR_GET_PROFILE_TASK_INTERVAL: 1
+ SW_AGENT_COLLECTOR_GET_AGENT_DYNAMIC_CONFIG_INTERVAL: 1
+ SW_METER_ACTIVE: 'false'
+ healthcheck:
+ test: ["CMD", "bash", "-c", "cat < /dev/null > /dev/tcp/127.0.0.1/9092"]
+ interval: 5s
+ timeout: 60s
+ retries: 120
+ depends_on:
+ provider:
+ condition: service_healthy
+ consumer-jar:
+ condition: service_completed_successfully
+
+volumes:
+ service-jars:
+
+networks:
+ e2e:
diff --git a/test/e2e/cases/menu/e2e.yaml b/test/e2e/cases/menu/e2e.yaml
new file mode 100644
index 0000000..9accae8
--- /dev/null
+++ b/test/e2e/cases/menu/e2e.yaml
@@ -0,0 +1,48 @@
+# 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.
+
+# Menu E2E — native OAP with BanyanDB
+# Tests GraphQL menu/dashboard metadata.
+
+setup:
+ env: compose
+ file: docker-compose.yml
+ timeout: 20m
+ init-system-environment: ../../script/env
+ steps:
+ - name: set PATH
+ command: export PATH=/tmp/skywalking-infra-e2e/bin:$PATH
+ - name: install yq
+ command: bash
skywalking/test/e2e-v2/script/prepare/setup-e2e-shell/install.sh yq
+ - name: install swctl
+ command: bash
skywalking/test/e2e-v2/script/prepare/setup-e2e-shell/install.sh swctl
+
+trigger:
+ action: http
+ interval: 3s
+ times: -1
+ url: http://${consumer_host}:${consumer_9092}/users
+ method: POST
+ body: '{"id":"123","name":"skywalking"}'
+ headers:
+ "Content-Type": "application/json"
+
+verify:
+ retry:
+ count: 20
+ interval: 10s
+ cases:
+ - includes:
+ - ../../../../skywalking/test/e2e-v2/cases/menu/menu-cases.yaml
diff --git a/test/e2e/cases/meter/docker-compose.yml
b/test/e2e/cases/meter/docker-compose.yml
new file mode 100644
index 0000000..14fc146
--- /dev/null
+++ b/test/e2e/cases/meter/docker-compose.yml
@@ -0,0 +1,95 @@
+# 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.
+
+services:
+ banyandb:
+ extends:
+ file:
../../../../skywalking/test/e2e-v2/script/docker-compose/base-compose.yml
+ service: banyandb
+ ports:
+ - 17912
+
+ oap:
+ image: skywalking-oap-native:latest
+ expose:
+ - 11800
+ - 12800
+ networks:
+ - e2e
+ ports:
+ - 12800
+ environment:
+ SW_HEALTH_CHECKER: default
+ SW_STORAGE_BANYANDB_TARGETS: banyandb:17912
+ SW_CONFIGURATION: none
+ SW_METER_ANALYZER_ACTIVE_FILES: spring-micrometer,java-agent
+ # virtual cache test case
+ SW_SLOW_CACHE_SLOW_WRITE_THRESHOLD: default:-1
+ SW_SLOW_CACHE_SLOW_READ_THRESHOLD: default:-1
+ SW_CORE_TOPN_REPORT_PERIOD: 1
+ depends_on:
+ banyandb:
+ condition: service_healthy
+ healthcheck:
+ test: ["CMD-SHELL", "nc -nz 127.0.0.1 11800 || exit 1"]
+ interval: 5s
+ timeout: 60s
+ retries: 120
+
+ provider-jar:
+ image:
"ghcr.io/apache/skywalking/e2e-service-provider:${SW_E2E_SERVICE_COMMIT}"
+ entrypoint: ["cp", "/app.jar", "/jars/services_provider.jar"]
+ volumes:
+ - service-jars:/jars
+ networks:
+ - e2e
+
+ provider:
+ image:
"ghcr.io/apache/skywalking-java/skywalking-java:${SW_AGENT_JAVA_COMMIT}-java${SW_AGENT_JDK_VERSION}"
+ # Activate guava-cache plugin for virtual cache test case
+ command: ["bash", "-c", "cp
/skywalking/agent/optional-plugins/apm-guava-cache-plugin*.jar
/skywalking/agent/plugins/ && java -jar /jars/services_provider.jar"]
+ volumes:
+ - service-jars:/jars
+ networks:
+ - e2e
+ expose:
+ - 9090
+ ports:
+ - 9090
+ environment:
+ SW_AGENT_COLLECTOR_BACKEND_SERVICES: oap:11800
+ SW_LOGGING_OUTPUT: CONSOLE
+ SW_AGENT_NAME: e2e-service-provider
+ SW_AGENT_INSTANCE_NAME: provider1
+ SW_AGENT_COLLECTOR_GET_PROFILE_TASK_INTERVAL: 1
+ SW_AGENT_COLLECTOR_GET_AGENT_DYNAMIC_CONFIG_INTERVAL: 1
+ SW_METER_REPORT_INTERVAL: 5
+ SW_METER_ACTIVE: 'true'
+ healthcheck:
+ test: ["CMD", "bash", "-c", "cat < /dev/null > /dev/tcp/127.0.0.1/9090"]
+ interval: 5s
+ timeout: 60s
+ retries: 120
+ depends_on:
+ oap:
+ condition: service_healthy
+ provider-jar:
+ condition: service_completed_successfully
+
+volumes:
+ service-jars:
+
+networks:
+ e2e:
diff --git a/test/e2e/cases/meter/e2e.yaml b/test/e2e/cases/meter/e2e.yaml
new file mode 100644
index 0000000..f0160ec
--- /dev/null
+++ b/test/e2e/cases/meter/e2e.yaml
@@ -0,0 +1,90 @@
+# 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.
+
+# Meter E2E — native OAP with BanyanDB
+# Tests receiver-meter, MAL processing, JVM/agent metrics, and virtual
cache/DB.
+# Note: batch-meter test (mock-sender) is excluded because the mock-sender
+# has no pre-built GHCR image. The batch-meter analyzer config is compiled
+# into the native binary but not activated here.
+
+setup:
+ env: compose
+ file: docker-compose.yml
+ timeout: 20m
+ init-system-environment: ../../script/env
+ steps:
+ - name: set PATH
+ command: export PATH=/tmp/skywalking-infra-e2e/bin:$PATH
+ - name: install yq
+ command: bash
skywalking/test/e2e-v2/script/prepare/setup-e2e-shell/install.sh yq
+ - name: install swctl
+ command: bash
skywalking/test/e2e-v2/script/prepare/setup-e2e-shell/install.sh swctl
+
+trigger:
+ action: http
+ interval: 3s
+ times: -1
+ url: http://${provider_host}:${provider_9090}/users
+ method: POST
+ body: '{"id":"123","name":"skywalking"}'
+ headers:
+ "Content-Type": "application/json"
+
+verify:
+ retry:
+ count: 30
+ interval: 3s
+ cases:
+ # service list
+ - query: swctl --display yaml
--base-url=http://${oap_host}:${oap_12800}/graphql service ls
+ expected:
../../../../skywalking/test/e2e-v2/cases/meter/expected/service.yml
+ # service instance list
+ - query: swctl --display yaml
--base-url=http://${oap_host}:${oap_12800}/graphql instance list
--service-name=e2e-service-provider
+ expected:
../../../../skywalking/test/e2e-v2/cases/meter/expected/service-instance.yml
+ # service instance metrics linear — JVM/agent metrics
+ - query: swctl --display yaml
--base-url=http://${oap_host}:${oap_12800}/graphql metrics exec
--expression=meter_jvm_memory_max --instance-name=provider1
--service-name=e2e-service-provider
+ expected:
../../../../skywalking/test/e2e-v2/cases/meter/expected/metrics-has-value.yml
+ - query: swctl --display yaml
--base-url=http://${oap_host}:${oap_12800}/graphql metrics exec
--expression=meter_jvm_threads_live --instance-name=provider1
--service-name=e2e-service-provider
+ expected:
../../../../skywalking/test/e2e-v2/cases/meter/expected/metrics-has-value.yml
+ - query: swctl --display yaml
--base-url=http://${oap_host}:${oap_12800}/graphql metrics exec
--expression=meter_process_files_max --instance-name=provider1
--service-name=e2e-service-provider
+ expected:
../../../../skywalking/test/e2e-v2/cases/meter/expected/metrics-has-value.yml
+ # virtual cache
+ - query: |
+ swctl --display yaml
--base-url=http://${oap_host}:${oap_12800}/graphql metrics exec
--expression=cache_read_resp_time --service-id=R3VhdmFDYWNoZS1sb2NhbA==.0
+ expected:
../../../../skywalking/test/e2e-v2/cases/meter/expected/virtual_cache_has_metrics.yml
+ - query: |
+ swctl --display yaml
--base-url=http://${oap_host}:${oap_12800}/graphql metrics exec
--expression=cache_write_sla --service-id=R3VhdmFDYWNoZS1sb2NhbA==.0
+ expected:
../../../../skywalking/test/e2e-v2/cases/meter/expected/virtual_cache_has_metrics.yml
+ - query: |
+ swctl --display yaml
--base-url=http://${oap_host}:${oap_12800}/graphql metrics exec
--expression=cache_access_cpm --service-id=R3VhdmFDYWNoZS1sb2NhbA==.0
+ expected:
../../../../skywalking/test/e2e-v2/cases/meter/expected/virtual_cache_has_metrics.yml
+ - query: |
+ swctl --display yaml
--base-url=http://${oap_host}:${oap_12800}/graphql metrics exec
--expression="top_n(top_n_cache_write_command,10,des)"
--service-id=R3VhdmFDYWNoZS1sb2NhbA==.0
+ expected:
../../../../skywalking/test/e2e-v2/cases/meter/expected/virtual_cache_has_topN_records.yml
+ # virtual database
+ - query: |
+ swctl --display yaml
--base-url=http://${oap_host}:${oap_12800}/graphql metrics exec
--expression=database_access_resp_time --service-id=bG9jYWxob3N0Oi0x.0
+ expected:
../../../../skywalking/test/e2e-v2/cases/meter/expected/metrics-has-value.yml
+ # agent so11y
+ - query: swctl --display yaml
--base-url=http://${oap_host}:${oap_12800}/graphql metrics exec
--expression=meter_java_agent_created_tracing_context_count
--instance-name=provider1 --service-name=e2e-service-provider
+ expected:
../../../../skywalking/test/e2e-v2/cases/meter/expected/metrics-has-value-label-created_by.yml
+ - query: swctl --display yaml
--base-url=http://${oap_host}:${oap_12800}/graphql metrics exec
--expression=meter_java_agent_finished_tracing_context_count
--instance-name=provider1 --service-name=e2e-service-provider
+ expected:
../../../../skywalking/test/e2e-v2/cases/meter/expected/metrics-has-value.yml
+ - query: swctl --display yaml
--base-url=http://${oap_host}:${oap_12800}/graphql metrics exec
--expression=meter_java_agent_created_ignored_context_count
--instance-name=provider1 --service-name=e2e-service-provider
+ expected:
../../../../skywalking/test/e2e-v2/cases/meter/expected/metrics-has-value-label-created_by.yml
+ - query: swctl --display yaml
--base-url=http://${oap_host}:${oap_12800}/graphql metrics exec
--expression=meter_java_agent_finished_ignored_context_count
--instance-name=provider1 --service-name=e2e-service-provider
+ expected:
../../../../skywalking/test/e2e-v2/cases/meter/expected/metrics-has-value.yml
+ - query: swctl --display yaml
--base-url=http://${oap_host}:${oap_12800}/graphql metrics exec
--expression=meter_java_agent_tracing_context_execution_time_percentile
--instance-name=provider1 --service-name=e2e-service-provider
+ expected:
../../../../skywalking/test/e2e-v2/cases/meter/expected/metrics-has-value-label-percentile.yml
diff --git a/test/e2e/cases/trace-profiling/docker-compose.yml
b/test/e2e/cases/trace-profiling/docker-compose.yml
new file mode 100644
index 0000000..7695a30
--- /dev/null
+++ b/test/e2e/cases/trace-profiling/docker-compose.yml
@@ -0,0 +1,88 @@
+# 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.
+
+services:
+ banyandb:
+ extends:
+ file:
../../../../skywalking/test/e2e-v2/script/docker-compose/base-compose.yml
+ service: banyandb
+ ports:
+ - 17912
+
+ oap:
+ image: skywalking-oap-native:latest
+ expose:
+ - 11800
+ - 12800
+ networks:
+ - e2e
+ ports:
+ - 12800
+ environment:
+ SW_HEALTH_CHECKER: default
+ SW_STORAGE_BANYANDB_TARGETS: banyandb:17912
+ SW_CONFIGURATION: none
+ depends_on:
+ banyandb:
+ condition: service_healthy
+ healthcheck:
+ test: ["CMD-SHELL", "nc -nz 127.0.0.1 11800 || exit 1"]
+ interval: 5s
+ timeout: 60s
+ retries: 120
+
+ provider-jar:
+ image:
"ghcr.io/apache/skywalking/e2e-service-provider:${SW_E2E_SERVICE_COMMIT}"
+ entrypoint: ["cp", "/app.jar", "/jars/services_provider.jar"]
+ volumes:
+ - service-jars:/jars
+ networks:
+ - e2e
+
+ provider:
+ image:
"ghcr.io/apache/skywalking-java/skywalking-java:${SW_AGENT_JAVA_COMMIT}-java${SW_AGENT_JDK_VERSION}"
+ command: ["java", "-jar", "/jars/services_provider.jar"]
+ volumes:
+ - service-jars:/jars
+ networks:
+ - e2e
+ expose:
+ - 9090
+ ports:
+ - 9090
+ environment:
+ SW_AGENT_COLLECTOR_BACKEND_SERVICES: oap:11800
+ SW_LOGGING_OUTPUT: CONSOLE
+ SW_AGENT_NAME: e2e-service-provider
+ SW_AGENT_INSTANCE_NAME: provider1
+ SW_AGENT_COLLECTOR_GET_PROFILE_TASK_INTERVAL: 1
+ SW_AGENT_COLLECTOR_GET_AGENT_DYNAMIC_CONFIG_INTERVAL: 1
+ SW_METER_ACTIVE: 'false'
+ healthcheck:
+ test: ["CMD", "bash", "-c", "cat < /dev/null > /dev/tcp/127.0.0.1/9090"]
+ interval: 5s
+ timeout: 60s
+ retries: 120
+ depends_on:
+ oap:
+ condition: service_healthy
+ provider-jar:
+ condition: service_completed_successfully
+
+volumes:
+ service-jars:
+
+networks:
+ e2e:
diff --git a/test/e2e/cases/trace-profiling/e2e.yaml
b/test/e2e/cases/trace-profiling/e2e.yaml
new file mode 100644
index 0000000..5910e2f
--- /dev/null
+++ b/test/e2e/cases/trace-profiling/e2e.yaml
@@ -0,0 +1,39 @@
+# 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.
+
+# Trace Profiling E2E — native OAP with BanyanDB
+# Tests trace profiling lifecycle: task creation, execution, and analysis.
+
+setup:
+ env: compose
+ file: docker-compose.yml
+ timeout: 20m
+ init-system-environment: ../../script/env
+ steps:
+ - name: set PATH
+ command: export PATH=/tmp/skywalking-infra-e2e/bin:$PATH
+ - name: install yq
+ command: bash
skywalking/test/e2e-v2/script/prepare/setup-e2e-shell/install.sh yq
+ - name: install swctl
+ command: bash
skywalking/test/e2e-v2/script/prepare/setup-e2e-shell/install.sh swctl
+
+verify:
+ retry:
+ count: 20
+ interval: 3s
+ cases:
+ - includes:
+ -
../../../../skywalking/test/e2e-v2/cases/profiling/trace/profiling-cases-trace-v2.yaml
+ -
../../../../skywalking/test/e2e-v2/cases/profiling/trace/profiling-cases.yaml
diff --git a/test/e2e/cases/vm-telegraf/docker-compose.yml
b/test/e2e/cases/vm-telegraf/docker-compose.yml
new file mode 100644
index 0000000..b6fce96
--- /dev/null
+++ b/test/e2e/cases/vm-telegraf/docker-compose.yml
@@ -0,0 +1,59 @@
+# 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.
+
+services:
+ banyandb:
+ extends:
+ file:
../../../../skywalking/test/e2e-v2/script/docker-compose/base-compose.yml
+ service: banyandb
+ ports:
+ - 17912
+
+ oap:
+ image: skywalking-oap-native:latest
+ expose:
+ - 11800
+ - 12800
+ networks:
+ - e2e
+ ports:
+ - 12800
+ environment:
+ SW_HEALTH_CHECKER: default
+ SW_STORAGE_BANYANDB_TARGETS: banyandb:17912
+ SW_CONFIGURATION: none
+ SW_RECEIVER_TELEGRAF: default
+ SW_RECEIVER_TELEGRAF_ACTIVE_FILES: vm
+ depends_on:
+ banyandb:
+ condition: service_healthy
+ healthcheck:
+ test: ["CMD-SHELL", "nc -nz 127.0.0.1 11800 || exit 1"]
+ interval: 5s
+ timeout: 60s
+ retries: 120
+
+ telegraf:
+ image: telegraf:1.24
+ networks:
+ - e2e
+ volumes:
+ -
../../../../skywalking/test/e2e-v2/cases/vm/telegraf/telegraf.conf:/etc/telegraf/telegraf.conf
+ depends_on:
+ oap:
+ condition: service_healthy
+
+networks:
+ e2e:
diff --git a/test/e2e/cases/vm-telegraf/e2e.yaml
b/test/e2e/cases/vm-telegraf/e2e.yaml
new file mode 100644
index 0000000..16a4e1d
--- /dev/null
+++ b/test/e2e/cases/vm-telegraf/e2e.yaml
@@ -0,0 +1,54 @@
+# 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.
+
+# VM Telegraf E2E — native OAP with BanyanDB
+# Tests receiver-telegraf module with VM metrics via Telegraf agent.
+
+setup:
+ env: compose
+ file: docker-compose.yml
+ timeout: 20m
+ init-system-environment: ../../script/env
+ steps:
+ - name: set PATH
+ command: export PATH=/tmp/skywalking-infra-e2e/bin:$PATH
+ - name: install yq
+ command: bash
skywalking/test/e2e-v2/script/prepare/setup-e2e-shell/install.sh yq
+ - name: install swctl
+ command: bash
skywalking/test/e2e-v2/script/prepare/setup-e2e-shell/install.sh swctl
+
+verify:
+ retry:
+ count: 20
+ interval: 3s
+ cases:
+ # service list
+ - query: swctl --display yaml
--base-url=http://${oap_host}:${oap_12800}/graphql service ls
+ expected:
../../../../skywalking/test/e2e-v2/cases/vm/expected/service.yml
+ # linear metrics
+ - query: swctl --display yaml
--base-url=http://${oap_host}:${oap_12800}/graphql metrics exec
--expression=meter_vm_memory_used --service-name=vm-service
+ expected:
../../../../skywalking/test/e2e-v2/cases/vm/expected/metrics-has-value.yml
+ - query: swctl --display yaml
--base-url=http://${oap_host}:${oap_12800}/graphql metrics exec
--expression=meter_vm_memory_total --service-name=vm-service
+ expected:
../../../../skywalking/test/e2e-v2/cases/vm/expected/metrics-has-value.yml
+ - query: swctl --display yaml
--base-url=http://${oap_host}:${oap_12800}/graphql metrics exec
--expression=meter_vm_memory_available --service-name=vm-service
+ expected:
../../../../skywalking/test/e2e-v2/cases/vm/expected/metrics-has-value.yml
+ - query: swctl --display yaml
--base-url=http://${oap_host}:${oap_12800}/graphql metrics exec
--expression=meter_vm_cpu_total_percentage --service-name=vm-service
+ expected:
../../../../skywalking/test/e2e-v2/cases/vm/expected/metrics-has-value.yml
+ - query: swctl --display yaml
--base-url=http://${oap_host}:${oap_12800}/graphql metrics exec
--expression=meter_vm_cpu_load1 --service-name=vm-service
+ expected:
../../../../skywalking/test/e2e-v2/cases/vm/expected/metrics-has-value.yml
+ - query: swctl --display yaml
--base-url=http://${oap_host}:${oap_12800}/graphql metrics exec
--expression=meter_vm_cpu_load5 --service-name=vm-service
+ expected:
../../../../skywalking/test/e2e-v2/cases/vm/expected/metrics-has-value.yml
+ - query: swctl --display yaml
--base-url=http://${oap_host}:${oap_12800}/graphql metrics exec
--expression=meter_vm_cpu_load15 --service-name=vm-service
+ expected:
../../../../skywalking/test/e2e-v2/cases/vm/expected/metrics-has-value.yml
diff --git a/test/e2e/cases/vm-zabbix/docker-compose.yml
b/test/e2e/cases/vm-zabbix/docker-compose.yml
new file mode 100644
index 0000000..fbba1c1
--- /dev/null
+++ b/test/e2e/cases/vm-zabbix/docker-compose.yml
@@ -0,0 +1,58 @@
+# 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.
+
+services:
+ banyandb:
+ extends:
+ file:
../../../../skywalking/test/e2e-v2/script/docker-compose/base-compose.yml
+ service: banyandb
+ ports:
+ - 17912
+
+ oap:
+ image: skywalking-oap-native:latest
+ expose:
+ - 11800
+ - 12800
+ networks:
+ - e2e
+ ports:
+ - 12800
+ environment:
+ SW_HEALTH_CHECKER: default
+ SW_STORAGE_BANYANDB_TARGETS: banyandb:17912
+ SW_CONFIGURATION: none
+ SW_RECEIVER_ZABBIX: default
+ depends_on:
+ banyandb:
+ condition: service_healthy
+ healthcheck:
+ test: ["CMD-SHELL", "nc -nz 127.0.0.1 11800 || exit 1"]
+ interval: 5s
+ timeout: 60s
+ retries: 120
+
+ zabbix-client:
+ image: zabbix/zabbix-agent:alpine-6.4.15
+ networks:
+ - e2e
+ volumes:
+ -
../../../../skywalking/test/e2e-v2/cases/vm/zabbix/zabbix_agentd.conf:/etc/zabbix/zabbix_agentd.d/zabbix_agentd.conf
+ depends_on:
+ oap:
+ condition: service_healthy
+
+networks:
+ e2e:
diff --git a/test/e2e/cases/vm-zabbix/e2e.yaml
b/test/e2e/cases/vm-zabbix/e2e.yaml
new file mode 100644
index 0000000..184a1c9
--- /dev/null
+++ b/test/e2e/cases/vm-zabbix/e2e.yaml
@@ -0,0 +1,43 @@
+# 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.
+
+# VM Zabbix E2E — native OAP with BanyanDB
+# Tests receiver-zabbix module (disabled by default, activated via env var).
+
+setup:
+ env: compose
+ file: docker-compose.yml
+ timeout: 20m
+ init-system-environment: ../../script/env
+ steps:
+ - name: set PATH
+ command: export PATH=/tmp/skywalking-infra-e2e/bin:$PATH
+ - name: install yq
+ command: bash
skywalking/test/e2e-v2/script/prepare/setup-e2e-shell/install.sh yq
+ - name: install swctl
+ command: bash
skywalking/test/e2e-v2/script/prepare/setup-e2e-shell/install.sh swctl
+
+verify:
+ retry:
+ count: 20
+ interval: 3s
+ cases:
+ - includes:
+ - ../../../../skywalking/test/e2e-v2/cases/vm/vm-cases.yaml
+ - query: swctl --display yaml
--base-url=http://${oap_host}:${oap_12800}/graphql metrics exec
--expression=meter_vm_vfs_fs_size --service-name=vm-service
+ expected:
../../../../skywalking/test/e2e-v2/cases/vm/expected/metrics-has-vfs-value-label.yml
+ # multiple-linear metrics
+ - query: swctl --display yaml
--base-url=http://${oap_host}:${oap_12800}/graphql metrics exec
--expression=meter_vm_cpu_average_used --service-name=vm-service
+ expected:
../../../../skywalking/test/e2e-v2/cases/vm/expected/metrics-has-average-value-label-zabbix.yml
diff --git a/test/e2e/cases/zipkin/docker-compose.yml
b/test/e2e/cases/zipkin/docker-compose.yml
new file mode 100644
index 0000000..585fb66
--- /dev/null
+++ b/test/e2e/cases/zipkin/docker-compose.yml
@@ -0,0 +1,70 @@
+# 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.
+
+services:
+ banyandb:
+ extends:
+ file:
../../../../skywalking/test/e2e-v2/script/docker-compose/base-compose.yml
+ service: banyandb
+ ports:
+ - 17912
+
+ oap:
+ image: skywalking-oap-native:latest
+ expose:
+ - 11800
+ - 12800
+ - 9411
+ networks:
+ - e2e
+ ports:
+ - 9412
+ environment:
+ SW_HEALTH_CHECKER: default
+ SW_STORAGE_BANYANDB_TARGETS: banyandb:17912
+ SW_CONFIGURATION: none
+ SW_QUERY_ZIPKIN: default
+ SW_RECEIVER_ZIPKIN: default
+ depends_on:
+ banyandb:
+ condition: service_healthy
+ healthcheck:
+ test: ["CMD-SHELL", "nc -nz 127.0.0.1 11800 || exit 1"]
+ interval: 5s
+ timeout: 60s
+ retries: 120
+
+ frontend:
+ extends:
+ file:
../../../../skywalking/test/e2e-v2/cases/zipkin/docker-compose-brave.yml
+ service: frontend
+ depends_on:
+ backend:
+ condition: service_healthy
+ oap:
+ condition: service_healthy
+ ports:
+ - 8081
+
+ backend:
+ extends:
+ file:
../../../../skywalking/test/e2e-v2/cases/zipkin/docker-compose-brave.yml
+ service: backend
+ depends_on:
+ oap:
+ condition: service_healthy
+
+networks:
+ e2e:
diff --git a/test/e2e/cases/zipkin/e2e.yaml b/test/e2e/cases/zipkin/e2e.yaml
new file mode 100644
index 0000000..6115482
--- /dev/null
+++ b/test/e2e/cases/zipkin/e2e.yaml
@@ -0,0 +1,46 @@
+# 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.
+
+# Zipkin E2E — native OAP with BanyanDB
+# Tests receiver-zipkin and query-zipkin modules (disabled by default,
+# activated via env vars).
+
+setup:
+ env: compose
+ file: docker-compose.yml
+ timeout: 20m
+ init-system-environment: ../../script/env
+ steps:
+ - name: set PATH
+ command: export PATH=/tmp/skywalking-infra-e2e/bin:$PATH
+ - name: install yq
+ command: bash
skywalking/test/e2e-v2/script/prepare/setup-e2e-shell/install.sh yq
+ - name: install swctl
+ command: bash
skywalking/test/e2e-v2/script/prepare/setup-e2e-shell/install.sh swctl
+
+trigger:
+ action: http
+ interval: 3s
+ times: -1
+ url: http://${frontend_host}:${frontend_8081}
+ method: POST
+
+verify:
+ retry:
+ count: 20
+ interval: 10s
+ cases:
+ - includes:
+ - ../../../../skywalking/test/e2e-v2/cases/zipkin/zipkin-cases.yaml