Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
31 commits
Select commit Hold shift + click to select a range
2322a5e
replace e2e with infra e2e.
JaredTan95 Oct 3, 2021
a01039c
update e2e
JaredTan95 Oct 3, 2021
48e199e
update e2e
JaredTan95 Oct 3, 2021
a7dc60b
fix fluentbit & es6
JaredTan95 Oct 3, 2021
5640f0f
fix fluentbit & es6
JaredTan95 Oct 3, 2021
132f17f
fix rules.
JaredTan95 Oct 3, 2021
303e6f8
fix docker compose in h2 case.
JaredTan95 Oct 3, 2021
04fc9e5
Merge branch 'master' into e2e
kezhenxu94 Oct 8, 2021
31140ef
Merge branch 'master' into e2e
JaredTan95 Oct 13, 2021
0579f0b
update e2e
JaredTan95 Oct 13, 2021
eedc867
fix e2e log
JaredTan95 Oct 13, 2021
999967d
fix env in e2e.
JaredTan95 Oct 13, 2021
f485a53
fix case in e2e.
JaredTan95 Oct 13, 2021
a4dc6ea
fix case in e2e.
JaredTan95 Oct 13, 2021
98e41c0
Merge branch 'master' into e2e
JaredTan95 Oct 13, 2021
d3a2edc
Fix and refine matrix
kezhenxu94 Oct 13, 2021
ffd51ac
Merge branch 'master' into e2e
JaredTan95 Oct 13, 2021
a3d6a5a
Merge branch 'master' into e2e
JaredTan95 Oct 14, 2021
77af9fa
update fluent mount.
JaredTan95 Oct 14, 2021
2f97c00
fix missed provider service and wrong triggers in e2e.
JaredTan95 Oct 14, 2021
6c44977
fix docker compose
JaredTan95 Oct 14, 2021
0aad244
fix typo
JaredTan95 Oct 14, 2021
c4027c3
fix endpoints expected.
JaredTan95 Oct 14, 2021
1d57555
Merge remote-tracking branch 'origin/master' into e2e
JaredTan95 Oct 14, 2021
252cfb1
fix mysql storage mount mysql driver.
JaredTan95 Oct 14, 2021
80c682c
add ports for provider.
JaredTan95 Oct 14, 2021
ef2d10c
add oap port for trigger.
JaredTan95 Oct 14, 2021
31d2742
update e2e check
JaredTan95 Oct 14, 2021
0abb89e
Merge remote-tracking branch 'origin/master' into e2e
JaredTan95 Oct 14, 2021
4de75fc
Merge remote-tracking branch 'origin/master' into e2e
JaredTan95 Oct 14, 2021
c4d7515
fix mysql
JaredTan95 Oct 15, 2021
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
54 changes: 34 additions & 20 deletions .github/workflows/e2e.log.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -39,25 +39,37 @@ jobs:
timeout-minutes: 90
strategy:
matrix:
storage: ['h2', 'mysql', 'es6', 'es7', 'es7.14', 'influxdb']
env:
SW_STORAGE: ${{ matrix.storage }}
steps:
- uses: actions/checkout@v2
with:
submodules: true
- name: Set Skip Env Var
uses: ./.github/actions/skip
- name: Run E2E Test
if: env.SKIP_CI != 'true'
uses: ./.github/actions/e2e-test
with:
test_class: org.apache.skywalking.e2e.log.LogE2E
config-file:
- log/h2/e2e.yaml
- log/mysql/e2e.yaml
- log/influxdb/e2e.yaml
- log/postgres/e2e.yaml
include:
- es-version: 6.3.2
config-file: log/es/e2e.yaml
- es-version: 7.0.0
config-file: log/es/e2e.yaml
- es-version: 7.8.0
config-file: log/es/e2e.yaml
- es-version: 7.10.1
config-file: log/es/e2e.yaml
- es-version: 7.14.0
config-file: log/es/e2e.yaml
- es-version: 7.15.0
config-file: log/es/e2e.yaml

LogFluentBit:
if: (github.event_name == 'schedule' && github.repository == 'apache/skywalking') || (github.event_name != 'schedule')
name: Log (FluentBit)
runs-on: ubuntu-latest
- es-version: 6.3.2
config-file: log/fluent-bit/e2e.yaml
- es-version: 7.0.0
config-file: log/fluent-bit/e2e.yaml
- es-version: 7.8.0
config-file: log/fluent-bit/e2e.yaml
- es-version: 7.10.1
config-file: log/fluent-bit/e2e.yaml
- es-version: 7.14.0
config-file: log/fluent-bit/e2e.yaml
- es-version: 7.15.0
config-file: log/fluent-bit/e2e.yaml
steps:
- uses: actions/checkout@v2
with:
Expand All @@ -66,6 +78,8 @@ jobs:
uses: ./.github/actions/skip
- name: Run E2E Test
if: env.SKIP_CI != 'true'
uses: ./.github/actions/e2e-test
uses: ./.github/actions/infra-e2e-test
env:
ES_VERSION: ${{ matrix.es-version }}
with:
test_class: org.apache.skywalking.e2e.log.LogFluentBitE2E
config-file: ${{ matrix.config-file }}
3 changes: 3 additions & 0 deletions CHANGES.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,9 @@ Release Notes.

8.9.0
------------------
#### Project

* replace log e2e cases to e2e-v2.

#### OAP Server

Expand Down
60 changes: 60 additions & 0 deletions test/e2e-v2/cases/log/es/docker-compose.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
# 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:
es:
image: elastic/elasticsearch:${ES_VERSION}
expose:
- 9200
networks:
- e2e
environment:
- discovery.type=single-node
healthcheck:
test: ["CMD", "bash", "-c", "cat < /dev/null > /dev/tcp/127.0.0.1/9200"]
interval: 5s
timeout: 60s
retries: 120

oap:
extends:
file: ../log-base-compose.yml
service: oap
environment:
SW_STORAGE: elasticsearch
SW_STORAGE_ES_CLUSTER_NODES: es:9200
ports:
- 12800
depends_on:
es:
condition: service_healthy
networks:
- e2e

provider:
extends:
file: ../../../script/docker-compose/base-compose.yml
service: provider
ports:
- 9090
depends_on:
oap:
condition: service_healthy
networks:
- e2e
networks:
e2e:
64 changes: 64 additions & 0 deletions test/e2e-v2/cases/log/es/e2e.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
# 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.

# This file is used to show how to write configuration files and can be used to test.

setup:
env: compose
file: docker-compose.yml
timeout: 1200
init-system-environment: ../../../script/env
steps:
- name: install yq
command: bash test/e2e-v2/script/prepare/setup-e2e-shell/install.sh yq
- name: install swctl
command: bash test/e2e-v2/script/prepare/setup-e2e-shell/install.sh swctl
- name: install etcdctl
command: bash test/e2e-v2/script/prepare/setup-e2e-shell/install.sh etcdctl

trigger:
action: http
interval: 3s
times: 10
url: http://${provider_host}:${provider_9090}/users
method: POST
body: '{"id":"123","name":"skywalking"}'
headers:
"Content-Type": "application/json"

verify:
# verify with retry strategy
retry:
# max retry count
count: 20
# the interval between two retries, in millisecond.
interval: 10s
cases:
# service list
- query: swctl --display yaml --base-url=http://${oap_host}:${oap_12800}/graphql service ls
expected: ../expected/service.yml
# service endpoint
- query: swctl --display yaml --base-url=http://${oap_host}:${oap_12800}/graphql endpoint list --keyword=users --service-name=e2e-service-provider
expected: ../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: ../expected/service-instance.yml
# logs
- query: |
swctl --display yaml --base-url=http://${oap_host}:${oap_12800}/graphql logs list --service-name=e2e-service-provider --trace-id=$( \
swctl --display yaml --base-url=http://${oap_host}:${oap_12800}/graphql trace ls \
| yq e '.traces | select(.[].endpointnames[0]=="POST:/users") | .[0].traceids[0]' -
)
expected: ../expected/logs.yml
39 changes: 39 additions & 0 deletions test/e2e-v2/cases/log/expected/logs.yml
Original file line number Diff line number Diff line change
@@ -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.

logs:
{{- contains .logs }}
- servicename: e2e-service-provider
serviceid: {{ b64enc "e2e-service-provider" }}.1
serviceinstancename: provider1
serviceinstanceid: {{ b64enc "e2e-service-provider" }}.1_{{ b64enc "provider1" }}
endpointname: null
endpointid: null
traceid: {{ .traceid }}
timestamp: {{ gt .timestamp 0 }}
contenttype: TEXT
content: |
{{ notEmpty .content }}
tags:
{{- contains .tags }}
- key: level
value: INFO
- key: logger
value: {{ notEmpty .value }}
- key: thread
value: {{ notEmpty .value }}
{{- end }}
{{- end }}
total: {{ gt .total 0 }}
19 changes: 19 additions & 0 deletions test/e2e-v2/cases/log/expected/service-endpoint.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# 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.

{{- contains .}}
- id: {{ b64enc "e2e-service-provider" }}.1_{{ b64enc "POST:/users" }}
name: POST:/users
{{- end}}
40 changes: 40 additions & 0 deletions test/e2e-v2/cases/log/expected/service-instance.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
# Licensed to 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. Apache Software Foundation (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.

{{- contains .}}
- id: {{ b64enc "e2e-service-provider" }}.1_{{ b64enc "provider1" }}
name: {{ notEmpty .name }}
attributes:
{{- contains .attributes }}
- name: OS Name
value: Linux
- name: hostname
value: {{ notEmpty .value }}
- name: Process No.
value: "1"
- name: Start Time
value: {{ notEmpty .value }}
- name: JVM Arguments
value: '{{ notEmpty .value }}'
- name: Jar Dependencies
value: '{{ notEmpty .value }}'
- name: ipv4s
value: {{ notEmpty .value }}
{{- end}}
language: JAVA
instanceuuid: {{ b64enc "e2e-service-provider" }}.1_{{ b64enc "provider1" }}
{{- end}}
20 changes: 20 additions & 0 deletions test/e2e-v2/cases/log/expected/service.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# 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.

{{- contains . }}
- id: {{ b64enc "e2e-service-provider" }}.1
name: e2e-service-provider
group: ""
{{- end }}
Loading