(skywalking-website) branch master updated: chore: Updated peaceiris/actions-gh-pages to v4 (#755)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/skywalking-website.git The following commit(s) were added to refs/heads/master by this push: new 583a94d9339 chore: Updated peaceiris/actions-gh-pages to v4 (#755) 583a94d9339 is described below commit 583a94d93394d6812f743b449f90836f4698d0c2 Author: Juntao Zhang <719284...@qq.com> AuthorDate: Sun Nov 10 13:45:53 2024 +0800 chore: Updated peaceiris/actions-gh-pages to v4 (#755) --- .github/workflows/deploy.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/deploy.yaml b/.github/workflows/deploy.yaml index de9c98d9523..b5269ffb9bb 100644 --- a/.github/workflows/deploy.yaml +++ b/.github/workflows/deploy.yaml @@ -43,7 +43,7 @@ jobs: run: npm run build-with-docs - name: Deploy -uses: peaceiris/actions-gh-pages@v3 +uses: peaceiris/actions-gh-pages@v4 if: (github.event_name == 'push' && github.ref == 'refs/heads/master') || github.event_name == 'schedule' || github.event_name == 'workflow_dispatch' with: github_token: ${{ secrets.GITHUB_TOKEN }}
(skywalking-website) branch master updated: chore: Updated actions/checkout to v4 (#753)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/skywalking-website.git The following commit(s) were added to refs/heads/master by this push: new 39326c43f70 chore: Updated actions/checkout to v4 (#753) 39326c43f70 is described below commit 39326c43f70c996d570d6d5888fcf0c83b9984eb Author: Juntao Zhang <719284...@qq.com> AuthorDate: Sun Nov 10 12:12:19 2024 +0800 chore: Updated actions/checkout to v4 (#753) --- .github/workflows/deploy.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/deploy.yaml b/.github/workflows/deploy.yaml index 63c7c5cd75c..de9c98d9523 100644 --- a/.github/workflows/deploy.yaml +++ b/.github/workflows/deploy.yaml @@ -31,7 +31,7 @@ jobs: contents: write steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v4 - name: Install run: |
(skywalking-website) branch Jtrust-patch-2 deleted (was c2dbec57861)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a change to branch Jtrust-patch-2 in repository https://gitbox.apache.org/repos/asf/skywalking-website.git was c2dbec57861 chore: Updated actions/checkout to v4 The revisions that were on this branch are still contained in other references; therefore, this change does not discard any commits from the repository.
(skywalking-booster-ui) branch main updated: fix (#427)
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-booster-ui.git The following commit(s) were added to refs/heads/main by this push: new 6e1a6cf1 fix (#427) 6e1a6cf1 is described below commit 6e1a6cf19bbda69121c16b9d39c18b8b0ab86170 Author: Fine0830 AuthorDate: Thu Nov 7 12:41:19 2024 +0800 fix (#427) --- src/views/dashboard/related/trace/Header.vue | 25 - 1 file changed, 16 insertions(+), 9 deletions(-) diff --git a/src/views/dashboard/related/trace/Header.vue b/src/views/dashboard/related/trace/Header.vue index 18999296..293f3652 100644 --- a/src/views/dashboard/related/trace/Header.vue +++ b/src/views/dashboard/related/trace/Header.vue @@ -133,15 +133,22 @@ limitations under the License. --> } conditions.value = (items.value[0] && items.value[0].label) || ""; if (!filters.id) { - if (!filters.owner) { -return; - } - state.service = filters.owner.serviceID; - if (filters.owner.scope === EntityType[2].value) { -state.endpoint = filters.owner.endpointID; - } - if (filters.owner?.scope === EntityType[3].value) { -state.instance = filters.owner.serviceInstanceID; + if (filters.owner) { +state.service = filters.owner.serviceID; +if (filters.owner.scope === EntityType[2].value) { + state.endpoint = filters.owner.endpointID; +} +if (filters.owner.scope === EntityType[3].value) { + state.instance = filters.owner.serviceInstanceID; +} + } else { +state.service = selectorStore.currentService.id; +if (dashboardStore.entity === EntityType[2].value) { + state.endpoint = selectorStore.currentPod.id; +} +if (dashboardStore.entity === EntityType[3].value) { + state.instance = selectorStore.currentPod.id; +} } await queryTraces(); return;
(skywalking) branch master updated: Support adding additional attr[0-5] for endpoint level metrics. (#12753)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/skywalking.git The following commit(s) were added to refs/heads/master by this push: new 2ed6b58073 Support adding additional attr[0-5] for endpoint level metrics. (#12753) 2ed6b58073 is described below commit 2ed6b580735655714277da1e0719d118e0adadf3 Author: Wan Kai AuthorDate: Wed Nov 6 12:51:26 2024 +0800 Support adding additional attr[0-5] for endpoint level metrics. (#12753) --- docs/en/api/metrics-query-expression.md| 2 +- docs/en/changes/changes.md | 5 +- .../metrics-additional-attributes.md | 22 ++- .../skywalking/oal/rt/parser/OALListener.java | 6 +- .../skywalking/oal/rt/parser/DeepAnalysisTest.java | 4 +- .../oap/server/core/source/Endpoint.java | 35 ++ .../oap/server/core/source/EndpointDecorator.java | 37 +++ .../oap/query/graphql/AsyncQueryUtils.java | 5 +- .../server-starter/src/main/resources/oal/core.oal | 6 +- .../general/general-root.json | 74 -- .../general/general-service.json | 40 .../ui-initialized-templates/mesh/mesh-root.json | 71 +++-- .../mesh/mesh-service.json | 40 .../banyandb/BanyanDBAggregationQueryDAO.java | 2 +- skywalking-ui | 2 +- .../cases/storage/expected/topN-OP-endpoint.yml| 32 ++ test/e2e-v2/cases/storage/storage-cases.yaml | 8 +++ 17 files changed, 313 insertions(+), 78 deletions(-) diff --git a/docs/en/api/metrics-query-expression.md b/docs/en/api/metrics-query-expression.md index 5d6b9865e1..28e28f367d 100644 --- a/docs/en/api/metrics-query-expression.md +++ b/docs/en/api/metrics-query-expression.md @@ -240,7 +240,7 @@ top_n(, , , ) The attrs filter also supports not-equal filter `!=`, the format is `attr0 != 'value'`. **Notice**: -- The `attrs` only support Service metrics for now and should be added in the metrics first, see [Metrics Additional Attributes](../concepts-and-designs/metrics-additional-attributes.md). +- The `attrs` should be added in the metrics first, see [Metrics Additional Attributes](../concepts-and-designs/metrics-additional-attributes.md). - When use not-equal filter, for example `attr1 != 'value'`, if the storage is using `MySQL` or other JDBC storage and `attr1 value is NULL` in the metrics, the result of `attr1 != 'value'` will always `false` and would NOT include this metric in the result due to SQL can't compare `NULL` with the `value`. diff --git a/docs/en/changes/changes.md b/docs/en/changes/changes.md index da7eadcbab..834ae5a98a 100644 --- a/docs/en/changes/changes.md +++ b/docs/en/changes/changes.md @@ -11,7 +11,7 @@ * Change the endpoint_traffic to updatable for the additional column `last_ping`. * Add Component ID(5023) for the GoZero framework. * Support Kong monitoring. -* Support adding additional attr[0-4] for service level metrics. +* Support adding additional attr[0-5] for service/endpoint level metrics. * Support async-profiler feature for performance analysis. * Add metrics value owner for metrics topN query result. * Add naming control for `EndpointDependencyBuilder`. @@ -28,6 +28,9 @@ * Add service global topN widget on `General-Root`, `Mesh-Root`, `K8S-Root` dashboard. * Fix initialization dashboards. * Update the Kubernetes metrics for reduce multiple metrics calculate in MQE. +* Support view data value related dashboards in TopList widgets. +* Add endpoint global topN widget on `General-Root`, `Mesh-Root`. + Documentation * Update release document to adopt newly added revision-based process. diff --git a/docs/en/concepts-and-designs/metrics-additional-attributes.md b/docs/en/concepts-and-designs/metrics-additional-attributes.md index 50de232684..460d2e6c01 100644 --- a/docs/en/concepts-and-designs/metrics-additional-attributes.md +++ b/docs/en/concepts-and-designs/metrics-additional-attributes.md @@ -18,7 +18,10 @@ and the Java Class must follow the following rules: - The Class must implement the [ISourceDecorator](../../../oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/ISourceDecorator.java) interface. - The Class package must be under the `org.apache.skywalking.*`. -SkyWalking provides a default implementation [ServiceDecorator](../../../oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceDecorator.java) which set the `attr0` to the service `Layer`. +### Default Decorator +SkyWalking provides some default implementation of decorator: + +- [ServiceDecorator](../../../oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/ServiceDecorator.java) which set the `
(skywalking-python) branch master updated: Fix TestClient for fastapi cause the req.client None error (#355)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/skywalking-python.git The following commit(s) were added to refs/heads/master by this push: new 55dc5ff Fix TestClient for fastapi cause the req.client None error (#355) 55dc5ff is described below commit 55dc5ff813106c579378a55a3cbff07f9c6689df Author: CharlieSeastar <49227833+charlieseas...@users.noreply.github.com> AuthorDate: Wed Nov 6 09:04:56 2024 +0800 Fix TestClient for fastapi cause the req.client None error (#355) --- CHANGELOG.md | 11 +++ skywalking/plugins/sw_fastapi.py | 2 +- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 8aaedf0..381dc5d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,16 @@ ## Change Logs +### 1.2.0 + +- Feature: + - Drop support for 3.7 (#356) + +- Fixes: + - Fix: user/password replacement is not allowed for relative URLs (#349) + - Fix pulsar client does not support init arguments other than service_url (#351) + - Fix outdated make dev-fix rule in CodeStyle.md (#350) + - Fix TestClient for fastapi cause the req.client None error (#355) + ### 1.1.0 - Feature: diff --git a/skywalking/plugins/sw_fastapi.py b/skywalking/plugins/sw_fastapi.py index 45ce504..9acba50 100644 --- a/skywalking/plugins/sw_fastapi.py +++ b/skywalking/plugins/sw_fastapi.py @@ -56,7 +56,7 @@ def install(): with span: span.layer = Layer.Http span.component = Component.FastAPI -span.peer = f'{req.client.host}:{req.client.port}' +span.peer = f'{req.client.host}:{req.client.port}' if req.client else 'unknown' span.tag(TagHttpMethod(method)) span.tag(TagHttpURL(str(req.url).split('?')[0])) if config.plugin_fastapi_collect_http_params and req.query_params:
(skywalking-python) branch fixtest deleted (was 9ec67e3)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a change to branch fixtest in repository https://gitbox.apache.org/repos/asf/skywalking-python.git was 9ec67e3 fix doc The revisions that were on this branch are still contained in other references; therefore, this change does not discard any commits from the repository.
(skywalking-banyandb) branch index-sort deleted (was a426b18d)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a change to branch index-sort in repository https://gitbox.apache.org/repos/asf/skywalking-banyandb.git was a426b18d This changes: The revisions that were on this branch are still contained in other references; therefore, this change does not discard any commits from the repository.
(skywalking-banyandb) branch main updated: Several Changes about Index and Document (#554)
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-banyandb.git The following commit(s) were added to refs/heads/main by this push: new 2bc6b0aa Several Changes about Index and Document (#554) 2bc6b0aa is described below commit 2bc6b0aa9d6f9b0ee79fb68d0a4be2360cf37c72 Author: Gao Hongtao AuthorDate: Tue Nov 5 22:26:46 2024 +0800 Several Changes about Index and Document (#554) * Remove sortable field from stored field * Update kubernetes install document * Remove invalid setting file Signed-off-by: Gao Hongtao --- .air.toml | 31 --- CHANGES.md| 2 + banyand/internal/storage/index.go | 2 +- banyand/measure/write.go | 10 ++- docs/installation/kubernetes.md | 8 +- pkg/index/index.go| 4 +- pkg/index/inverted/inverted.go| 104 ++- pkg/index/inverted/inverted_series.go | 153 ++ pkg/index/inverted/sort.go| 42 ++ pkg/index/testcases/duration.go | 2 +- 10 files changed, 239 insertions(+), 119 deletions(-) diff --git a/.air.toml b/.air.toml deleted file mode 100644 index 15364687.. --- a/.air.toml +++ /dev/null @@ -1,31 +0,0 @@ -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You under the Apache License, Version 2.0 -# (the "License"); you may not use this file except in compliance with -# the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Config file for [Air](https://github.com/cosmtrek/air) in TOML format - -# Working directory -# . or absolute path, please note that the directories following must be under root. -root = "." -tmp_dir = "tmp" - -[build] -# Just plain old shell command. You could use `make` as well. -cmd = "go build -gcflags='all=-N -l' -buildvcs=false -o ./tmp/main ./banyand/cmd/server" -# Binary file yields from `cmd`. -bin = "tmp/main" -# Customize binary. -full_bin = "dlv exec --accept-multiclient --log --headless --continue --listen :2345 --api-version 2 ./tmp/main standalone" -# Watch these filename extensions. -include_ext = ["go"] diff --git a/CHANGES.md b/CHANGES.md index e52ab56f..3aaf6ffd 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -7,6 +7,7 @@ Release Notes. ### Features - Add the `bydbctl analyze series` command to analyze the series data. +- Index: Remove sortable field from the stored field. If a field is sortable only, it won't be stored. ### Bug Fixes @@ -15,6 +16,7 @@ Release Notes. ### Documentation - Improve the description of the memory in observability doc. +- Update kubernetes install document to align the banyandb helm v0.3.0. ### Chores diff --git a/banyand/internal/storage/index.go b/banyand/internal/storage/index.go index af6b6424..2e1ad14b 100644 --- a/banyand/internal/storage/index.go +++ b/banyand/internal/storage/index.go @@ -245,7 +245,7 @@ func (s *seriesIndex) Search(ctx context.Context, series []*pbv1.Series, opts In if err != nil { return nil, nil, err } - iter, err := s.store.Iterator(ctx, fieldKey, rangeOpts, + iter, err := s.store.SeriesSort(ctx, fieldKey, rangeOpts, opts.Order.Sort, opts.PreloadSize, query, opts.Projection) if err != nil { return nil, nil, err diff --git a/banyand/measure/write.go b/banyand/measure/write.go index 2eaaffdd..bb6165d3 100644 --- a/banyand/measure/write.go +++ b/banyand/measure/write.go @@ -163,8 +163,9 @@ func (w *writeCallback) handle(dst map[string]*dataPointsInGroup, writeEvent *me IndexRuleID: r.GetMetadata().GetId(), Analyzer:r.Analyzer, }, - Term: encodeTagValue.value, - Store: true, + Term: encodeTagValue.value, + Store: true, + NoSort: r.GetNoSort(),
(skywalking) 01/01: Use shaded async-profiler in e2e
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a commit to branch wu-sheng-patch-1 in repository https://gitbox.apache.org/repos/asf/skywalking.git commit 03dda613bad49eb6cad301e642d5efc5cac3f4c1 Author: 吴晟 Wu Sheng AuthorDate: Tue Nov 5 20:27:01 2024 +0800 Use shaded async-profiler in e2e --- test/e2e-v2/script/env | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/e2e-v2/script/env b/test/e2e-v2/script/env index 9c144b8ba8..399fb9aa22 100644 --- a/test/e2e-v2/script/env +++ b/test/e2e-v2/script/env @@ -13,7 +13,7 @@ # See the License for the specific language governing permissions and # limitations under the License. -SW_AGENT_JAVA_COMMIT=26e59485ccd5298f243af9f91f3ff60c0eb80586 +SW_AGENT_JAVA_COMMIT=f0245864e4388a388fe7445b56b6ce7cedc94aaf SW_AGENT_SATELLITE_COMMIT=ea27a3f4e126a24775fe12e2aa2695bcb23d99c3 SW_AGENT_NGINX_LUA_COMMIT=c3cee4841798a147d83b96a10914d4ac0e11d0aa SW_AGENT_NODEJS_COMMIT=4f9a91dad3dfd8cfe5ba8f7bd06b39e11eb5e65e
(skywalking) branch wu-sheng-patch-1 created (now 03dda613ba)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a change to branch wu-sheng-patch-1 in repository https://gitbox.apache.org/repos/asf/skywalking.git at 03dda613ba Use shaded async-profiler in e2e This branch includes the following new commits: new 03dda613ba Use shaded async-profiler in e2e The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference.
(skywalking-java) branch main updated: fix: shade async-profiler packages (#727)
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-java.git The following commit(s) were added to refs/heads/main by this push: new f0245864e4 fix: shade async-profiler packages (#727) f0245864e4 is described below commit f0245864e4388a388fe7445b56b6ce7cedc94aaf Author: zhengziyi0117 <91662408+zhengziyi0...@users.noreply.github.com> AuthorDate: Tue Nov 5 20:25:16 2024 +0800 fix: shade async-profiler packages (#727) --- apm-sniffer/apm-agent-core/pom.xml | 6 ++ apm-sniffer/apm-agent/pom.xml | 1 + 2 files changed, 7 insertions(+) diff --git a/apm-sniffer/apm-agent-core/pom.xml b/apm-sniffer/apm-agent-core/pom.xml index fcca095f25..b22c082035 100644 --- a/apm-sniffer/apm-agent-core/pom.xml +++ b/apm-sniffer/apm-agent-core/pom.xml @@ -53,6 +53,8 @@ ${shade.package}.${shade.org.slf4j.source} 1.18.0 1.7.25 +one.profiler + ${shade.package}.${shade.one.profiler.source} @@ -253,6 +255,10 @@ ${shade.org.slf4j.source} ${shade.org.slf4j.target} + + ${shade.one.profiler.source} + ${shade.one.profiler.target} + diff --git a/apm-sniffer/apm-agent/pom.xml b/apm-sniffer/apm-agent/pom.xml index 5f7246b372..0112c21e1c 100644 --- a/apm-sniffer/apm-agent/pom.xml +++ b/apm-sniffer/apm-agent/pom.xml @@ -92,6 +92,7 @@ org.codehaus.mojo:animal-sniffer-annotations io.perfmark:* org.slf4j:* + tools.profiler:async-profiler
(skywalking-booster-ui) branch main updated: feat: View data value related dashboards in TopList widgets (#425)
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-booster-ui.git The following commit(s) were added to refs/heads/main by this push: new 14fa5d65 feat: View data value related dashboards in TopList widgets (#425) 14fa5d65 is described below commit 14fa5d65b60570a77052793062eb5225de9132b5 Author: Fine0830 AuthorDate: Tue Nov 5 11:21:08 2024 +0800 feat: View data value related dashboards in TopList widgets (#425) --- src/hooks/data.ts | 10 + src/layout/components/NavBar.vue | 2 +- src/locales/lang/en.ts | 2 + src/locales/lang/es.ts | 2 + src/locales/lang/zh.ts | 2 + src/types/dashboard.d.ts | 1 + src/views/dashboard/Widget.vue | 1 + src/views/dashboard/configuration/Widget.vue | 1 + .../configuration/widget/metric/Index.vue | 47 -- src/views/dashboard/controls/Widget.vue| 1 + src/views/dashboard/graphs/TopList.vue | 31 -- 11 files changed, 91 insertions(+), 9 deletions(-) diff --git a/src/hooks/data.ts b/src/hooks/data.ts index abaa263c..1ad8867e 100644 --- a/src/hooks/data.ts +++ b/src/hooks/data.ts @@ -57,6 +57,16 @@ export const RespFields: Indexable = { name: id value refId: traceID +owner { + scope + serviceID + serviceName + normal + serviceInstanceID + serviceInstanceName + endpointID + endpointName +} } } error diff --git a/src/layout/components/NavBar.vue b/src/layout/components/NavBar.vue index 292d4c5c..322abcba 100644 --- a/src/layout/components/NavBar.vue +++ b/src/layout/components/NavBar.vue @@ -61,7 +61,7 @@ limitations under the License. --> - + diff --git a/src/locales/lang/en.ts b/src/locales/lang/en.ts index 49cf581d..65722791 100644 --- a/src/locales/lang/en.ts +++ b/src/locales/lang/en.ts @@ -388,5 +388,7 @@ const msg = { hierarchyNodeDashboard: "As dashboard for Hierarchy Graph Node", valueMappings: "Value Mappings", mappingTip: "Notice: The mapping key is a Regex string, e.g. ^([0-9])$", + valueDashboard: "Data Value Related Dashboard", + viewValueDashboard: "View Dashboard", }; export default msg; diff --git a/src/locales/lang/es.ts b/src/locales/lang/es.ts index 8cda2ce3..aff70878 100644 --- a/src/locales/lang/es.ts +++ b/src/locales/lang/es.ts @@ -388,5 +388,7 @@ const msg = { hierarchyNodeDashboard: "As dashboard for Hierarchy Graph Node", valueMappings: "Value Mappings", mappingTip: "Aviso: La clave de mapeo es una cadena Regex, p. ej. ^([0-9])$", + valueDashboard: "Data Value Related Dashboard", + viewValueDashboard: "View Dashboard", }; export default msg; diff --git a/src/locales/lang/zh.ts b/src/locales/lang/zh.ts index 95389196..dca5b0bb 100644 --- a/src/locales/lang/zh.ts +++ b/src/locales/lang/zh.ts @@ -386,5 +386,7 @@ const msg = { hierarchyNodeDashboard: "作为层次图节点的dashboard", valueMappings: "值映射", mappingTip: "注意: 映射键是一个正则表达式字符串,比如 ^([0-9])$", + valueDashboard: "数据值相关的仪表板", + viewValueDashboard: "查看仪表板", }; export default msg; diff --git a/src/types/dashboard.d.ts b/src/types/dashboard.d.ts index ccf98861..fa72ce4a 100644 --- a/src/types/dashboard.d.ts +++ b/src/types/dashboard.d.ts @@ -46,6 +46,7 @@ export interface LayoutConfig { relatedTrace?: RelatedTrace; subExpressions?: string[]; subTypesOfMQE?: string[]; + valueRelatedDashboard?: string; } export type RelatedTrace = { duration: DurationTime; diff --git a/src/views/dashboard/Widget.vue b/src/views/dashboard/Widget.vue index 30f02385..36219761 100644 --- a/src/views/dashboard/Widget.vue +++ b/src/views/dashboard/Widget.vue @@ -38,6 +38,7 @@ limitations under the License. --> typesOfMQE: typesOfMQE || [], subExpressions: config.subExpressions || [], subTypesOfMQE: config.subTypesOfMQE || [], + valueRelatedDashboard: config.valueRelatedDashboard, }" :needQuery="true" /> diff --git a/src/views/dashboard/configuration/Widget.vue b/src/views/dashboard/configuration/Widget.vue index dc36d47f..3781b979 100644 --- a/src/views/dashboard/configuration/Widget.vue +++ b/src/views/dashboard/configuration/Widget.vue @@ -41,6 +41,7 @@ limitations under the License. --> typesOfMQE: dashboardStore.selectedGrid.typesOfMQE || [], subExpressions: dashboardStore.selectedGrid.subExpre
(skywalking) branch index_type deleted (was e8063e2de4)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a change to branch index_type in repository https://gitbox.apache.org/repos/asf/skywalking.git was e8063e2de4 The index type `BanyanDB.IndexRule.IndexType#TREE` is removed The revisions that were on this branch are still contained in other references; therefore, this change does not discard any commits from the repository.
(skywalking) branch master updated: The index type `BanyanDB.IndexRule.IndexType#TREE` is removed (#12743)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/skywalking.git The following commit(s) were added to refs/heads/master by this push: new 99162eff5d The index type `BanyanDB.IndexRule.IndexType#TREE` is removed (#12743) 99162eff5d is described below commit 99162eff5d94651637f88d5563a86e5cfc0a8acb Author: 吴晟 Wu Sheng AuthorDate: Mon Nov 4 08:54:51 2024 +0800 The index type `BanyanDB.IndexRule.IndexType#TREE` is removed (#12743) --- docs/en/changes/changes.md| 1 + .../org/apache/skywalking/oap/server/core/analysis/topn/TopN.java | 1 - .../skywalking/oap/server/core/storage/annotation/BanyanDB.java | 8 ++-- .../oap/server/core/storage/model/BanyanDBExtension.java | 5 +++-- 4 files changed, 6 insertions(+), 9 deletions(-) diff --git a/docs/en/changes/changes.md b/docs/en/changes/changes.md index a5a77dfd67..cd8260b1a7 100644 --- a/docs/en/changes/changes.md +++ b/docs/en/changes/changes.md @@ -15,6 +15,7 @@ * Support async-profiler feature for performance analysis. * Add metrics value owner for metrics topN query result. * Add naming control for `EndpointDependencyBuilder`. +* The index type `BanyanDB.IndexRule.IndexType#TREE` is removed. All indices are using `IndexType#INVERTED` now. UI diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/topn/TopN.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/topn/TopN.java index 8c844d6e9a..d52900f0b3 100644 --- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/topn/TopN.java +++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/topn/TopN.java @@ -38,7 +38,6 @@ public abstract class TopN extends Record implements ComparableStorageData { @Getter @Setter @Column(name = LATENCY, dataType = Column.ValueDataType.SAMPLED_RECORD) -@BanyanDB.IndexRule(indexType = BanyanDB.IndexRule.IndexType.TREE) private long latency; @Getter @Setter diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/storage/annotation/BanyanDB.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/storage/annotation/BanyanDB.java index ab0bfe2f9c..a4c0b2e4e3 100644 --- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/storage/annotation/BanyanDB.java +++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/storage/annotation/BanyanDB.java @@ -106,16 +106,12 @@ public @interface BanyanDB { * It's suitable for most tag indexing due to a better memory usage ratio and query performance. */ INVERTED, -/** - * The `TREE` index could be better when there are high cardinalities, such as the `ID` tag and numeric duration tag. - * In these cases, it saves much memory space. - */ -TREE; } } /** - * timestampColumn is to identify which column in {@link Record} is providing the timestamp(millisecond) for BanyanDB. + * timestampColumn is to identify which column in {@link Record} is providing the timestamp(millisecond) for + * BanyanDB. * BanyanDB stream requires a timestamp in milliseconds. * * @since 9.3.0 diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/storage/model/BanyanDBExtension.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/storage/model/BanyanDBExtension.java index 576d41469c..d680176574 100644 --- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/storage/model/BanyanDBExtension.java +++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/storage/model/BanyanDBExtension.java @@ -51,12 +51,13 @@ public class BanyanDBExtension { * indexType is the type of index built for a {@link ModelColumn} in BanyanDB. * * @since 9.3.0 + * @deprecated since 10.2. Only support {@link BanyanDB.IndexRule.IndexType#INVERTED} now. There was IndexType#TREE, + * but removed. */ -@Getter private final BanyanDB.IndexRule.IndexType indexType; /** - * A column belong to a measure's field. + * A column belong to a measure's field. */ @Getter private final boolean isMeasureField;
(skywalking) branch index_type created (now e8063e2de4)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a change to branch index_type in repository https://gitbox.apache.org/repos/asf/skywalking.git at e8063e2de4 The index type `BanyanDB.IndexRule.IndexType#TREE` is removed This branch includes the following new commits: new e8063e2de4 The index type `BanyanDB.IndexRule.IndexType#TREE` is removed The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference.
(skywalking) 01/01: The index type `BanyanDB.IndexRule.IndexType#TREE` is removed
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a commit to branch index_type in repository https://gitbox.apache.org/repos/asf/skywalking.git commit e8063e2de474066d1ee19ffc52ea676bf29fe9ea Author: Wu Sheng AuthorDate: Sun Nov 3 22:51:14 2024 +0800 The index type `BanyanDB.IndexRule.IndexType#TREE` is removed --- docs/en/changes/changes.md| 1 + .../org/apache/skywalking/oap/server/core/analysis/topn/TopN.java | 1 - .../skywalking/oap/server/core/storage/annotation/BanyanDB.java | 8 ++-- .../oap/server/core/storage/model/BanyanDBExtension.java | 5 +++-- 4 files changed, 6 insertions(+), 9 deletions(-) diff --git a/docs/en/changes/changes.md b/docs/en/changes/changes.md index a5a77dfd67..cd8260b1a7 100644 --- a/docs/en/changes/changes.md +++ b/docs/en/changes/changes.md @@ -15,6 +15,7 @@ * Support async-profiler feature for performance analysis. * Add metrics value owner for metrics topN query result. * Add naming control for `EndpointDependencyBuilder`. +* The index type `BanyanDB.IndexRule.IndexType#TREE` is removed. All indices are using `IndexType#INVERTED` now. UI diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/topn/TopN.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/topn/TopN.java index 8c844d6e9a..d52900f0b3 100644 --- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/topn/TopN.java +++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/topn/TopN.java @@ -38,7 +38,6 @@ public abstract class TopN extends Record implements ComparableStorageData { @Getter @Setter @Column(name = LATENCY, dataType = Column.ValueDataType.SAMPLED_RECORD) -@BanyanDB.IndexRule(indexType = BanyanDB.IndexRule.IndexType.TREE) private long latency; @Getter @Setter diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/storage/annotation/BanyanDB.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/storage/annotation/BanyanDB.java index ab0bfe2f9c..a4c0b2e4e3 100644 --- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/storage/annotation/BanyanDB.java +++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/storage/annotation/BanyanDB.java @@ -106,16 +106,12 @@ public @interface BanyanDB { * It's suitable for most tag indexing due to a better memory usage ratio and query performance. */ INVERTED, -/** - * The `TREE` index could be better when there are high cardinalities, such as the `ID` tag and numeric duration tag. - * In these cases, it saves much memory space. - */ -TREE; } } /** - * timestampColumn is to identify which column in {@link Record} is providing the timestamp(millisecond) for BanyanDB. + * timestampColumn is to identify which column in {@link Record} is providing the timestamp(millisecond) for + * BanyanDB. * BanyanDB stream requires a timestamp in milliseconds. * * @since 9.3.0 diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/storage/model/BanyanDBExtension.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/storage/model/BanyanDBExtension.java index 576d41469c..d680176574 100644 --- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/storage/model/BanyanDBExtension.java +++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/storage/model/BanyanDBExtension.java @@ -51,12 +51,13 @@ public class BanyanDBExtension { * indexType is the type of index built for a {@link ModelColumn} in BanyanDB. * * @since 9.3.0 + * @deprecated since 10.2. Only support {@link BanyanDB.IndexRule.IndexType#INVERTED} now. There was IndexType#TREE, + * but removed. */ -@Getter private final BanyanDB.IndexRule.IndexType indexType; /** - * A column belong to a measure's field. + * A column belong to a measure's field. */ @Getter private final boolean isMeasureField;
(skywalking) branch master updated: Add naming control for `EndpointDependencyBuilder`. (#12738)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/skywalking.git The following commit(s) were added to refs/heads/master by this push: new 55600c6672 Add naming control for `EndpointDependencyBuilder`. (#12738) 55600c6672 is described below commit 55600c667245e7c324ea82cb353e8c1e2dcb29ae Author: weixiang1862 <652048...@qq.com> AuthorDate: Fri Nov 1 18:19:19 2024 +0800 Add naming control for `EndpointDependencyBuilder`. (#12738) --- docs/en/changes/changes.md| 1 + .../parser/listener/EndpointDepFromCrossThreadAnalysisListener.java | 1 + .../provider/trace/parser/listener/EndpointDependencyBuilder.java | 4 3 files changed, 6 insertions(+) diff --git a/docs/en/changes/changes.md b/docs/en/changes/changes.md index aa672797dd..a5a77dfd67 100644 --- a/docs/en/changes/changes.md +++ b/docs/en/changes/changes.md @@ -14,6 +14,7 @@ * Support adding additional attr[0-4] for service level metrics. * Support async-profiler feature for performance analysis. * Add metrics value owner for metrics topN query result. +* Add naming control for `EndpointDependencyBuilder`. UI diff --git a/oap-server/analyzer/agent-analyzer/src/main/java/org/apache/skywalking/oap/server/analyzer/provider/trace/parser/listener/EndpointDepFromCrossThreadAnalysisListener.java b/oap-server/analyzer/agent-analyzer/src/main/java/org/apache/skywalking/oap/server/analyzer/provider/trace/parser/listener/EndpointDepFromCrossThreadAnalysisListener.java index 9f5edb5ace..08fcc0da8d 100644 --- a/oap-server/analyzer/agent-analyzer/src/main/java/org/apache/skywalking/oap/server/analyzer/provider/trace/parser/listener/EndpointDepFromCrossThreadAnalysisListener.java +++ b/oap-server/analyzer/agent-analyzer/src/main/java/org/apache/skywalking/oap/server/analyzer/provider/trace/parser/listener/EndpointDepFromCrossThreadAnalysisListener.java @@ -123,6 +123,7 @@ public class EndpointDepFromCrossThreadAnalysisListener extends CommonAnalysisLi @Override public void build() { depBuilders.forEach(endpointDep -> { +endpointDep.prepare(); // Source endpoint meta could be generated duplicated if it belongs to an entry span of downstream. // But if it belongs a local or exit span, then miss it in metadata. // Consider OAP has the capability to remove duplicate, generate it anyway. diff --git a/oap-server/analyzer/agent-analyzer/src/main/java/org/apache/skywalking/oap/server/analyzer/provider/trace/parser/listener/EndpointDependencyBuilder.java b/oap-server/analyzer/agent-analyzer/src/main/java/org/apache/skywalking/oap/server/analyzer/provider/trace/parser/listener/EndpointDependencyBuilder.java index d0531b15e5..ad2b72deb4 100644 --- a/oap-server/analyzer/agent-analyzer/src/main/java/org/apache/skywalking/oap/server/analyzer/provider/trace/parser/listener/EndpointDependencyBuilder.java +++ b/oap-server/analyzer/agent-analyzer/src/main/java/org/apache/skywalking/oap/server/analyzer/provider/trace/parser/listener/EndpointDependencyBuilder.java @@ -33,6 +33,10 @@ import org.apache.skywalking.oap.server.core.source.EndpointRelation; public class EndpointDependencyBuilder { private final RPCTrafficSourceBuilder rpcTrafficSourceBuilder; +void prepare() { +rpcTrafficSourceBuilder.prepare(); +} + EndpointRelation toEndpointRelation() { return rpcTrafficSourceBuilder.toEndpointRelation(); }
(skywalking-showcase) branch main updated: Upgrade oap and cli and java-agent version to support async profiler feature (#193)
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-showcase.git The following commit(s) were added to refs/heads/main by this push: new 1af9f3b Upgrade oap and cli and java-agent version to support async profiler feature (#193) 1af9f3b is described below commit 1af9f3b2f86c8c7b89639aeb6fee7fe9be3fd247 Author: zhengziyi0117 <91662408+zhengziyi0...@users.noreply.github.com> AuthorDate: Fri Nov 1 15:38:52 2024 +0800 Upgrade oap and cli and java-agent version to support async profiler feature (#193) --- Makefile.in | 8 deploy/platform/docker/docker-compose.agent.yaml | 2 ++ 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/Makefile.in b/Makefile.in index f47fc34..7d548ee 100644 --- a/Makefile.in +++ b/Makefile.in @@ -33,14 +33,14 @@ ES_IMAGE ?= docker.elastic.co/elasticsearch/elasticsearch-oss ES_IMAGE_TAG ?= 7.10.2 SW_OAP_IMAGE ?= ghcr.io/apache/skywalking/oap -SW_OAP_IMAGE_TAG ?= dc762efc1777d1b906ca48b351124dfb59672d6a +SW_OAP_IMAGE_TAG ?= 9e5fb8f5cfa9402f057740f0feb3f9a83c659cc3 SW_UI_IMAGE ?= ghcr.io/apache/skywalking/ui -SW_UI_IMAGE_TAG ?= dc762efc1777d1b906ca48b351124dfb59672d6a +SW_UI_IMAGE_TAG ?= 9e5fb8f5cfa9402f057740f0feb3f9a83c659cc3 -SW_CLI_IMAGE ?= ghcr.io/apache/skywalking-cli/skywalking-cli:0883266bfaa36612927b69e35781b64ea181758d +SW_CLI_IMAGE ?= ghcr.io/apache/skywalking-cli/skywalking-cli:bce7faaabbd57ed1f40156af8a8eb6c3eccea4ae SW_EVENT_EXPORTER_IMAGE ?= ghcr.io/apache/skywalking-kubernetes-event-exporter/skywalking-kubernetes-event-exporter:8a012a3f968cb139f817189afb9b3748841bba22 -SW_AGENT_JAVA_IMAGE ?= ghcr.io/apache/skywalking-java/skywalking-java:615a1b11bb49106ae9b8dc49da53caef2ec038ae-java8 +SW_AGENT_JAVA_IMAGE ?= ghcr.io/apache/skywalking-java/skywalking-java:26e59485ccd5298f243af9f91f3ff60c0eb80586-java8 SW_AGENT_GO_IMAGE ?= ghcr.io/apache/skywalking-go/skywalking-go:637845b76c9949a495a14ecf0e7e2f0e385701c8-go1.18 SW_AGENT_NODEJS_BACKEND_VERSION ?= 59ef1aed6a404e2e8afffbb4b81ea849ae4f3026 diff --git a/deploy/platform/docker/docker-compose.agent.yaml b/deploy/platform/docker/docker-compose.agent.yaml index ff8b500..c069c11 100644 --- a/deploy/platform/docker/docker-compose.agent.yaml +++ b/deploy/platform/docker/docker-compose.agent.yaml @@ -22,6 +22,7 @@ services: gateway: image: ${HUB}/gateway-service:${TAG} networks: [ sw ] +privileged: true environment: SW_AGENT_NAME: gateway SW_AGENT_COLLECTOR_BACKEND_SERVICES: ${BACKEND_SERVICE}:11800 @@ -39,6 +40,7 @@ services: # Java agent songs: image: ${HUB}/songs-service:${TAG} +privileged: true networks: [ sw ] environment: SW_AGENT_NAME: songs
(skywalking) branch master updated: Add metrics value owner for metrics topN query result (#12737)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/skywalking.git The following commit(s) were added to refs/heads/master by this push: new 39b579f3ae Add metrics value owner for metrics topN query result (#12737) 39b579f3ae is described below commit 39b579f3aef2c1b43f436c1763db7c33bb486dce Author: Wan Kai AuthorDate: Fri Nov 1 15:30:42 2024 +0800 Add metrics value owner for metrics topN query result (#12737) --- docs/en/changes/changes.md | 1 + .../apache/skywalking/mqe/rt/type/MQEValue.java| 2 ++ .../server/core/query/AggregationQueryService.java | 33 +++- .../query/type/{SelectedRecord.java => Owner.java} | 36 -- .../oap/server/core/query/type/SelectedRecord.java | 4 +++ .../oap/query/graphql/mqe/rt/MQEVisitor.java | 1 + .../src/main/resources/query-protocol | 2 +- 7 files changed, 47 insertions(+), 32 deletions(-) diff --git a/docs/en/changes/changes.md b/docs/en/changes/changes.md index 78d030fcfb..aa672797dd 100644 --- a/docs/en/changes/changes.md +++ b/docs/en/changes/changes.md @@ -13,6 +13,7 @@ * Support Kong monitoring. * Support adding additional attr[0-4] for service level metrics. * Support async-profiler feature for performance analysis. +* Add metrics value owner for metrics topN query result. UI diff --git a/oap-server/mqe-rt/src/main/java/org/apache/skywalking/mqe/rt/type/MQEValue.java b/oap-server/mqe-rt/src/main/java/org/apache/skywalking/mqe/rt/type/MQEValue.java index f2ed601a49..2147323bb3 100644 --- a/oap-server/mqe-rt/src/main/java/org/apache/skywalking/mqe/rt/type/MQEValue.java +++ b/oap-server/mqe-rt/src/main/java/org/apache/skywalking/mqe/rt/type/MQEValue.java @@ -20,10 +20,12 @@ package org.apache.skywalking.mqe.rt.type; import lombok.Data; +import org.apache.skywalking.oap.server.core.query.type.Owner; @Data public class MQEValue { private String id; +private Owner owner; private String value; private String traceID; diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/AggregationQueryService.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/AggregationQueryService.java index 19c6baa929..dfe49f9409 100644 --- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/AggregationQueryService.java +++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/AggregationQueryService.java @@ -22,6 +22,7 @@ import java.io.IOException; import java.util.ArrayList; import java.util.Collections; import java.util.List; +import org.apache.skywalking.oap.server.core.query.type.Owner; import org.apache.skywalking.oap.server.core.query.type.debugging.DebuggingSpan; import org.apache.skywalking.oap.server.core.query.type.debugging.DebuggingTraceContext; import org.apache.skywalking.oap.server.library.util.StringUtil; @@ -72,38 +73,56 @@ public class AggregationQueryService implements Service { final List selectedRecords = getAggregationQueryDAO().sortMetricsDebuggable( condition, valueCName, duration, additionalConditions); selectedRecords.forEach(selectedRecord -> { +Owner owner = new Owner(); +owner.setScope(condition.getScope()); +selectedRecord.setOwner(owner); switch (condition.getScope()) { case Service: - selectedRecord.setName(IDManager.ServiceID.analysisId(selectedRecord.getId()).getName()); +final IDManager.ServiceID.ServiceIDDefinition serviceIDDefinition += IDManager.ServiceID.analysisId(selectedRecord.getId()); +selectedRecord.setName(serviceIDDefinition.getName()); +owner.setServiceID(selectedRecord.getId()); +owner.setServiceName(serviceIDDefinition.getName()); +owner.setNormal(serviceIDDefinition.isReal()); break; case ServiceInstance: final IDManager.ServiceInstanceID.InstanceIDDefinition instanceIDDefinition = IDManager.ServiceInstanceID.analysisId(selectedRecord.getId()); +final IDManager.ServiceID.ServiceIDDefinition instanceServiceIDDefinition = + IDManager.ServiceID.analysisId(instanceIDDefinition.getServiceId()); /* * Add the service name into the name if this is global top N. */ if (StringUtil.isEmpty(condition.getParentService())) { -IDManager.ServiceID.ServiceIDDefinition serviceIDDefinition = - IDManager.ServiceID.analysisId(instanceIDDefinition.getSer
(skywalking-client-js) branch master updated: feat: monitor static resource information (#146)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/skywalking-client-js.git The following commit(s) were added to refs/heads/master by this push: new 92914bd feat: monitor static resource information (#146) 92914bd is described below commit 92914bd8398b5af5310428bd8d89cf79f59cc4cc Author: Fine0830 AuthorDate: Fri Nov 1 10:53:53 2024 +0800 feat: monitor static resource information (#146) --- src/performance/index.ts | 49 ++ src/performance/perf.ts| 2 +- src/services/constant.ts | 1 + .../{getNavigationEntry.ts => getEntries.ts} | 9 src/services/observe.ts| 1 + src/services/report.ts | 1 + 6 files changed, 53 insertions(+), 10 deletions(-) diff --git a/src/performance/index.ts b/src/performance/index.ts index 2ce3baa..1d4853b 100644 --- a/src/performance/index.ts +++ b/src/performance/index.ts @@ -24,7 +24,7 @@ import {observe} from "../services/observe"; import {LCPMetric, FIDMetric, CLSMetric} from "./type"; import {LayoutShift} from "../services/types"; import {getVisibilityObserver} from '../services/getVisibilityObserver'; -import {getActivationStart} from '../services/getNavigationEntry'; +import {getActivationStart, getResourceEntry} from '../services/getEntries'; const handler = { set(target: {[key: string]: unknown}, prop: string, value: unknown) { @@ -41,6 +41,7 @@ const handler = { } }; const reportedMetricNames: Record = {}; +const InitiatorTypes = ["beacon", "xmlhttprequest", "fetch"]; class TracePerf { private options: CustomOptionsType = { pagePath: '', @@ -50,6 +51,7 @@ class TracePerf { }; private perfInfo = {}; private coreWebMetrics: Record = {}; + private resources: {name: string, duration: number, size: number, protocol: string, type: string}[] = []; public getPerf(options: CustomOptionsType) { this.options = options; this.perfInfo = { @@ -58,21 +60,50 @@ class TracePerf { service: options.service, } this.coreWebMetrics = new Proxy({...this.perfInfo, collector: options.collector, useWebVitals: options.useWebVitals}, handler); +this.observeResources(); // trace and report perf data and pv to serve when page loaded if (document.readyState === 'complete') { this.getBasicPerf(); } else { - window.addEventListener( -'load', -() => { - this.getBasicPerf(); -}, -false, - ); + window.addEventListener('load', () => this.getBasicPerf()); } this.getCorePerf(); +window.addEventListener('beforeunload', () => this.reportResources()); + } + private observeResources() { +observe('resource', (list) => { + const newResources = list.filter((d: PerformanceResourceTiming) => !InitiatorTypes.includes(d.initiatorType)) + .map((d: PerformanceResourceTiming) => ({ +service: this.options.service, +serviceVersion: this.options.serviceVersion, +pagePath: this.options.pagePath, +name: d.name, +duration: Math.floor(d.duration), +size: d.transferSize, +protocol: d.nextHopProtocol, +type: d.initiatorType, + })); + this.resources.push(...newResources); +}); + } + private reportResources() { +const newResources = getResourceEntry().filter((d: PerformanceResourceTiming) => !InitiatorTypes.includes(d.initiatorType)) + .map((d: PerformanceResourceTiming) => ({ +service: this.options.service, +serviceVersion: this.options.serviceVersion, +pagePath: this.options.pagePath, +name: d.name, +duration: Math.floor(d.duration), +size: d.transferSize, +protocol: d.nextHopProtocol, +type: d.initiatorType, + })); +const list = [...newResources, ...this.resources]; +if (!list.length) { + return; +} +new Report('RESOURCES', this.options.collector).sendByBeacon(list); } - private async getCorePerf() { if (this.options.useWebVitals) { this.LCP(); diff --git a/src/performance/perf.ts b/src/performance/perf.ts index 820cf2f..9fee429 100644 --- a/src/performance/perf.ts +++ b/src/performance/perf.ts @@ -15,7 +15,7 @@ * limitations under the License. */ import { IPerfDetail } from './type'; -import {getNavigationEntry} from '../services/getNavigationEntry'; +import {getNavigationEntry} from '../services/getEntries'; class PagePerf { public getPerfTiming(): IPerfDetail { try { diff --git a/src/services/constant.ts b/src/services/const
(skywalking-java) branch main updated: fix: jdk8 send jfr data error (#725)
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-java.git The following commit(s) were added to refs/heads/main by this push: new 26e59485cc fix: jdk8 send jfr data error (#725) 26e59485cc is described below commit 26e59485ccd5298f243af9f91f3ff60c0eb80586 Author: zhengziyi0117 <91662408+zhengziyi0...@users.noreply.github.com> AuthorDate: Thu Oct 31 17:31:33 2024 +0800 fix: jdk8 send jfr data error (#725) --- .../asyncprofiler/AsyncProfilerDataSender.java | 116 +++-- .../AsyncProfilerTaskExecutionService.java | 19 ++-- 2 files changed, 65 insertions(+), 70 deletions(-) diff --git a/apm-sniffer/apm-agent-core/src/main/java/org/apache/skywalking/apm/agent/core/asyncprofiler/AsyncProfilerDataSender.java b/apm-sniffer/apm-agent-core/src/main/java/org/apache/skywalking/apm/agent/core/asyncprofiler/AsyncProfilerDataSender.java index 5e09fab5b0..46a25c4cc2 100644 --- a/apm-sniffer/apm-agent-core/src/main/java/org/apache/skywalking/apm/agent/core/asyncprofiler/AsyncProfilerDataSender.java +++ b/apm-sniffer/apm-agent-core/src/main/java/org/apache/skywalking/apm/agent/core/asyncprofiler/AsyncProfilerDataSender.java @@ -39,10 +39,10 @@ import org.apache.skywalking.apm.network.language.asyncprofiler.v10.AsyncProfile import org.apache.skywalking.apm.network.language.asyncprofiler.v10.AsyncProfilerTaskGrpc; import org.apache.skywalking.apm.network.language.asyncprofiler.v10.AsyncProfilingStatus; +import java.io.File; +import java.io.FileInputStream; import java.io.IOException; -import java.nio.ByteBuffer; -import java.nio.channels.FileChannel; -import java.util.Objects; +import java.nio.file.Files; import java.util.concurrent.TimeUnit; import static org.apache.skywalking.apm.agent.core.conf.Config.AsyncProfiler.DATA_CHUNK_SIZE; @@ -87,69 +87,71 @@ public class AsyncProfilerDataSender implements BootService, GRPCChannelListener this.status = status; } -public void sendData(AsyncProfilerTask task, FileChannel channel) throws IOException, InterruptedException { -if (status != GRPCChannelStatus.CONNECTED || Objects.isNull(channel) || !channel.isOpen()) { +public void sendData(AsyncProfilerTask task, File dumpFile) throws IOException, InterruptedException { +if (status != GRPCChannelStatus.CONNECTED) { return; } -int size = Math.toIntExact(channel.size()); -final GRPCStreamServiceStatus status = new GRPCStreamServiceStatus(false); -StreamObserver dataStreamObserver = asyncProfilerTaskStub.withDeadlineAfter( -GRPC_UPSTREAM_TIMEOUT, TimeUnit.SECONDS -).collect(new ClientResponseObserver() { -ClientCallStreamObserver requestStream; - -@Override -public void beforeStart(ClientCallStreamObserver requestStream) { -this.requestStream = requestStream; -} +try (FileInputStream fileInputStream = new FileInputStream(dumpFile)) { +long fileSize = Files.size(dumpFile.toPath()); +int size = Math.toIntExact(fileSize); +final GRPCStreamServiceStatus status = new GRPCStreamServiceStatus(false); +StreamObserver dataStreamObserver = asyncProfilerTaskStub.withDeadlineAfter( +GRPC_UPSTREAM_TIMEOUT, TimeUnit.SECONDS +).collect(new ClientResponseObserver() { +ClientCallStreamObserver requestStream; + +@Override +public void beforeStart(ClientCallStreamObserver requestStream) { +this.requestStream = requestStream; +} -@Override -public void onNext(AsyncProfilerCollectionResponse value) { -if (AsyncProfilingStatus.TERMINATED_BY_OVERSIZE.equals(value.getType())) { -LOGGER.warn("JFR is too large to be received by the oap server"); -} else { -ByteBuffer buf = ByteBuffer.allocateDirect(DATA_CHUNK_SIZE); -try { -while (channel.read(buf) > 0) { -buf.flip(); -AsyncProfilerData asyncProfilerData = AsyncProfilerData.newBuilder() -.setContent(ByteString.copyFrom(buf)) -.build(); -requestStream.onNext(asyncProfilerData); -buf.clear(); +@Override +public void onNext(AsyncProfilerCollectionResponse value) { +if (AsyncProfilingStatus.TERMINATED_BY_OVERSIZE.equals(value.getType())) { +LOGGER.warn("JFR is too large to be received by the oap server"); +} else { +
(skywalking) branch master updated: Fix artifacts in `upload-artifact@v4` are immutable (#12731)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/skywalking.git The following commit(s) were added to refs/heads/master by this push: new fd98b0fa0d Fix artifacts in `upload-artifact@v4` are immutable (#12731) fd98b0fa0d is described below commit fd98b0fa0d2e1ac86794d95e4595d19b0ef68943 Author: kezhenxu94 AuthorDate: Thu Oct 31 16:22:23 2024 +0800 Fix artifacts in `upload-artifact@v4` are immutable (#12731) --- .github/workflows/skywalking.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/skywalking.yaml b/.github/workflows/skywalking.yaml index 924bf207aa..6c1e5dc659 100644 --- a/.github/workflows/skywalking.yaml +++ b/.github/workflows/skywalking.yaml @@ -744,7 +744,7 @@ jobs: if: ${{ failure() }} name: Upload Logs with: - name: logs + name: test-logs-${{ matrix.test.name }} path: "${{ env.SW_INFRA_E2E_LOG_DIR }}" e2e-test-istio: @@ -805,7 +805,7 @@ jobs: if: ${{ failure() }} name: Upload Logs with: - name: logs + name: test-logs-${{ matrix.test.name }} path: "${{ env.SW_INFRA_E2E_LOG_DIR }}" e2e-test-java-versions:
(skywalking-java) branch main updated: Support async profiler feature (#720)
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-java.git The following commit(s) were added to refs/heads/main by this push: new 2027a98b1e Support async profiler feature (#720) 2027a98b1e is described below commit 2027a98b1ec28ec24be3b7aac346d11bb3f3ccfe Author: zhengziyi0117 <91662408+zhengziyi0...@users.noreply.github.com> AuthorDate: Wed Oct 30 17:22:33 2024 +0800 Support async profiler feature (#720) --- .../command/AsyncProfilerTaskCommand.java | 133 ++ .../component/command/CommandDeserializer.java | 3 + apm-protocol/apm-network/src/main/proto| 2 +- apm-sniffer/apm-agent-core/pom.xml | 4 + .../asyncprofiler/AsyncProfilerDataSender.java | 194 + .../core/asyncprofiler/AsyncProfilerTask.java | 146 .../AsyncProfilerTaskChannelService.java | 131 ++ .../AsyncProfilerTaskExecutionService.java | 160 + .../core/commands/CommandExecutorService.java | 5 + .../executor/AsyncProfilerCommandExecutor.java | 44 + .../skywalking/apm/agent/core/conf/Config.java | 27 +++ ...ache.skywalking.apm.agent.core.boot.BootService | 3 + .../apm/agent/core/boot/ServiceManagerTest.java| 4 +- apm-sniffer/config/agent.config| 6 + dist-material/LICENSE | 1 + pom.xml| 6 + 16 files changed, 866 insertions(+), 3 deletions(-) diff --git a/apm-protocol/apm-network/src/main/java/org/apache/skywalking/apm/network/trace/component/command/AsyncProfilerTaskCommand.java b/apm-protocol/apm-network/src/main/java/org/apache/skywalking/apm/network/trace/component/command/AsyncProfilerTaskCommand.java new file mode 100644 index 00..41d6043dee --- /dev/null +++ b/apm-protocol/apm-network/src/main/java/org/apache/skywalking/apm/network/trace/component/command/AsyncProfilerTaskCommand.java @@ -0,0 +1,133 @@ +/* + * 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.apm.network.trace.component.command; + +import org.apache.skywalking.apm.network.common.v3.Command; +import org.apache.skywalking.apm.network.common.v3.KeyStringValuePair; + +import java.util.List; +import java.util.Objects; + +public class AsyncProfilerTaskCommand extends BaseCommand implements Serializable, Deserializable { +public static final Deserializable DESERIALIZER = new AsyncProfilerTaskCommand("", "", 0, null, "", 0); +public static final String NAME = "AsyncProfilerTaskQuery"; + +/** + * async-profiler taskId + */ +private final String taskId; +/** + * run profiling for duration (second) + */ +private final int duration; +/** + * async profiler extended parameters. Here is a table of optional parameters. + * + * lock[=DURATION] - profile contended locks overflowing the DURATION ns bucket (default: 10us) + * alloc[=BYTES]- profile allocations with BYTES interval + * interval=N - sampling interval in ns (default: 10'000'000, i.e. 10 ms) + * jstackdepth=N- maximum Java stack depth (default: 2048) + * chunksize=N - approximate size of JFR chunk in bytes (default: 100 MB) + * chunktime=N - duration of JFR chunk in seconds (default: 1 hour) + * details @see https://github.com/async-profiler/async-profiler/blob/master/src/arguments.cpp#L44";>async-profiler argument + */ +private final String execArgs; +/** + * task create time + */ +private final long createTime; + +public AsyncProfilerTaskCommand(String serialNumber, String taskId, int duration, +List events, String execArgs, long createTime) { +super(NAME, serialNumber); +this.taskId = taskId; +this.duration = duration; +this.createTime = createTime; +String comma = ","; +StringBuilder sb = new String
(skywalking-java) branch main updated: Add async-profiler feature CHANGES.md (#724)
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-java.git The following commit(s) were added to refs/heads/main by this push: new 54a3372a8f Add async-profiler feature CHANGES.md (#724) 54a3372a8f is described below commit 54a3372a8fdbfe562659cbee6f679839f1b88ec2 Author: zhengziyi0117 <91662408+zhengziyi0...@users.noreply.github.com> AuthorDate: Wed Oct 30 18:52:56 2024 +0800 Add async-profiler feature CHANGES.md (#724) --- CHANGES.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGES.md b/CHANGES.md index 270c4ab125..c2c322b280 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -9,6 +9,7 @@ Release Notes. * Add agent self-observability. * Fix intermittent ClassCircularityError by preloading ThreadLocalRandom since ByteBuddy 1.12.11 * Add witness class/method for resteasy-server plugin(v3/v4/v6) +* Add async-profiler feature for performance analysis All issues and pull requests are [here](https://github.com/apache/skywalking/milestone/222?closed=1)
(skywalking) branch master updated: TopN query attrs filter support not equal. (#12730)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/skywalking.git The following commit(s) were added to refs/heads/master by this push: new 3ecffd6e65 TopN query attrs filter support not equal. (#12730) 3ecffd6e65 is described below commit 3ecffd6e65a31f62e87dd49d4e46770fa79554d9 Author: Wan Kai AuthorDate: Wed Oct 30 17:22:54 2024 +0800 TopN query attrs filter support not equal. (#12730) --- docs/en/api/metrics-query-expression.md| 7 - .../apache/skywalking/mqe/rt/grammar/MQEParser.g4 | 2 +- .../oap/server/core/analysis/metrics/Metrics.java | 1 - .../oap/server/core/query/input/AttrCondition.java | 30 ++ .../oap/server/core/query/input/TopNCondition.java | 3 ++- .../oap/query/graphql/mqe/rt/MQEVisitor.java | 16 +++- .../banyandb/BanyanDBAggregationQueryDAO.java | 14 +- .../banyandb/stream/AbstractBanyanDBDAO.java | 29 +++-- .../elasticsearch/query/AggregationQueryEsDAO.java | 14 +- .../jdbc/common/dao/JDBCAggregationQueryDAO.java | 13 +- test/e2e-v2/cases/mqe/mqe-cases.yaml | 4 ++- test/e2e-v2/cases/storage/banyandb/e2e.yaml| 2 ++ test/e2e-v2/cases/storage/es/e2e.yaml | 2 ++ test/e2e-v2/cases/storage/opensearch/e2e.yaml | 2 ++ test/e2e-v2/cases/storage/storage-cases.yaml | 2 ++ 15 files changed, 97 insertions(+), 44 deletions(-) diff --git a/docs/en/api/metrics-query-expression.md b/docs/en/api/metrics-query-expression.md index 0a734c7aa1..5d6b9865e1 100644 --- a/docs/en/api/metrics-query-expression.md +++ b/docs/en/api/metrics-query-expression.md @@ -237,7 +237,12 @@ top_n(, , , ) - `attrs` optional, attrs is the attributes of the metrics, could be used to filter the topN results. SkyWalking supports 6 attrs: `attr0`, `attr1`, `attr2`, `attr3`, `attr4`, `attr5`. The format is `attr0='value', attr1='value'...attr5='value5'`, could use one or multiple attrs to filter the topN results. - **Notice**: The `attrs` only support Service metrics for now and should be added in the metrics first, see [Metrics Additional Attributes](../concepts-and-designs/metrics-additional-attributes.md). + The attrs filter also supports not-equal filter `!=`, the format is `attr0 != 'value'`. + +**Notice**: +- The `attrs` only support Service metrics for now and should be added in the metrics first, see [Metrics Additional Attributes](../concepts-and-designs/metrics-additional-attributes.md). +- When use not-equal filter, for example `attr1 != 'value'`, if the storage is using `MySQL` or other JDBC storage and `attr1 value is NULL` in the metrics, +the result of `attr1 != 'value'` will always `false` and would NOT include this metric in the result due to SQL can't compare `NULL` with the `value`. For example: 1. If we want to query the top 10 services with the highest `service_cpm` metric value, we can use the following expression and make sure the `entity` is empty: diff --git a/oap-server/mqe-grammar/src/main/antlr4/org/apache/skywalking/mqe/rt/grammar/MQEParser.g4 b/oap-server/mqe-grammar/src/main/antlr4/org/apache/skywalking/mqe/rt/grammar/MQEParser.g4 index 92440b3097..d85edcde40 100644 --- a/oap-server/mqe-grammar/src/main/antlr4/org/apache/skywalking/mqe/rt/grammar/MQEParser.g4 +++ b/oap-server/mqe-grammar/src/main/antlr4/org/apache/skywalking/mqe/rt/grammar/MQEParser.g4 @@ -102,5 +102,5 @@ sort_label_values: attributeName: ATTR0 | ATTR1 | ATTR2 | ATTR3 | ATTR4 | ATTR5; -attribute: attributeName EQ VALUE_STRING; +attribute: attributeName (EQ | NEQ) VALUE_STRING; attributeList: attribute (COMMA attribute)*; diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/metrics/Metrics.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/metrics/Metrics.java index 439d66ff89..6259fda365 100644 --- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/metrics/Metrics.java +++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/metrics/Metrics.java @@ -38,7 +38,6 @@ import org.apache.skywalking.oap.server.core.storage.annotation.Column; public abstract class Metrics extends StreamData implements StorageData { public static final String ENTITY_ID = "entity_id"; public static final String ID = "id"; -public static final String ATTR_NAME_PREFIX = "attr"; /** * Time attribute diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/input/AttrCondition.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/query/input/AttrCondition.java new file mode 100644 in
(skywalking-data-collect-protocol) branch master updated: fix: async profiler send data dual stream (#102)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/skywalking-data-collect-protocol.git The following commit(s) were added to refs/heads/master by this push: new bd1f91f fix: async profiler send data dual stream (#102) bd1f91f is described below commit bd1f91f7e1cb4de9d9b5ccb71f36ce6b1c7c97f5 Author: zhengziyi0117 <91662408+zhengziyi0...@users.noreply.github.com> AuthorDate: Tue Oct 29 14:39:25 2024 +0800 fix: async profiler send data dual stream (#102) --- asyncprofiler/AsyncProfiler.proto | 16 +++- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/asyncprofiler/AsyncProfiler.proto b/asyncprofiler/AsyncProfiler.proto index f8afb46..e216f66 100644 --- a/asyncprofiler/AsyncProfiler.proto +++ b/asyncprofiler/AsyncProfiler.proto @@ -28,7 +28,7 @@ import "common/Command.proto"; service AsyncProfilerTask { // collect sends JFR data to the OAP server - rpc collect(stream AsyncProfilerData) returns (skywalking.v3.Commands); + rpc collect(stream AsyncProfilerData) returns (stream AsyncProfilerCollectionResponse); // getAsyncProfilerTaskCommands sends query to the OAP server for all AsyncProfiler tasks to be executed for the given Java Agent instance rpc getAsyncProfilerTaskCommands (AsyncProfilerTaskCommandQuery) returns (skywalking.v3.Commands); } @@ -44,11 +44,17 @@ message AsyncProfilerData { } } -enum AsyncProfilerCollectType { - // PROFILING_SUCCESS means the Java Agent has finished the execution +message AsyncProfilerCollectionResponse { + AsyncProfilingStatus type = 1; +} + +enum AsyncProfilingStatus { + // PROFILING_SUCCESS indicates the Java Agent has finished the execution PROFILING_SUCCESS = 0; - // EXECUTION_TASK_ERROR means potential execution error caused by the Java Agent, such as an error in the sent task parameters. + // EXECUTION_TASK_ERROR indicates a potential execution error caused by the Java Agent, such as an error in the task parameters that were sent. EXECUTION_TASK_ERROR = 1; + // TERMINATED_BY_OVERSIZE means that the server cannot receive the JFR file because the size of the file is over the limitation. + TERMINATED_BY_OVERSIZE = 2; } message AsyncProfilerMetaData { @@ -57,7 +63,7 @@ message AsyncProfilerMetaData { // async-profiler task id string taskId = 3; // AsyncProfilerCollectType indicates the overall status of the AsyncProfiler task, i.e. success or failure - AsyncProfilerCollectType type = 4; + AsyncProfilingStatus type = 4; // if type is success then it will be the size of the JFR file, otherwise it will be 0 int32 contentSize = 5; }
(skywalking-java) branch main updated: Add witness class/method for resteasy-server plugin (#722)
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-java.git The following commit(s) were added to refs/heads/main by this push: new 576550a8db Add witness class/method for resteasy-server plugin (#722) 576550a8db is described below commit 576550a8db6e1f98bfd3746aacafb0acbc3922b4 Author: Leibniz.Hu AuthorDate: Mon Oct 28 18:07:29 2024 +0800 Add witness class/method for resteasy-server plugin (#722) --- CHANGES.md | 2 +- .../define/SynchronousDispatcherInstrumentation.java | 5 + .../define/SynchronousDispatcherInstrumentation.java | 18 ++ .../define/SynchronousDispatcherInstrumentation.java | 18 ++ 4 files changed, 42 insertions(+), 1 deletion(-) diff --git a/CHANGES.md b/CHANGES.md index 57fd985098..270c4ab125 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -8,7 +8,7 @@ Release Notes. * Upgrade nats plugin to support 2.16.5 * Add agent self-observability. * Fix intermittent ClassCircularityError by preloading ThreadLocalRandom since ByteBuddy 1.12.11 - +* Add witness class/method for resteasy-server plugin(v3/v4/v6) All issues and pull requests are [here](https://github.com/apache/skywalking/milestone/222?closed=1) diff --git a/apm-sniffer/apm-sdk-plugin/resteasy-plugin/resteasy-server-3.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/resteasy/v3/server/define/SynchronousDispatcherInstrumentation.java b/apm-sniffer/apm-sdk-plugin/resteasy-plugin/resteasy-server-3.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/resteasy/v3/server/define/SynchronousDispatcherInstrumentation.java index aaade19398..77093e85a8 100644 --- a/apm-sniffer/apm-sdk-plugin/resteasy-plugin/resteasy-server-3.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/resteasy/v3/server/define/SynchronousDispatcherInstrumentation.java +++ b/apm-sniffer/apm-sdk-plugin/resteasy-plugin/resteasy-server-3.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/resteasy/v3/server/define/SynchronousDispatcherInstrumentation.java @@ -83,4 +83,9 @@ public class SynchronousDispatcherInstrumentation extends ClassInstanceMethodsEn protected ClassMatch enhanceClass() { return NameMatch.byName(ENHANCE_CLASS); } + +@Override +protected String[] witnessClasses() { +return new String[]{"org.jboss.resteasy.core.Dispatcher"}; +} } diff --git a/apm-sniffer/apm-sdk-plugin/resteasy-plugin/resteasy-server-4.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/resteasy/v4/server/define/SynchronousDispatcherInstrumentation.java b/apm-sniffer/apm-sdk-plugin/resteasy-plugin/resteasy-server-4.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/resteasy/v4/server/define/SynchronousDispatcherInstrumentation.java index 245994dc69..206af100d8 100644 --- a/apm-sniffer/apm-sdk-plugin/resteasy-plugin/resteasy-server-4.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/resteasy/v4/server/define/SynchronousDispatcherInstrumentation.java +++ b/apm-sniffer/apm-sdk-plugin/resteasy-plugin/resteasy-server-4.x-plugin/src/main/java/org/apache/skywalking/apm/plugin/resteasy/v4/server/define/SynchronousDispatcherInstrumentation.java @@ -20,13 +20,18 @@ package org.apache.skywalking.apm.plugin.resteasy.v4.server.define; import net.bytebuddy.description.method.MethodDescription; import net.bytebuddy.matcher.ElementMatcher; +import org.apache.skywalking.apm.agent.core.plugin.WitnessMethod; import org.apache.skywalking.apm.agent.core.plugin.interceptor.ConstructorInterceptPoint; import org.apache.skywalking.apm.agent.core.plugin.interceptor.InstanceMethodsInterceptPoint; import org.apache.skywalking.apm.agent.core.plugin.interceptor.enhance.ClassInstanceMethodsEnhancePluginDefine; import org.apache.skywalking.apm.agent.core.plugin.match.ClassMatch; import org.apache.skywalking.apm.agent.core.plugin.match.NameMatch; +import java.util.Collections; +import java.util.List; + import static net.bytebuddy.matcher.ElementMatchers.named; +import static net.bytebuddy.matcher.ElementMatchers.returns; import static net.bytebuddy.matcher.ElementMatchers.takesArguments; public class SynchronousDispatcherInstrumentation extends ClassInstanceMethodsEnhancePluginDefine { @@ -83,4 +88,17 @@ public class SynchronousDispatcherInstrumentation extends ClassInstanceMethodsEn protected ClassMatch enhanceClass() { return NameMatch.byName(ENHANCE_CLASS); } + +@Override +protected String[] witnessClasses() { +return new String[]{"org.jboss.resteasy.core.InternalDispatcher"}; +} + +@Override +protected List witnessMethods() { +return Collections.singletonList(new WitnessMethod( +"org.jboss.resteasy.spi.Dispatcher", + named("internalInvocation").and(
(skywalking) branch master updated: Reduce Kubernetes metrics calculate in the MQE and Add global widget in Kubernetes Dashboard (#12726)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/skywalking.git The following commit(s) were added to refs/heads/master by this push: new baa6fcdda8 Reduce Kubernetes metrics calculate in the MQE and Add global widget in Kubernetes Dashboard (#12726) baa6fcdda8 is described below commit baa6fcdda8e35dd0417b66a05440d59c7609d65f Author: mrproliu <741550...@qq.com> AuthorDate: Sat Oct 26 19:18:44 2024 +0800 Reduce Kubernetes metrics calculate in the MQE and Add global widget in Kubernetes Dashboard (#12726) --- docs/en/changes/changes.md | 3 +- .../skywalking/oal/rt/parser/OALListener.java | 2 +- .../endpoint/K8SEndpointTrafficDispatcher.java | 1 + .../oap/server/core/source/K8SService.java | 34 +++ .../K8SServiceDecorator.java} | 25 +- .../server-starter/src/main/resources/oal/ebpf.oal | 277 +++-- .../k8s_service/K8S-Endpoint.json | 10 +- .../k8s_service/K8S-Service-Instance-Relation.json | 68 ++--- .../k8s_service/K8S-Service-Relation.json | 68 ++--- .../k8s_service/k8s-service-pod.json | 48 ++-- .../k8s_service/k8s-service-root.json | 86 ++- .../k8s_service/k8s-service-service.json | 70 +++--- .../profiling/ebpf/access_log/accesslog-cases.yaml | 14 +- 13 files changed, 415 insertions(+), 291 deletions(-) diff --git a/docs/en/changes/changes.md b/docs/en/changes/changes.md index 312b6571e1..1924397e7f 100644 --- a/docs/en/changes/changes.md +++ b/docs/en/changes/changes.md @@ -19,8 +19,9 @@ * Add content decorations to Table and Card widgets. * Support the endpoint list widget query with duration parameter. * Support ranges for Value Mappings. -* Add service global topN widget on `General-Root` and `Mesh-Root` dashboard. +* Add service global topN widget on `General-Root`, `Mesh-Root`, `K8S-Root` dashboard. * Fix initialization dashboards. +* Update the Kubernetes metrics for reduce multiple metrics calculate in MQE. Documentation * Update release document to adopt newly added revision-based process. diff --git a/oap-server/oal-rt/src/main/java/org/apache/skywalking/oal/rt/parser/OALListener.java b/oap-server/oal-rt/src/main/java/org/apache/skywalking/oal/rt/parser/OALListener.java index 4b7e954ba4..e2c83731e6 100644 --- a/oap-server/oal-rt/src/main/java/org/apache/skywalking/oal/rt/parser/OALListener.java +++ b/oap-server/oal-rt/src/main/java/org/apache/skywalking/oal/rt/parser/OALListener.java @@ -125,7 +125,7 @@ public class OALListener extends OALParserBaseListener { current.setSourceDecorator(decoratorNameTrim); Map> map = SourceDecoratorManager.DECORATOR_MAP; int currentScopeId = current.getFrom().getSourceScopeId(); -if (currentScopeId != DefaultScopeDefine.SERVICE) { +if (currentScopeId != DefaultScopeDefine.SERVICE && currentScopeId != DefaultScopeDefine.K8S_SERVICE) { throw new IllegalArgumentException("OAL metric: " + current.getMetricsName() + ", decorate source only support service scope."); } ISourceDecorator decorator = map.get(decoratorNameTrim); diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/manual/endpoint/K8SEndpointTrafficDispatcher.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/manual/endpoint/K8SEndpointTrafficDispatcher.java index d4a9a98ef5..90cdfd401f 100644 --- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/manual/endpoint/K8SEndpointTrafficDispatcher.java +++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/manual/endpoint/K8SEndpointTrafficDispatcher.java @@ -29,6 +29,7 @@ public class K8SEndpointTrafficDispatcher implements SourceDispatcher sourceDecorator = SourceDecoratorManager.DECORATOR_MAP.get(decorator); +sourceDecorator.decorate(this); +} } diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/manual/endpoint/K8SEndpointTrafficDispatcher.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/K8SServiceDecorator.java similarity index 54% copy from oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/manual/endpoint/K8SEndpointTrafficDispatcher.java copy to oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/K8SServiceDecorator.java index d4a9a98ef5..fa605891a3 100644 --- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/manual/endpoint/K8SEndpointTrafficDispatcher.java +++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/source/K8SServiceDecorator.java @@
(skywalking-cli) branch 1.15.0 deleted (was c2bae30)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a change to branch 1.15.0 in repository https://gitbox.apache.org/repos/asf/skywalking-cli.git was c2bae30 Begin v1.15.0 The revisions that were on this branch are still contained in other references; therefore, this change does not discard any commits from the repository.
(skywalking-cli) branch master updated (a14bf0e -> c653be5)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a change to branch master in repository https://gitbox.apache.org/repos/asf/skywalking-cli.git from a14bf0e fix missing layers field in the `dependency global` command (#202) add c653be5 Begin v1.15.0 (#204) No new revisions were added by this update. Summary of changes: CHANGES.md | 7 +++ 1 file changed, 7 insertions(+)
(skywalking) branch master updated: Sync UI and fix apdex topn order (#12724)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/skywalking.git The following commit(s) were added to refs/heads/master by this push: new dc762efc17 Sync UI and fix apdex topn order (#12724) dc762efc17 is described below commit dc762efc1777d1b906ca48b351124dfb59672d6a Author: Wan Kai AuthorDate: Thu Oct 24 18:47:58 2024 +0800 Sync UI and fix apdex topn order (#12724) --- docs/en/changes/changes.md| 1 + .../resources/ui-initialized-templates/general/general-root.json | 2 +- .../main/resources/ui-initialized-templates/mesh/mesh-root.json | 2 +- skywalking-ui | 2 +- test/e2e-v2/cases/storage/expected/topN-OP-service.yml| 8 ++-- 5 files changed, 10 insertions(+), 5 deletions(-) diff --git a/docs/en/changes/changes.md b/docs/en/changes/changes.md index 37ca677a69..312b6571e1 100644 --- a/docs/en/changes/changes.md +++ b/docs/en/changes/changes.md @@ -20,6 +20,7 @@ * Support the endpoint list widget query with duration parameter. * Support ranges for Value Mappings. * Add service global topN widget on `General-Root` and `Mesh-Root` dashboard. +* Fix initialization dashboards. Documentation * Update release document to adopt newly added revision-based process. diff --git a/oap-server/server-starter/src/main/resources/ui-initialized-templates/general/general-root.json b/oap-server/server-starter/src/main/resources/ui-initialized-templates/general/general-root.json index dcd0a0c217..6af24bb99f 100644 --- a/oap-server/server-starter/src/main/resources/ui-initialized-templates/general/general-root.json +++ b/oap-server/server-starter/src/main/resources/ui-initialized-templates/general/general-root.json @@ -203,7 +203,7 @@ "i": "101", "type": "Widget", "expressions": [ -"top_n(service_apdex,10,des,attr0='GENERAL')/1" +"top_n(service_apdex,10,asc,attr0='GENERAL')/1" ], "graph": { "type": "TopList", diff --git a/oap-server/server-starter/src/main/resources/ui-initialized-templates/mesh/mesh-root.json b/oap-server/server-starter/src/main/resources/ui-initialized-templates/mesh/mesh-root.json index 6bce7dce12..c74c7cb29f 100644 --- a/oap-server/server-starter/src/main/resources/ui-initialized-templates/mesh/mesh-root.json +++ b/oap-server/server-starter/src/main/resources/ui-initialized-templates/mesh/mesh-root.json @@ -243,7 +243,7 @@ "i": "104", "type": "Widget", "expressions": [ -"top_n(service_apdex,10,des,attr0='MESH')/1" +"top_n(service_apdex,10,asc,attr0='MESH')/1" ], "graph": { "type": "TopList", diff --git a/skywalking-ui b/skywalking-ui index 4c60f69aef..224e761d70 16 --- a/skywalking-ui +++ b/skywalking-ui @@ -1 +1 @@ -Subproject commit 4c60f69aef71e1e91b5cb4dc8b1e9c60c3be0004 +Subproject commit 224e761d70a005a21aa2f4fc4effde57dcfc4a5d diff --git a/test/e2e-v2/cases/storage/expected/topN-OP-service.yml b/test/e2e-v2/cases/storage/expected/topN-OP-service.yml index 4ac5c7cbe5..ddf3d2c880 100644 --- a/test/e2e-v2/cases/storage/expected/topN-OP-service.yml +++ b/test/e2e-v2/cases/storage/expected/topN-OP-service.yml @@ -15,13 +15,17 @@ type: SORTED_LIST results: + {{- contains .results }} - metric: labels: [] values: - - id: e2e-service-consumer + {{- contains .values }} + - id: {{ notEmpty .id }} value: "100" traceid: null - - id: e2e-service-provider + - id: {{ notEmpty .id }} value: "100" traceid: null + {{- end }} + {{- end }} error: null
(skywalking) branch revert-12719-metricsnames updated (54af75c441 -> c45edae79d)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a change to branch revert-12719-metricsnames in repository https://gitbox.apache.org/repos/asf/skywalking.git from 54af75c441 Revert "Add time unit in so11y latency metrics (#12719)" add 94d8fef4bc Add service global topN widget on `General-Root` and `Mesh-Root` dashboard. (#12721) add c45edae79d Merge branch 'master' into revert-12719-metricsnames No new revisions were added by this update. Summary of changes: docs/en/changes/changes.md | 1 + .../general/general-root.json | 79 +- .../ui-initialized-templates/mesh/mesh-root.json | 78 - 3 files changed, 152 insertions(+), 6 deletions(-)
(skywalking) branch master updated: Add service global topN widget on `General-Root` and `Mesh-Root` dashboard. (#12721)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/skywalking.git The following commit(s) were added to refs/heads/master by this push: new 94d8fef4bc Add service global topN widget on `General-Root` and `Mesh-Root` dashboard. (#12721) 94d8fef4bc is described below commit 94d8fef4bc24487e2bf6ea4dcd9a307e7ecb80b8 Author: Wan Kai AuthorDate: Thu Oct 24 11:50:05 2024 +0800 Add service global topN widget on `General-Root` and `Mesh-Root` dashboard. (#12721) --- docs/en/changes/changes.md | 1 + .../general/general-root.json | 79 +- .../ui-initialized-templates/mesh/mesh-root.json | 78 - 3 files changed, 152 insertions(+), 6 deletions(-) diff --git a/docs/en/changes/changes.md b/docs/en/changes/changes.md index f8ad812ffb..cdf8daa64a 100644 --- a/docs/en/changes/changes.md +++ b/docs/en/changes/changes.md @@ -44,6 +44,7 @@ * Add content decorations to Table and Card widgets. * Support the endpoint list widget query with duration parameter. * Support ranges for Value Mappings. +* Add service global topN widget on `General-Root` and `Mesh-Root` dashboard. Documentation * Update release document to adopt newly added revision-based process. diff --git a/oap-server/server-starter/src/main/resources/ui-initialized-templates/general/general-root.json b/oap-server/server-starter/src/main/resources/ui-initialized-templates/general/general-root.json index f709e9aeb9..dcd0a0c217 100644 --- a/oap-server/server-starter/src/main/resources/ui-initialized-templates/general/general-root.json +++ b/oap-server/server-starter/src/main/resources/ui-initialized-templates/general/general-root.json @@ -5,7 +5,7 @@ "children": [ { "x": 0, - "y": 2, + "y": 13, "w": 24, "h": 52, "i": "1", @@ -194,13 +194,86 @@ "textAlign": "left", "url": "https://skywalking.apache.org/docs/main/next/en/setup/service-agent/server-agents/"; } +}, +{ + "x": 0, + "y": 2, + "w": 6, + "h": 11, + "i": "101", + "type": "Widget", + "expressions": [ +"top_n(service_apdex,10,des,attr0='GENERAL')/1" + ], + "graph": { +"type": "TopList", +"color": "purple" + }, + "widget": { +"title": "Service Apdex" + } +}, +{ + "x": 12, + "y": 2, + "w": 6, + "h": 11, + "i": "102", + "type": "Widget", + "expressions": [ +"top_n(service_resp_time,10,des,attr0='GENERAL')" + ], + "graph": { +"type": "TopList", +"color": "purple" + }, + "widget": { +"title": "Service Avg Response Time (ms)" + } +}, +{ + "x": 6, + "y": 2, + "w": 6, + "h": 11, + "i": "103", + "type": "Widget", + "expressions": [ +"top_n(service_sla,10,asc,attr0='GENERAL')/100" + ], + "widget": { +"title": "Success Rate" + }, + "graph": { +"type": "TopList", +"color": "purple" + } +}, +{ + "x": 18, + "y": 2, + "w": 6, + "h": 11, + "i": "104", + "type": "Widget", + "expressions": [ +"top_n(service_cpm,10,des,attr0='GENERAL')" + ], + "widget": { +"title": "Service Load (calls / min)", +"tips": "For HTTP 1/2, gRPC, RPC services, this means Calls Per Minute (calls / min)" + }, + "graph": { +"type": "TopList", +"color": "purple" + } } ], - "id": "General-Root"
(skywalking) branch master updated: Add time unit in so11y latency metrics (#12719)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/skywalking.git The following commit(s) were added to refs/heads/master by this push: new 38b775ed2a Add time unit in so11y latency metrics (#12719) 38b775ed2a is described below commit 38b775ed2a33500965036a96f1bcda9db0ee6f8b Author: kezhenxu94 AuthorDate: Wed Oct 23 17:25:15 2024 +0800 Add time unit in so11y latency metrics (#12719) --- docs/en/changes/changes.md | 25 + docs/en/setup/backend/grafana-cluster.json | 64 +++--- docs/en/setup/backend/grafana-instance.json| 48 .../meter/function/avg/AvgHistogramFunction.java | 4 +- .../avg/AvgHistogramPercentileFunction.java| 4 +- .../server/core/remote/RemoteServiceHandler.java | 2 +- .../oap/server/core/storage/PersistenceTimer.java | 6 +- .../agent/kafka/provider/handler/LogHandler.java | 2 +- .../provider/handler/MeterServiceHandler.java | 4 +- .../kafka/provider/handler/ProfileTaskHandler.java | 2 +- .../provider/handler/TraceSegmentHandler.java | 2 +- .../oap/query/graphql/GraphQLQueryHandler.java | 2 +- .../envoy/AccessLogServiceGRPCHandler.java | 2 +- .../receiver/envoy/MetricServiceGRPCHandler.java | 2 +- .../otel/otlp/OpenTelemetryLogHandler.java | 2 +- .../otlp/OpenTelemetryMetricRequestProcessor.java | 2 +- .../otel/otlp/OpenTelemetryTraceHandler.java | 2 +- .../handler/grpc/BrowserPerfServiceHandler.java| 4 +- .../rest/BrowserPerfServiceHTTPHandler.java| 4 +- .../provider/handler/AccessLogServiceHandler.java | 2 +- .../event/grpc/EventGrpcServiceHandler.java| 2 +- .../event/rest/EventRestServiceHandler.java| 2 +- .../handler/grpc/LogReportServiceGrpcHandler.java | 2 +- .../handler/rest/LogReportServiceHTTPHandler.java | 2 +- .../receiver/mesh/TelemetryDataDispatcher.java | 2 +- .../provider/handler/MeterServiceHandler.java | 2 +- .../provider/handler/TelegrafServiceHandler.java | 2 +- .../v8/grpc/TraceSegmentReportServiceHandler.java | 2 +- .../handler/v8/rest/TraceSegmentReportHandler.java | 2 +- .../zipkin/handler/ZipkinSpanHTTPHandler.java | 2 +- .../server/receiver/zipkin/kafka/KafkaHandler.java | 2 +- .../src/main/resources/otel-rules/oap.yaml | 44 +++ .../so11y_oap/so11y-instance.json | 8 +-- .../cases/exporter/kafka/exporter-cases.yaml | 4 +- tools/migrate-so11y-metrics-names.sh | 55 +++ 35 files changed, 199 insertions(+), 119 deletions(-) diff --git a/docs/en/changes/changes.md b/docs/en/changes/changes.md index 7107a91f82..f8ad812ffb 100644 --- a/docs/en/changes/changes.md +++ b/docs/en/changes/changes.md @@ -12,6 +12,31 @@ * Add Component ID(5023) for the GoZero framework. * Support Kong monitoring. * Support adding additional attr[0-4] for service level metrics. +* All self observability histogram metrics names are suffixed with `_seconds` to indicate the time unit, as per [Prometheus metrics names guide](https://prometheus.io/docs/practices/naming/), + if you have any customized configuration files that utilize these metrics, you can migrate the metrics names with our helper script `tools/migrate-so11y-metrics-names.sh`, + this script migrates the metrics names in files `*.yaml`, `*.java`, and `*.json` files, review and adjust the script if you have other file types. + NOTE: the script doesn't migrate existing metrics data. + * `browser_error_log_in_latency` -> `browser_error_log_in_latency_seconds` + * `browser_perf_data_in_latency` -> `browser_perf_data_in_latency_seconds` + * `envoy_als_in_latency` -> `envoy_als_in_latency_seconds` + * `envoy_metric_in_latency` -> `envoy_metric_in_latency_seconds` + * `event_in_latency` -> `event_in_latency_seconds` + * `graphql_query_latency` -> `graphql_query_latency_seconds` + * `k8s_als_in_latency` -> `k8s_als_in_latency_seconds` + * `log_in_latency` -> `log_in_latency_seconds` + * `mesh_analysis_latency` -> `mesh_analysis_latency_seconds` + * `meter_batch_in_latency` -> `meter_batch_in_latency_seconds` + * `meter_in_latency` -> `meter_in_latency_seconds` + * `otel_logs_latency` -> `otel_logs_latency_seconds` + * `otel_metrics_latency` -> `otel_metrics_latency_seconds` + * `otel_spans_latency` -> `otel_spans_latency_seconds` + * `persistence_timer_bulk_all_latency` -> `persistence_timer_bulk_all_latency_seconds` + * `persistence_timer_bulk_execute_latency` -> `persistence_timer_bulk_execute_latency_seconds` + * `persistence_timer_bulk_prepare_latency` -> `persistence_timer_bulk_prepare_latency_seconds` + * `profile_task_in_latency` -> `profile_task_in_latency_seconds` + * `remote_in_latenc
(skywalking-goapi) branch main updated: Support Async Profiler Feature (#82)
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-goapi.git The following commit(s) were added to refs/heads/main by this push: new 2514649 Support Async Profiler Feature (#82) 2514649 is described below commit 2514649a80071395e40e9815a0484a4ab5eda908 Author: zhengziyi0117 <91662408+zhengziyi0...@users.noreply.github.com> AuthorDate: Wed Oct 23 16:00:50 2024 +0800 Support Async Profiler Feature (#82) --- .../language/asyncprofiler/v10/AsyncProfiler.pb.go | 499 + .../asyncprofiler/v10/AsyncProfiler_grpc.pb.go | 181 dependencies.sh| 4 +- query/schema.go| 319 - 4 files changed, 985 insertions(+), 18 deletions(-) diff --git a/collect/language/asyncprofiler/v10/AsyncProfiler.pb.go b/collect/language/asyncprofiler/v10/AsyncProfiler.pb.go new file mode 100644 index 000..67ed82d --- /dev/null +++ b/collect/language/asyncprofiler/v10/AsyncProfiler.pb.go @@ -0,0 +1,499 @@ +// +// 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. +// + +// Code generated by protoc-gen-go. DO NOT EDIT. +// versions: +// protoc-gen-go v1.28.1 +// protocv3.14.0 +// source: asyncprofiler/AsyncProfiler.proto + +package v10 + +import ( + protoreflect "google.golang.org/protobuf/reflect/protoreflect" + protoimpl "google.golang.org/protobuf/runtime/protoimpl" + reflect "reflect" + v3 "skywalking.apache.org/repo/goapi/collect/common/v3" + sync "sync" +) + +const ( + // Verify that this generated code is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) + // Verify that runtime/protoimpl is sufficiently up-to-date. + _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) +) + +type AsyncProfilerCollectType int32 + +const ( + // PROFILING_SUCCESS means the Java Agent has finished the execution + AsyncProfilerCollectType_PROFILING_SUCCESS AsyncProfilerCollectType = 0 + // EXECUTION_TASK_ERROR means potential execution error caused by the Java Agent, such as an error in the sent task parameters. + AsyncProfilerCollectType_EXECUTION_TASK_ERROR AsyncProfilerCollectType = 1 +) + +// Enum value maps for AsyncProfilerCollectType. +var ( + AsyncProfilerCollectType_name = map[int32]string{ + 0: "PROFILING_SUCCESS", + 1: "EXECUTION_TASK_ERROR", + } + AsyncProfilerCollectType_value = map[string]int32{ + "PROFILING_SUCCESS":0, + "EXECUTION_TASK_ERROR": 1, + } +) + +func (x AsyncProfilerCollectType) Enum() *AsyncProfilerCollectType { + p := new(AsyncProfilerCollectType) + *p = x + return p +} + +func (x AsyncProfilerCollectType) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (AsyncProfilerCollectType) Descriptor() protoreflect.EnumDescriptor { + return file_asyncprofiler_AsyncProfiler_proto_enumTypes[0].Descriptor() +} + +func (AsyncProfilerCollectType) Type() protoreflect.EnumType { + return &file_asyncprofiler_AsyncProfiler_proto_enumTypes[0] +} + +func (x AsyncProfilerCollectType) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use AsyncProfilerCollectType.Descriptor instead. +func (AsyncProfilerCollectType) EnumDescriptor() ([]byte, []int) { + return file_asyncprofiler_AsyncProfiler_proto_rawDescGZIP(), []int{0} +} + +type AsyncProfilerData struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + // metaData of the AsyncProfiler task and its result data, only sent in the first request. + MetaData *AsyncProfilerMetaData `protobuf:"bytes,1,opt,name=metaData,proto3" json:"metaData,omitempty"` + // Types that are assignable to Result: + // +
(skywalking-website) branch master updated: doc: add sw-go tookit logging and metrics blog (#748)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/skywalking-website.git The following commit(s) were added to refs/heads/master by this push: new a617fcd9ca2 doc: add sw-go tookit logging and metrics blog (#748) a617fcd9ca2 is described below commit a617fcd9ca27a04d6c1375f0be6e612c2a23b542 Author: Shyunn AuthorDate: Tue Oct 22 11:21:49 2024 +0800 doc: add sw-go tookit logging and metrics blog (#748) --- .../index.md | 159 .../log_en.png | Bin 0 -> 223553 bytes .../index.md | 164 + .../log.png| Bin 0 -> 242321 bytes 4 files changed, 323 insertions(+) diff --git a/content/blog/2024-10-20-skywalking-go-toolkit-metrics-log/index.md b/content/blog/2024-10-20-skywalking-go-toolkit-metrics-log/index.md new file mode 100644 index 000..325f864771b --- /dev/null +++ b/content/blog/2024-10-20-skywalking-go-toolkit-metrics-log/index.md @@ -0,0 +1,159 @@ +--- +title: "Use of SkyWalking Go Toolkit Log and Metrics" +date: 2024-10-20 +author: "ShyunnY" +description: "This document presents an introduction to and usage of the toolkit Log and Metrics in SkyWalking Go." + +--- + +## Intro + +Apache SkyWalking Go is an observability tool specifically designed for Golang applications, aimed at monolithic services, microservices, cloud-native architectures, and containerized applications. It is the Go language implementation of the Apache SkyWalking probe project, providing comprehensive capabilities for service tracing, performance metrics analysis, and application topology analysis. + +SkyWalking Go leverages Go's concurrency features to achieve efficient data collection and analysis. By inserting a minimal amount of probe code into the application during compilation using AST (Abstract Syntax Tree), it can capture service request and response data, as well as system runtime status information. By reporting this collected data, SkyWalking Go can generate detailed service call chain diagrams, helping developers understand the dependencies between services and the perfor [...] + +SkyWalking Go currently provides the following three capabilities for users to manually report relevant information: +* Trace +* Metrics +* Log + +This document aims to guide users on how to manually report log entries and metrics using the toolkit. For information on how to report trace linkage information with the toolkit, please refer to the [SkyWalking Go Toolkit Trace Detailed Explanation](https://skywalking.apache.org/zh/2023-10-18-skywalking-toolkit-trace/). + +Before diving deeper, you may want to check the [SkyWalking Go Agent Quick Start Guide](https://skywalking.apache.org/zh/2023-06-01-quick-start-with-skywalking-go-agent/) to learn how to use the SkyWalking Go Agent. + +The following sections will introduce how to use these interfaces in specific scenarios. + +## Import Trace Toolkit + +First, execute the following command in the root directory of the project: + +```shell +go get github.com/apache/skywalking-go/toolkit +``` + +## Manually report logs + +In traceability, logs play a crucial role. They record detailed information about each request in the system, including timestamps, processing nodes, error messages, etc., which helps developers and operations teams quickly identify performance bottlenecks and the root causes of failures. By comparing logs from different requests, teams can analyze the flow of requests, optimize system architecture, and improve service response speed and stability. + +In the SkyWalking Go toolkit, manually reported logs will be **attached to the current context Span**, allowing us to associate specific log information with particular spans. + +First, we need to import the toolkit log package: + +```go +"github.com/apache/skywalking-go/toolkit/logging" +``` + +We can build a simple web service that determines the validity of a username based on the request parameters. When the userName parameter is invalid, we log an error using the logging.Error API. This log will be attached to the currently active Span in the context. + +When recording logs, we can also append keyValues to the log information using variadic parameters, making the log entries more descriptive. + +For detailed usage documentation, please refer to [SkyWalking Go toolkit-logging](https://skywalking.apache.org/docs/skywalking-go/next/en/advanced-features/manual-apis/toolkit-log/). + + +```go +package main + +import ( + "log" + "net/http" + + _ "github.com/apache/skywalking-go" + "github.com/apache/skywalking-go/toolkit/logging" +) + +func main() { + http.
(skywalking-query-protocol) branch master updated: Support async profiler feature (#139)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/skywalking-query-protocol.git The following commit(s) were added to refs/heads/master by this push: new 0f44eff Support async profiler feature (#139) 0f44eff is described below commit 0f44eff1ae1cbe4f26835e41502347f7b14541e9 Author: zhengziyi0117 <91662408+zhengziyi0...@users.noreply.github.com> AuthorDate: Tue Oct 22 09:59:34 2024 +0800 Support async profiler feature (#139) --- async-profiler.graphqls | 187 1 file changed, 187 insertions(+) diff --git a/async-profiler.graphqls b/async-profiler.graphqls new file mode 100644 index 000..ff14fff --- /dev/null +++ b/async-profiler.graphqls @@ -0,0 +1,187 @@ +# 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. + +# Request to create a async-profiler task +input AsyncProfilerTaskCreationRequest { +# Define the service to execute the task +serviceId: ID! +# Define which instances need to execute tasks +serviceInstanceIds: [String!]! +# Define the duration of this task (second) +duration: Int! +# Define which event types this task needs to collect. +events: [AsyncProfilerEventType!]! +# other async-profiler execution options, e.g. alloc=2k,lock=2s +execArgs: String +} + +# AsyncProfilerTaskCreationResult is the result of the task creation request +type AsyncProfilerTaskCreationResult { +# Code defines the status of the response, i.e. success or failure. +code: AsyncProfilerTaskCreationType! +# ErrorReason gives detailed reason for the exception, if the code returned represents a kind of failure. +errorReason: String +# Task id, if code is SUCCESS. +id: String +} + +# AsyncProfiler task creation type +enum AsyncProfilerTaskCreationType { +# Task created successfully +SUCCESS +# Task creation failed due to argument errors +ARGUMENT_ERROR +# The current service already has a async-profiler task executing +ALREADY_PROFILING_ERROR +} + +# Request to query async-profiler task list +input AsyncProfilerTaskListRequest { +# ServiceId associated with the task +serviceId: ID! +# Start time +startTime: Long +# End time +endTime: Long +# Limit defines the number of the tasks to be returned. +limit: Int +} + +# Request to query flame graph analyzation +input AsyncProfilerAnalyzationRequest { +# Define which task to analyze +taskId: ID! +# InstanceIds defines the instances to be included for analysis +instanceIds: [String!]! +# EventType is the specific JFR Event type to be selected for analysis even if multiple events are included in the JFR file. +eventType: JFREventType! +} + +# Define async-profiler task list result +type AsyncProfilerTaskListResult { +# If it is null or empty, it means the task is created successfully, otherwise it gets the creation error reason +errorReason: String + +# Tasks is a list of async-profiler tasks belonging to the specific service +tasks: [AsyncProfilerTask!] +} + +# Define async-profiler task data +# The fields definition is the same as AsyncProfilerTaskCreationRequest +type AsyncProfilerTask { +id: String! +serviceId: String! +serviceInstanceIds: [String!]! +createTime: Long! +events: [AsyncProfilerEventType!]! +duration: Int! +execArgs: String +} + +# Define the flame graph results produced by async-profiler +type AsyncProfilerStackTree { +type: JFREventType! +elements: [AsyncProfilerStackElement!] +} + +# Define the thread stack analyze tree element +type AsyncProfilerStackElement { +# Id is the identity of the stack element +id: ID! +# ParentId is the identity of the parent stack element. Stack elements are organized as a tree. +parentId: ID! +# Method signatures in tree nodes +codeSignature: String! +# The total number of samples of the current tree node, including child nodes +total: Long! +# The sampling number of the current tree node, excluding samples of the children +self: Long! +} + +# Define the analysis
(skywalking-website) branch master updated (c2f81995b93 -> 856ca8f2e65)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a change to branch master in repository https://gitbox.apache.org/repos/asf/skywalking-website.git from c2f81995b93 Update change log (#750) add 856ca8f2e65 release CLI 0.14.0 and Rover 0.7.0 (#751) No new revisions were added by this update. Summary of changes: .../release-apache-skwaylking-rover-0-7-0/index.md | 32 + .../release-apache-skywalking-cli-0-14-0/index.md | 16 + data/docs.yml | 12 +++ data/releases.yml | 40 +++--- 4 files changed, 74 insertions(+), 26 deletions(-) create mode 100644 content/events/release-apache-skwaylking-rover-0-7-0/index.md create mode 100644 content/events/release-apache-skywalking-cli-0-14-0/index.md
(skywalking-website) branch helm deleted (was c3f559ebb26)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a change to branch helm in repository https://gitbox.apache.org/repos/asf/skywalking-website.git was c3f559ebb26 Publish Helm 4.7.0 The revisions that were on this branch are still contained in other references; therefore, this change does not discard any commits from the repository.
(skywalking) branch master updated: Sync UI (#12711)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/skywalking.git The following commit(s) were added to refs/heads/master by this push: new b752462193 Sync UI (#12711) b752462193 is described below commit b752462193fa0dd5f7eb10f00754570b88eb02e4 Author: Zixin Zhou AuthorDate: Fri Oct 18 15:51:12 2024 +0800 Sync UI (#12711) --- docs/en/changes/changes.md | 1 + .../src/main/resources/ui-initialized-templates/kong/kong-instance.json | 2 +- .../src/main/resources/ui-initialized-templates/kong/kong-service.json | 2 +- skywalking-ui | 2 +- 4 files changed, 4 insertions(+), 3 deletions(-) diff --git a/docs/en/changes/changes.md b/docs/en/changes/changes.md index 820becaf64..78e750d08f 100644 --- a/docs/en/changes/changes.md +++ b/docs/en/changes/changes.md @@ -17,6 +17,7 @@ * Add support for case-insensitive search in the dashboard list. * Add content decorations to Table and Card widgets. * Support the endpoint list widget query with duration parameter. +* Support ranges for Value Mappings. Documentation * Update release document to adopt newly added revision-based process. diff --git a/oap-server/server-starter/src/main/resources/ui-initialized-templates/kong/kong-instance.json b/oap-server/server-starter/src/main/resources/ui-initialized-templates/kong/kong-instance.json index 5099146a22..007d0fb030 100644 --- a/oap-server/server-starter/src/main/resources/ui-initialized-templates/kong/kong-instance.json +++ b/oap-server/server-starter/src/main/resources/ui-initialized-templates/kong/kong-instance.json @@ -18,7 +18,7 @@ "fontSize": 24, "textAlign": "center", "showUnit": true, -"decorations": { +"valueMappings": { "0": "unreachable", "1": "reachable" } diff --git a/oap-server/server-starter/src/main/resources/ui-initialized-templates/kong/kong-service.json b/oap-server/server-starter/src/main/resources/ui-initialized-templates/kong/kong-service.json index 163eb1a4be..8c231fbb86 100644 --- a/oap-server/server-starter/src/main/resources/ui-initialized-templates/kong/kong-service.json +++ b/oap-server/server-starter/src/main/resources/ui-initialized-templates/kong/kong-service.json @@ -54,7 +54,7 @@ "showTableValues": true, "tableHeaderCol1": "Instances", "tableHeaderCol2": "Reachable", -"decorations": { +"valueMappings": { "0": "unreachable", "1": "reachable" } diff --git a/skywalking-ui b/skywalking-ui index bddbe40974..4c60f69aef 16 --- a/skywalking-ui +++ b/skywalking-ui @@ -1 +1 @@ -Subproject commit bddbe409749953d89c31707eb42f683d4b248192 +Subproject commit 4c60f69aef71e1e91b5cb4dc8b1e9c60c3be0004
(skywalking-website) branch master updated: Translation: Introduce R3 to recognition RESTFul URI (#747)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/skywalking-website.git The following commit(s) were added to refs/heads/master by this push: new 12c8e2544e9 Translation: Introduce R3 to recognition RESTFul URI (#747) 12c8e2544e9 is described below commit 12c8e2544e9c9ec8115de512e85d64a219e6587b Author: Jimmy Song AuthorDate: Fri Oct 18 15:22:51 2024 +0800 Translation: Introduce R3 to recognition RESTFul URI (#747) --- .../data_interaction_flow.png | Bin 0 -> 4176 bytes .../formated_images.png| Bin 0 -> 51508 bytes .../index.md | 130 + 3 files changed, 130 insertions(+) diff --git a/content/zh/2024-010-15-introduce-r3-to-recognition-restful-url/data_interaction_flow.png b/content/zh/2024-010-15-introduce-r3-to-recognition-restful-url/data_interaction_flow.png new file mode 100644 index 000..d3b86d1dd2e Binary files /dev/null and b/content/zh/2024-010-15-introduce-r3-to-recognition-restful-url/data_interaction_flow.png differ diff --git a/content/zh/2024-010-15-introduce-r3-to-recognition-restful-url/formated_images.png b/content/zh/2024-010-15-introduce-r3-to-recognition-restful-url/formated_images.png new file mode 100644 index 000..89cd0e7d6b7 Binary files /dev/null and b/content/zh/2024-010-15-introduce-r3-to-recognition-restful-url/formated_images.png differ diff --git a/content/zh/2024-010-15-introduce-r3-to-recognition-restful-url/index.md b/content/zh/2024-010-15-introduce-r3-to-recognition-restful-url/index.md new file mode 100644 index 000..bec1df46d78 --- /dev/null +++ b/content/zh/2024-010-15-introduce-r3-to-recognition-restful-url/index.md @@ -0,0 +1,130 @@ +--- +title: "引入 R3 识别 RESTFul URI" +date: 2024-10-17 +author: 刘晗 +description: "本文将介绍如何使用 R3 识别 RESTFul URI 并将其集成到 SkyWalking 中。" +tags: +- RESTFul +- R3 +--- + +## 背景 + +在现代应用中,服务通常通过 RESTFul HTTP URI 提供。使用 RESTFul HTTP URI 作为唯一的资源标识符,不仅具备良好的可读性,还能让客户端和服务器更容易理解请求。然而,在可观测性领域,这种方式也带来了一些挑战: + +1. **大量的端点(HTTP URI)**:浏览所有对外提供的端点变得更加困难,因此很难识别出存在问题的端点。 +2. **指标收集困难**:尤其难以对类似的端点进行归类并生成可观测性指标。 + +现有解决方案通常采用以下应用级别的方式来解决此问题: + +1. **代理检测**:在某些框架中,通常会声明规则来处理 RESTFul 请求。例如,在 Java 的 Spring Web 中可以使用 `@GET` 等注解,然后可以通过 Java Agent 将其与当前请求关联起来。 +2. **OpenAPI**:应用可以关联预定义文件,使可观测性系统知晓可能使用的 URI。 + +这两种解决方案都与应用设置紧密耦合,这对于未知应用或者无法监控代理的应用来说是一个局限。因此,我们需要考虑是否有一种更通用的解决方案来识别 URI,并合并来自类似 URI 生成的指标,以便更好地展示数据。 + +## R3 + +R3(RESTFul 模式识别)是一个高性能的 RESTFul URI 识别工具,其灵感来自 [Drain3](https://github.com/logpai/Drain3)。它可以作为独立应用部署在可观测性服务器上,并与 SkyWalking OAP 进行通信。 + +R3 可以通过 gRPC 协议接收 URI 列表,并将类似的 URI 聚合为特定格式。聚合后的(格式化)URI 列表也可以通过 gRPC 协议进行查询。 + +### 数据交互流程 + +![OAP 与 R3 之间的数据交互流程](data_interaction_flow.png) + +1. **OAP 接收并缓存未格式化的 URI 列表**:OAP 通过不同协议接收可观测性数据,并识别出所有未格式化的 URI。然后将这些 URI 按照所属服务暂时存储在列表中。 +2. **OAP 将待格式化的 URI 发送给 R3**:OAP 定期将需要格式化的 URI 批量发送到 R3 服务。 +3. **R3 接收并解析 URI 列表**:R3 异步分析接收到的 URI 相似性,并将结果存储(持久化)在本地磁盘中,以便在重启后进行恢复。 +4. **OAP 查询 R3 中的格式化 URI 列表**:OAP 定期查询 R3 中检测到的格式化 URI,并将结果保存在内存中。 +5. **OAP 格式化 URI**:当 OAP 接收到新的可观测性数据时,会将 URI 与从 R3 获取的格式化 URI 进行匹配。如果匹配成功,后续的指标计算将使用格式化后的 URI。 + +### 场景 + +在 R3 中,主要解决以下场景。对于识别为重复的 URI,R3 将用 `{var}` 替换变量部分以标准化 URI。 + + ID 匹配 + +在 RESTFul API 中,常见做法是将各种 ID 包含在 URI 路径中,这导致了大量唯一的 URI 端点。例如,以下路径将被 R3 聚合为标准化格式 `/api/users/{var}`。 + +* /api/users/cbf11b02ea464447b507e8852c32190a +* /api/users/5e363a4a18b7464b8cbff1a7ee4c91ca +* /api/users/44cf77fc351f4c6c9c4f1448f2f12800 +* /api/users/38d3be5f9bd44f7f98906ea049694511 +* /api/users/5ad14302e7924f4aa1d60e58d65b3dd2 + + 词语检测 + +在 RESTFul URI 中,实体的操作通常通过 HTTP 方法指定,但有时还需要在路径中添加特定名词。为此,R3 实现了词语解析:当 R3 检测到路径中的特定词语时,将不会格式化该部分。例如,以下 URI 将不会被视为相似,因此不会被合并: + +* /api/sale +* /api/product_sale +* /api/ProductSale + + 样本不足 + +为防止由于样本不足而导致错误判断,R3 允许在[配置文件](https://github.com/SkyAPM/R3/blob/main/servers/simple/uri_drain.ini)中配置[最小 URI 合并计数](https://github.com/SkyAPM/R3/blob/main/servers/simple/uri_drain.ini#L38)参数。 + +例如,当阈值为 `3` 时,以下 URI 将保持原样,不会被参数化。 + +* /api/fetch1 +* /api/fetch2 + +但是以下 URI 将被参数化为 `/api/{var}`,因为样本数大于阈值。 + +* /api/fetch1 +* /api/fetch2 +* /api/fetch3 + + 版本 API + +在实际场景中,常会遇到包含多个版本的 URI。R3 通过确保指定路径中包含 `v\\d+` 参数(表示版本信息)来解决这个问题,该部分将不会被参数化。例如,以下 URI 将分别解析为 `/test/v1/{var}` 和 `/test/v999/{var}`。 + +* /test/v1/cbf11b02ea464447b507e8852c32190a +* /test/v1/5e363a4a18b7464b8cbff1a7ee4c91ca +* /test/v1/38d3be5f9bd44f7f98906ea049694511 +* /test/v999/1 +* /test/v999/2 +* /test/v999/3 + +## 演示 + +接下来我们快速演示如何使用 R3 格式化观察到的端点,帮助你更具体地理解它的功能。 + +### 部署 SkyWalking Showcase + +SkyWalking Showcase 包含一整套示例服务,可以通过 SkyWalking 进行监控。更多信息请查看[官方文档](https://skywalking.apache.org/docs/skywalking-showcase/next/readme/)。 + +在此演示中,我们仅部署服务、最新发布的 SkyWalking OAP、R3 服务和 UI。 + +```shell +export FEATURE_FLAGS=java-agent-injector,single-node,elasticsearch,r3 +make deploy.kubernetes +``` + +部署完
(skywalking-booster-ui) branch main updated: Fix Value Mappings (#423)
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-booster-ui.git The following commit(s) were added to refs/heads/main by this push: new 4c60f69a Fix Value Mappings (#423) 4c60f69a is described below commit 4c60f69aef71e1e91b5cb4dc8b1e9c60c3be0004 Author: Fine0830 AuthorDate: Fri Oct 18 14:48:55 2024 +0800 Fix Value Mappings (#423) --- .../widget/graph-styles/components/ValueMappings.vue | 7 +-- src/views/dashboard/graphs/Card.vue | 10 -- src/views/dashboard/graphs/Table.vue | 11 +-- 3 files changed, 22 insertions(+), 6 deletions(-) diff --git a/src/views/dashboard/configuration/widget/graph-styles/components/ValueMappings.vue b/src/views/dashboard/configuration/widget/graph-styles/components/ValueMappings.vue index cc6d1bac..a08cbddc 100644 --- a/src/views/dashboard/configuration/widget/graph-styles/components/ValueMappings.vue +++ b/src/views/dashboard/configuration/widget/graph-styles/components/ValueMappings.vue @@ -15,7 +15,7 @@ limitations under the License. --> {{ t("valueMappings") }} -({{ t("mappingTip") }}) +{{ t("mappingTip") }} @@ -56,6 +56,9 @@ limitations under the License. --> } delete valueMappings.value[list[index]]; keys.value = Object.keys(valueMappings.value); +if (!keys.value.length) { + keys.value = [""]; +} updateConfig(); } @@ -87,7 +90,7 @@ limitations under the License. -->
(skywalking-website) branch master updated: change all URL to URI in R3 blog (#746)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/skywalking-website.git The following commit(s) were added to refs/heads/master by this push: new cb1a8c56042 change all URL to URI in R3 blog (#746) cb1a8c56042 is described below commit cb1a8c560429e59dc8779c35913945ee1af18a92 Author: mrproliu <741550...@qq.com> AuthorDate: Fri Oct 18 11:07:42 2024 +0800 change all URL to URI in R3 blog (#746) --- .../index.md | 38 +++--- 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/content/blog/2024-010-15-introduce-r3-to-recognition-restful-url/index.md b/content/blog/2024-010-15-introduce-r3-to-recognition-restful-url/index.md index 9b5ff74cc86..b934b9a1a1e 100644 --- a/content/blog/2024-010-15-introduce-r3-to-recognition-restful-url/index.md +++ b/content/blog/2024-010-15-introduce-r3-to-recognition-restful-url/index.md @@ -2,7 +2,7 @@ title: "Introduce R3 to recognition RESTFul URI" date: 2024-10-17 author: Han Liu -description: "This article will introduce how to use R3 to identify RESTFul URLs and integrate them into SkyWalking." +description: "This article will introduce how to use R3 to identify RESTFul URIs and integrate them into SkyWalking." tags: - RESTFul - R3 @@ -10,8 +10,8 @@ tags: ## Background -In modern applications, services are typically provided through RESTFul HTTP URLs. -Using RESTFul HTTP URLs (as unique resource identifiers) offers high readability, making it easier for both clients and servers to understand. +In modern applications, services are typically provided through RESTFul HTTP URIs. +Using RESTFul HTTP URIs (as unique resource identifiers) offers high readability, making it easier for both clients and servers to understand. However, in the observability field, this approach poses several challenges: 1. **A large number of endpoints (HTTP URI)**: Browsing through all externally provided endpoints becomes more difficult, making it hard to identify problematic endpoints. @@ -21,33 +21,33 @@ In existing solutions, this issue can be resolved following these application-le 1. **Agent Detection**: In certain frameworks, rules are often declared to handle RESTFul requests. For example, in Java's Spring Web, annotations like `@GET` can be used, which can then be linked to current requests using a Java Agent. -2. **OpenAPI**: Predefined files can be associated with the application, allowing the observability system to be aware of the URLs that may be used. +2. **OpenAPI**: Predefined files can be associated with the application, allowing the observability system to be aware of the URIs that may be used. Both resolutions are tightly coupled with application settings, which can be limiting for unknown applications or applications -where the agent cannot be monitored. Therefore, we need to consider whether there is a more general solution to identify URLs and -merge metrics generated from similar URLs for better representation. +where the agent cannot be monitored. Therefore, we need to consider whether there is a more general solution to identify URIs and +merge metrics generated from similar URIs for better representation. ## R3 R3(RESTFul Pattern Recognition) is a high-performance RESTFul URI recognition tool inspired by [Drain3](https://github.com/logpai/Drain3). It can be deployed as a standalone application on the observability server and communicate with the SkyWalking OAP. -R3 can accept a URI list via the gRPC protocol and aggregate similar URLs into a specific format. +R3 can accept a URI list via the gRPC protocol and aggregate similar URIs into a specific format. The aggregated (formatted) URI list can also be queried using the gRPC protocol. ### Data Interaction Flow ![Data Interaction Flow between OAP, R3](data_interaction_flow.png) -1. **OAP receives and caches unformatted URI list**: OAP receives observability data through different protocols and identifies all unformatted URLs. These URLs are stored in a temporary list categorized by the service they belong to. -2. **OAP sends URLs to be formatted to R3**: OAP periodically batches the URLs that need formatting and sends them to the R3 service. -3. **R3 receives and parses the URI list**: R3 asynchronously analyzes the similarity of the received URLs and stores (persists) the results on the local disk to allow features like recovery after a restart. -4. **OAP queries formatted URI list from R3**: OAP periodically queries R3 for the detected formatted URLs and saves the results in memory. -5. **OAP formats URLs**: When OAP receives new observability data, it matches the URLs against the formatted URLs retrieved from R3. If a match is found, the formatted URI is used for subsequent metric calculations. +1. **OAP receives and ca
(skywalking-booster-ui) branch main updated: feat: support ranges for Value Mappings (#421)
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-booster-ui.git The following commit(s) were added to refs/heads/main by this push: new b6522f45 feat: support ranges for Value Mappings (#421) b6522f45 is described below commit b6522f45550ba78ce2d90163d80130573ca04145 Author: Fine0830 AuthorDate: Fri Oct 18 10:31:17 2024 +0800 feat: support ranges for Value Mappings (#421) --- src/locales/lang/en.ts | 3 +- src/locales/lang/es.ts | 3 +- src/locales/lang/zh.ts | 3 +- src/types/dashboard.d.ts | 2 +- src/views/dashboard/Widget.vue | 2 +- .../configuration/widget/graph-styles/Card.vue | 5 +-- .../configuration/widget/graph-styles/Table.vue| 5 +-- .../{ContentDecorations.vue => ValueMappings.vue} | 43 +- src/views/dashboard/graphs/Card.vue| 19 -- src/views/dashboard/graphs/Table.vue | 18 +++-- 10 files changed, 68 insertions(+), 35 deletions(-) diff --git a/src/locales/lang/en.ts b/src/locales/lang/en.ts index 0c6df128..065f32af 100644 --- a/src/locales/lang/en.ts +++ b/src/locales/lang/en.ts @@ -386,6 +386,7 @@ const msg = { tabExpressions: "Tab Expressions", hierarchyNodeMetrics: "Metrics for Hierarchy Graph Node", hierarchyNodeDashboard: "As dashboard for Hierarchy Graph Node", - contentDecorations: "Content Decorations", + valueMappings: "Value Mappings", + mappingTip: "Notice: The mapping key is a Regex string, for instance, ^-?(0|[1-9][0-9]*|2)(\\.0+)?$", }; export default msg; diff --git a/src/locales/lang/es.ts b/src/locales/lang/es.ts index c643df61..e6408ace 100644 --- a/src/locales/lang/es.ts +++ b/src/locales/lang/es.ts @@ -386,6 +386,7 @@ const msg = { tabExpressions: "Tab Expressions", hierarchyNodeMetrics: "Metrics for Hierarchy Graph Node", hierarchyNodeDashboard: "As dashboard for Hierarchy Graph Node", - contentDecorations: "Content Decorations", + valueMappings: "Value Mappings", + mappingTip: "Notice: The mapping key is a Regex string, for instance, ^-?(0|[1-9][0-9]*|2)(\\.0+)?$", }; export default msg; diff --git a/src/locales/lang/zh.ts b/src/locales/lang/zh.ts index 1a4ee12f..43b5cadb 100644 --- a/src/locales/lang/zh.ts +++ b/src/locales/lang/zh.ts @@ -384,6 +384,7 @@ const msg = { tabExpressions: "Tab表达式", hierarchyNodeMetrics: "层次图节点的指标", hierarchyNodeDashboard: "作为层次图节点的dashboard", - contentDecorations: "内容装饰", + valueMappings: "值映射", + mappingTip: "注意: 映射键是一个正则表达式字符串,比如 ^-?(0|[1-9][0-9]*|2)(\\.0+)?$", }; export default msg; diff --git a/src/types/dashboard.d.ts b/src/types/dashboard.d.ts index 90243c77..ccf98861 100644 --- a/src/types/dashboard.d.ts +++ b/src/types/dashboard.d.ts @@ -123,7 +123,7 @@ export interface CardConfig { fontSize?: number; showUnit?: boolean; textAlign?: "center" | "right" | "left"; - decorations?: { [key: string]: string }; + valueMappings?: { [key: string]: string }; } export interface TextConfig { diff --git a/src/views/dashboard/Widget.vue b/src/views/dashboard/Widget.vue index fc0b00ca..30f02385 100644 --- a/src/views/dashboard/Widget.vue +++ b/src/views/dashboard/Widget.vue @@ -32,7 +32,7 @@ limitations under the License. --> :config="{ i: 0, ...graph, - decorations: graph?.decorations, + valueMappings: graph?.valueMappings, metricConfig: config.metricConfig, expressions: config.expressions || [], typesOfMQE: typesOfMQE || [], diff --git a/src/views/dashboard/configuration/widget/graph-styles/Card.vue b/src/views/dashboard/configuration/widget/graph-styles/Card.vue index b90195f3..9f8398bb 100644 --- a/src/views/dashboard/configuration/widget/graph-styles/Card.vue +++ b/src/views/dashboard/configuration/widget/graph-styles/Card.vue @@ -14,8 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. --> -{{ t("contentDecorations") }} - + {{ t("fontSize") }} @@ -39,7 +38,7 @@ limitations under the License. --> import { ref } from "vue"; import { useI18n } from "vue-i18n"; import { useDashboardStore } from "@/store/modules/dashboard"; - import ContentDecorations from "./components/ContentDecorations.vue"; + import ValueMappings from "./components/ValueMappings.vue"; const { t } = useI18n(); const dashboardStore = useDashboardStore(); diff --git a/src/views/dashboard/configurati
(skywalking-website) branch master updated: Add blog of Introducing R3 (#745)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/skywalking-website.git The following commit(s) were added to refs/heads/master by this push: new d9687e7 Add blog of Introducing R3 (#745) d9687e7 is described below commit d9687e7fd7228b6d02fe6bc1a58676945210 Author: mrproliu <741550...@qq.com> AuthorDate: Fri Oct 18 10:29:23 2024 +0800 Add blog of Introducing R3 (#745) --- .../data_interaction_flow.png | Bin 0 -> 4176 bytes .../formated_images.png| Bin 0 -> 51508 bytes .../index.md | 151 + 3 files changed, 151 insertions(+) diff --git a/content/blog/2024-010-15-introduce-r3-to-recognition-restful-url/data_interaction_flow.png b/content/blog/2024-010-15-introduce-r3-to-recognition-restful-url/data_interaction_flow.png new file mode 100644 index 000..d3b86d1dd2e Binary files /dev/null and b/content/blog/2024-010-15-introduce-r3-to-recognition-restful-url/data_interaction_flow.png differ diff --git a/content/blog/2024-010-15-introduce-r3-to-recognition-restful-url/formated_images.png b/content/blog/2024-010-15-introduce-r3-to-recognition-restful-url/formated_images.png new file mode 100644 index 000..89cd0e7d6b7 Binary files /dev/null and b/content/blog/2024-010-15-introduce-r3-to-recognition-restful-url/formated_images.png differ diff --git a/content/blog/2024-010-15-introduce-r3-to-recognition-restful-url/index.md b/content/blog/2024-010-15-introduce-r3-to-recognition-restful-url/index.md new file mode 100644 index 000..9b5ff74cc86 --- /dev/null +++ b/content/blog/2024-010-15-introduce-r3-to-recognition-restful-url/index.md @@ -0,0 +1,151 @@ +--- +title: "Introduce R3 to recognition RESTFul URI" +date: 2024-10-17 +author: Han Liu +description: "This article will introduce how to use R3 to identify RESTFul URLs and integrate them into SkyWalking." +tags: +- RESTFul +- R3 +--- + +## Background + +In modern applications, services are typically provided through RESTFul HTTP URLs. +Using RESTFul HTTP URLs (as unique resource identifiers) offers high readability, making it easier for both clients and servers to understand. +However, in the observability field, this approach poses several challenges: + +1. **A large number of endpoints (HTTP URI)**: Browsing through all externally provided endpoints becomes more difficult, making it hard to identify problematic endpoints. +2. **Metrics are difficult to collect**: It becomes particularly challenging to categorize similar endpoints and generate observability metrics. + +In existing solutions, this issue can be resolved following these application-level resolutions: + +1. **Agent Detection**: In certain frameworks, rules are often declared to handle RESTFul requests. For example, in Java's Spring Web, annotations like `@GET` can be used, + which can then be linked to current requests using a Java Agent. +2. **OpenAPI**: Predefined files can be associated with the application, allowing the observability system to be aware of the URLs that may be used. + +Both resolutions are tightly coupled with application settings, which can be limiting for unknown applications or applications +where the agent cannot be monitored. Therefore, we need to consider whether there is a more general solution to identify URLs and +merge metrics generated from similar URLs for better representation. + +## R3 + +R3(RESTFul Pattern Recognition) is a high-performance RESTFul URI recognition tool inspired by [Drain3](https://github.com/logpai/Drain3). +It can be deployed as a standalone application on the observability server and communicate with the SkyWalking OAP. + +R3 can accept a URI list via the gRPC protocol and aggregate similar URLs into a specific format. +The aggregated (formatted) URI list can also be queried using the gRPC protocol. + +### Data Interaction Flow + +![Data Interaction Flow between OAP, R3](data_interaction_flow.png) + +1. **OAP receives and caches unformatted URI list**: OAP receives observability data through different protocols and identifies all unformatted URLs. These URLs are stored in a temporary list categorized by the service they belong to. +2. **OAP sends URLs to be formatted to R3**: OAP periodically batches the URLs that need formatting and sends them to the R3 service. +3. **R3 receives and parses the URI list**: R3 asynchronously analyzes the similarity of the received URLs and stores (persists) the results on the local disk to allow features like recovery after a restart. +4. **OAP queries formatted URI list from R3**: OAP periodically queries R3 for the detected formatted URLs and saves the results in memory. +5. **OAP formats URLs**: When OAP receives new observability data, it matches the URLs against the f
(skywalking) branch master updated: Support the endpoint list widget query with duration parameter. (#12703)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/skywalking.git The following commit(s) were added to refs/heads/master by this push: new dedf1cd9ce Support the endpoint list widget query with duration parameter. (#12703) dedf1cd9ce is described below commit dedf1cd9ce797930a7d72baf6fc49207f68581ee Author: mrproliu <741550...@qq.com> AuthorDate: Thu Oct 17 10:52:03 2024 +0800 Support the endpoint list widget query with duration parameter. (#12703) --- docs/en/changes/changes.md | 1 + skywalking-ui | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/docs/en/changes/changes.md b/docs/en/changes/changes.md index c2c412cb1c..820becaf64 100644 --- a/docs/en/changes/changes.md +++ b/docs/en/changes/changes.md @@ -16,6 +16,7 @@ * Add support for case-insensitive search in the dashboard list. * Add content decorations to Table and Card widgets. +* Support the endpoint list widget query with duration parameter. Documentation * Update release document to adopt newly added revision-based process. diff --git a/skywalking-ui b/skywalking-ui index 61449f4b17..bddbe40974 16 --- a/skywalking-ui +++ b/skywalking-ui @@ -1 +1 @@ -Subproject commit 61449f4b172a143d96cca139bed50839f5f2a5d6 +Subproject commit bddbe409749953d89c31707eb42f683d4b248192
(skywalking) branch master updated: Add support Kong monitoring (#12696)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/skywalking.git The following commit(s) were added to refs/heads/master by this push: new bfbda6fa14 Add support Kong monitoring (#12696) bfbda6fa14 is described below commit bfbda6fa14230c179aa9dc96edf9464c882a59b0 Author: Zixin Zhou AuthorDate: Thu Oct 17 10:09:10 2024 +0800 Add support Kong monitoring (#12696) --- .github/workflows/skywalking.yaml | 2 + docs/en/changes/changes.md | 4 +- docs/en/concepts-and-designs/service-hierarchy.md | 9 + docs/en/setup/backend/backend-kong-monitoring.md | 77 + docs/en/swip/SWIP-8.md | 61 docs/menu.yml | 2 + .../skywalking/oap/server/core/analysis/Layer.java | 7 +- .../ui/template/UITemplateInitializer.java | 1 + .../src/main/resources/application.yml | 2 +- .../src/main/resources/hierarchy-definition.yml| 5 + .../resources/otel-rules/kong/kong-endpoint.yaml | 40 +++ .../resources/otel-rules/kong/kong-instance.yaml | 105 ++ .../resources/otel-rules/kong/kong-service.yaml| 69 .../kong/kong-endpoint.json| 157 + .../kong/kong-instance.json| 324 +++ .../ui-initialized-templates/kong/kong-root.json | 45 +++ .../kong/kong-service.json | 351 + skywalking-ui | 2 +- test/e2e-v2/cases/kong/docker-compose.yml | 116 +++ test/e2e-v2/cases/kong/e2e.yaml| 37 +++ .../metrics-has-value-label-bandwidth-endpoint.yml | 35 ++ .../metrics-has-value-label-bandwidth-service.yml | 35 ++ .../expected/metrics-has-value-label-bandwidth.yml | 37 +++ .../metrics-has-value-label-percentile.yml | 35 ++ .../kong/expected/metrics-has-value-label-pid.yml | 35 ++ .../metrics-has-value-label-shared-dict.yml| 35 ++ .../expected/metrics-has-value-label-state.yml | 35 ++ .../expected/metrics-has-value-label-status.yml| 35 ++ .../cases/kong/expected/metrics-has-value.yml | 31 ++ .../kong/expected/metrics-single-value-label.yml | 32 ++ .../cases/kong/expected/metrics-single-value.yml | 28 ++ test/e2e-v2/cases/kong/expected/service.yml| 24 ++ test/e2e-v2/cases/kong/kong-cases.yaml | 80 + test/e2e-v2/cases/kong/kong-e2e-data-mock.sh | 45 +++ test/e2e-v2/cases/kong/otel-collector-config.yaml | 44 +++ 35 files changed, 1978 insertions(+), 4 deletions(-) diff --git a/.github/workflows/skywalking.yaml b/.github/workflows/skywalking.yaml index 93b5706b3d..924bf207aa 100644 --- a/.github/workflows/skywalking.yaml +++ b/.github/workflows/skywalking.yaml @@ -667,6 +667,8 @@ jobs: config: test/e2e-v2/cases/clickhouse/clickhouse-prometheus-endpoint/e2e.yaml - name: ActiveMQ config: test/e2e-v2/cases/activemq/e2e.yaml + - name: Kong +config: test/e2e-v2/cases/kong/e2e.yaml - name: UI Menu BanyanDB config: test/e2e-v2/cases/menu/banyandb/e2e.yaml diff --git a/docs/en/changes/changes.md b/docs/en/changes/changes.md index c46230ebb5..c2c412cb1c 100644 --- a/docs/en/changes/changes.md +++ b/docs/en/changes/changes.md @@ -10,10 +10,12 @@ * Support query endpoint list with duration parameter(optional). * Change the endpoint_traffic to updatable for the additional column `last_ping`. * Add Component ID(5023) for the GoZero framework. - +* Support Kong monitoring. UI +* Add support for case-insensitive search in the dashboard list. +* Add content decorations to Table and Card widgets. Documentation * Update release document to adopt newly added revision-based process. diff --git a/docs/en/concepts-and-designs/service-hierarchy.md b/docs/en/concepts-and-designs/service-hierarchy.md index 63e48a4531..8cd18bccda 100644 --- a/docs/en/concepts-and-designs/service-hierarchy.md +++ b/docs/en/concepts-and-designs/service-hierarchy.md @@ -37,6 +37,7 @@ If you want to customize it according to your own needs, please refer to [Servic | KAFKA| K8S_SERVICE | [KAFKA On K8S_SERVICE](#kafka-on-k8s_service) | | PULSAR | K8S_SERVICE | [PULSAR On K8S_SERVICE](#pulsar-on-k8s_service) | | SO11Y_OAP| K8S_SERVICE | [SO11Y_OAP On K8S_SERVICE](#so11y_oap-on-k8s_service) | +| KONG | K8S_SERVICE | [KONG On K8S_SERVICE](#kong-on-k8s_service) | - The following sections will describe the **default matching rules** in detail and use the `upper-layer On lower-layer` format. - The example service name are based on SkyWalking [Showcase](https://github.com/apache/skywalking
(skywalking) branch master updated: Add Component ID for the GoZero framework (#12700)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/skywalking.git The following commit(s) were added to refs/heads/master by this push: new 41b00c866f Add Component ID for the GoZero framework (#12700) 41b00c866f is described below commit 41b00c866f830fbc0abbc3def2e6ca6daeef60ce Author: Jay AuthorDate: Wed Oct 16 16:29:38 2024 +0800 Add Component ID for the GoZero framework (#12700) --- docs/en/changes/changes.md | 1 + oap-server/server-starter/src/main/resources/component-libraries.yml | 3 +++ 2 files changed, 4 insertions(+) diff --git a/docs/en/changes/changes.md b/docs/en/changes/changes.md index 78bd688eb1..c46230ebb5 100644 --- a/docs/en/changes/changes.md +++ b/docs/en/changes/changes.md @@ -9,6 +9,7 @@ * Polish eBPF so11y metrics and add error count for query metrics. * Support query endpoint list with duration parameter(optional). * Change the endpoint_traffic to updatable for the additional column `last_ping`. +* Add Component ID(5023) for the GoZero framework. UI diff --git a/oap-server/server-starter/src/main/resources/component-libraries.yml b/oap-server/server-starter/src/main/resources/component-libraries.yml index 0c1ade8592..c11247eca2 100644 --- a/oap-server/server-starter/src/main/resources/component-libraries.yml +++ b/oap-server/server-starter/src/main/resources/component-libraries.yml @@ -673,6 +673,9 @@ Fiber: GoFrame: id: 5022 language: Golang +GoZero: + id: 5023 + language: Golang # Lua components # [6000, 7000) for Lua agent
(skywalking-booster-ui) branch main updated: feat: add content decorations to Table and Card widgets (#419)
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-booster-ui.git The following commit(s) were added to refs/heads/main by this push: new 61449f4b feat: add content decorations to Table and Card widgets (#419) 61449f4b is described below commit 61449f4b172a143d96cca139bed50839f5f2a5d6 Author: Fine0830 AuthorDate: Tue Oct 15 16:25:21 2024 +0800 feat: add content decorations to Table and Card widgets (#419) --- src/locales/lang/en.ts | 1 + src/locales/lang/es.ts | 1 + src/locales/lang/zh.ts | 1 + src/types/dashboard.d.ts | 1 + src/views/dashboard/Widget.vue | 1 + src/views/dashboard/configuration/Widget.vue | 3 +- .../configuration/widget/graph-styles/Card.vue | 7 +- .../configuration/widget/graph-styles/Table.vue| 5 ++ .../graph-styles/components/ContentDecorations.vue | 100 + src/views/dashboard/graphs/Card.vue| 4 +- src/views/dashboard/graphs/Table.vue | 8 +- 11 files changed, 128 insertions(+), 4 deletions(-) diff --git a/src/locales/lang/en.ts b/src/locales/lang/en.ts index 4d816ad7..0c6df128 100644 --- a/src/locales/lang/en.ts +++ b/src/locales/lang/en.ts @@ -386,5 +386,6 @@ const msg = { tabExpressions: "Tab Expressions", hierarchyNodeMetrics: "Metrics for Hierarchy Graph Node", hierarchyNodeDashboard: "As dashboard for Hierarchy Graph Node", + contentDecorations: "Content Decorations", }; export default msg; diff --git a/src/locales/lang/es.ts b/src/locales/lang/es.ts index fbf22826..c643df61 100644 --- a/src/locales/lang/es.ts +++ b/src/locales/lang/es.ts @@ -386,5 +386,6 @@ const msg = { tabExpressions: "Tab Expressions", hierarchyNodeMetrics: "Metrics for Hierarchy Graph Node", hierarchyNodeDashboard: "As dashboard for Hierarchy Graph Node", + contentDecorations: "Content Decorations", }; export default msg; diff --git a/src/locales/lang/zh.ts b/src/locales/lang/zh.ts index 0a2d5c0f..1a4ee12f 100644 --- a/src/locales/lang/zh.ts +++ b/src/locales/lang/zh.ts @@ -384,5 +384,6 @@ const msg = { tabExpressions: "Tab表达式", hierarchyNodeMetrics: "层次图节点的指标", hierarchyNodeDashboard: "作为层次图节点的dashboard", + contentDecorations: "内容装饰", }; export default msg; diff --git a/src/types/dashboard.d.ts b/src/types/dashboard.d.ts index 5a24e53d..90243c77 100644 --- a/src/types/dashboard.d.ts +++ b/src/types/dashboard.d.ts @@ -123,6 +123,7 @@ export interface CardConfig { fontSize?: number; showUnit?: boolean; textAlign?: "center" | "right" | "left"; + decorations?: { [key: string]: string }; } export interface TextConfig { diff --git a/src/views/dashboard/Widget.vue b/src/views/dashboard/Widget.vue index a2f01a42..fc0b00ca 100644 --- a/src/views/dashboard/Widget.vue +++ b/src/views/dashboard/Widget.vue @@ -32,6 +32,7 @@ limitations under the License. --> :config="{ i: 0, ...graph, + decorations: graph?.decorations, metricConfig: config.metricConfig, expressions: config.expressions || [], typesOfMQE: typesOfMQE || [], diff --git a/src/views/dashboard/configuration/Widget.vue b/src/views/dashboard/configuration/Widget.vue index 62248e94..dc36d47f 100644 --- a/src/views/dashboard/configuration/Widget.vue +++ b/src/views/dashboard/configuration/Widget.vue @@ -32,7 +32,8 @@ limitations under the License. --> :data="states.source" :config="{ ...graph, -legend: (dashboardStore.selectedGrid.graph || {}).legend, +decorations: dashboardStore.selectedGrid.graph?.decorations, +legend: dashboardStore.selectedGrid.graph?.legend, i: dashboardStore.selectedGrid.i, metricConfig: dashboardStore.selectedGrid.metricConfig, relatedTrace: dashboardStore.selectedGrid.relatedTrace, diff --git a/src/views/dashboard/configuration/widget/graph-styles/Card.vue b/src/views/dashboard/configuration/widget/graph-styles/Card.vue index 79a43992..b90195f3 100644 --- a/src/views/dashboard/configuration/widget/graph-styles/Card.vue +++ b/src/views/dashboard/configuration/widget/graph-styles/Card.vue @@ -13,6 +13,10 @@ 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. --> + +{{ t("contentDecorations") }} + + {{ t("fontSize") }} @change="updateConfig({ fontSize })" /> - + {{ t("show
(skywalking) branch master updated: support query endpoint list with time range (#12693)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/skywalking.git The following commit(s) were added to refs/heads/master by this push: new bf9f8aa8be support query endpoint list with time range (#12693) bf9f8aa8be is described below commit bf9f8aa8beee641ac17aba43bee88fff5b2d4939 Author: mrproliu <741550...@qq.com> AuthorDate: Tue Oct 15 15:17:12 2024 +0800 support query endpoint list with time range (#12693) --- docs/en/changes/changes.md | 2 ++ .../core/analysis/manual/endpoint/EndpointTraffic.java | 18 -- .../manual/endpoint/EndpointTrafficDispatcher.java | 1 + .../oap/server/core/query/MetadataQueryService.java| 4 ++-- .../server/core/storage/query/IMetadataQueryDAO.java | 3 ++- .../oap/query/promql/handler/PromQLApiHandler.java | 4 ++-- .../oap/query/graphql/resolver/MetadataQuery.java | 2 +- .../oap/query/graphql/resolver/MetadataQueryV2.java| 4 ++-- .../src/main/resources/query-protocol | 2 +- .../banyandb/measure/BanyanDBMetadataQueryDAO.java | 8 +++- .../plugin/elasticsearch/query/MetadataQueryEsDAO.java | 8 +++- .../plugin/jdbc/common/dao/JDBCMetadataQueryDAO.java | 10 +- test/e2e-v2/cases/browser/expected/dependency.yml | 4 .../cases/cilium/expected/dependency-services.yml | 8 .../gateway/expected/dependency-services-consumer.yml | 6 ++ .../gateway/expected/dependency-services-provider.yml | 6 ++ .../cases/go/expected/dependency-services-go.yml | 6 ++ .../als/expected/dependency-services-productpage.yml | 8 .../istio/als/expected/dependency-services-reviews.yml | 6 ++ .../expected/dependency-services-productpage.yml | 8 test/e2e-v2/cases/lua/expected/dependency-services.yml | 6 ++ .../expected/dependency-services-consumer-nodejs.yml | 6 ++ .../nodejs/expected/dependency-services-consumer.yml | 6 ++ .../expected/dependency-services-provider-nodejs.yml | 4 .../cases/php/expected/dependency-services-php.yml | 6 ++ .../php/expected/dependency-services-provider.yml | 6 ++ .../ebpf/access_log/expected/dependency-services.yml | 8 .../expected/dependency-services-consumer-py.yml | 8 .../expected/dependency-services-provider-py.yml | 4 .../native-protocols/expected/dependency-services.yml | 4 .../simple/expected/dependency-services-consumer.yml | 6 ++ .../simple/expected/dependency-services-provider.yml | 6 ++ test/e2e-v2/cases/simple/simple-cases.yaml | 3 +++ .../storage/expected/dependency-services-consumer.yml | 6 ++ .../storage/expected/dependency-services-provider.yml | 6 ++ test/e2e-v2/script/env | 2 +- 36 files changed, 190 insertions(+), 15 deletions(-) diff --git a/docs/en/changes/changes.md b/docs/en/changes/changes.md index 80abde735c..78bd688eb1 100644 --- a/docs/en/changes/changes.md +++ b/docs/en/changes/changes.md @@ -7,6 +7,8 @@ * Reduce the count of process index and adding time range when query process index. * Bump up Apache commons-io to 2.17.0. * Polish eBPF so11y metrics and add error count for query metrics. +* Support query endpoint list with duration parameter(optional). +* Change the endpoint_traffic to updatable for the additional column `last_ping`. UI diff --git a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/manual/endpoint/EndpointTraffic.java b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/manual/endpoint/EndpointTraffic.java index a2beaca1d3..f44a1af6eb 100644 --- a/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/manual/endpoint/EndpointTraffic.java +++ b/oap-server/server-core/src/main/java/org/apache/skywalking/oap/server/core/analysis/manual/endpoint/EndpointTraffic.java @@ -40,14 +40,18 @@ import org.apache.skywalking.oap.server.core.storage.type.StorageBuilder; @Stream(name = EndpointTraffic.INDEX_NAME, scopeId = DefaultScopeDefine.ENDPOINT, builder = EndpointTraffic.Builder.class, processor = MetricsStreamProcessor.class) -@MetricsExtension(supportDownSampling = false, supportUpdate = false) -@EqualsAndHashCode +@MetricsExtension(supportDownSampling = false, supportUpdate = true) +@EqualsAndHashCode(of = { +"serviceId", +"name" +}) public class EndpointTraffic extends Metrics { public static final String INDEX_NAME = "endpoint_traffic"; public static final String SERVICE_ID = "service_id"; public static final String NAME = "endpoint_traffic_name"; +public static final String LAST_PING_TIME_BUCKET = "last_ping&
(skywalking-cli) branch dependency-global-missing-layers deleted (was fe04040)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a change to branch dependency-global-missing-layers in repository https://gitbox.apache.org/repos/asf/skywalking-cli.git was fe04040 fix missing layers field in the `dependency global` command The revisions that were on this branch are still contained in other references; therefore, this change does not discard any commits from the repository.
(skywalking-cli) branch master updated: fix missing layers field in the `dependency global` command (#202)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/skywalking-cli.git The following commit(s) were added to refs/heads/master by this push: new a14bf0e fix missing layers field in the `dependency global` command (#202) a14bf0e is described below commit a14bf0e03d4d1ac0d8706e0677696a55a6bf57af Author: mrproliu <741550...@qq.com> AuthorDate: Sat Oct 12 13:10:46 2024 +0800 fix missing layers field in the `dependency global` command (#202) --- assets/graphqls/dependency/GlobalTopology.graphql | 1 + 1 file changed, 1 insertion(+) diff --git a/assets/graphqls/dependency/GlobalTopology.graphql b/assets/graphqls/dependency/GlobalTopology.graphql index f09602e..70d501b 100644 --- a/assets/graphqls/dependency/GlobalTopology.graphql +++ b/assets/graphqls/dependency/GlobalTopology.graphql @@ -22,6 +22,7 @@ query ($layer: String, $duration: Duration!) { name type isReal +layers } calls { id
(skywalking-cli) branch master updated: Add the duration related flags in the `endpoint list` (#201)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/skywalking-cli.git The following commit(s) were added to refs/heads/master by this push: new 86618d0 Add the duration related flags in the `endpoint list` (#201) 86618d0 is described below commit 86618d043ce25ebaec6570c4341c1f6c3cc8d64c Author: mrproliu <741550...@qq.com> AuthorDate: Sat Oct 12 08:39:09 2024 +0800 Add the duration related flags in the `endpoint list` (#201) --- .github/workflows/CI.yaml| 4 ++-- CHANGES.md | 1 + ...nts.graphql => FindEndpointsWithDuration.graphql} | 4 ++-- graphql => FindEndpointsWithoutDuration.graphql} | 0 internal/commands/browser/page/list.go | 2 +- internal/commands/endpoint/list.go | 20 +++- internal/commands/interceptor/duration.go| 5 + pkg/graphql/metadata/metadata.go | 14 ++ 8 files changed, 40 insertions(+), 10 deletions(-) diff --git a/.github/workflows/CI.yaml b/.github/workflows/CI.yaml index 19bdecf..423387a 100644 --- a/.github/workflows/CI.yaml +++ b/.github/workflows/CI.yaml @@ -65,7 +65,7 @@ jobs: - name: Check for CLI source changes id: filter-cli # The GHA version is pinned by infra -uses: tj-actions/changed-files@v35.9.2 +uses: tj-actions/changed-files@v43.0.0 with: files_from_source_file: .github/file-filters.txt - name: List all modified files @@ -145,7 +145,7 @@ jobs: go-version: 1.18 - name: Test commands -uses: apache/skywalking-infra-e2e@2b3aa53dbba73909730b211d5b8065abc74b56ad +uses: apache/skywalking-infra-e2e@cf589b4a0b9f8e6f436f78e9cfd94a1ee5494180 env: OAP_TAG: ${{ matrix.oap }} with: diff --git a/CHANGES.md b/CHANGES.md index cdda2fd..e978e0e 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -11,6 +11,7 @@ Release Notes. * Upgrade crypto lib to fix cve by @mrproliu in https://github.com/apache/skywalking-cli/pull/199 * Add the **hierarchy** related commands `hierarchy service`, `hierarchy instance` and `hierarchy layer-levels` by @mrproliu in https://github.com/apache/skywalking-cli/pull/200 * Add the `layers` field to `nodes` in the `dependency service` command by @mrproliu in https://github.com/apache/skywalking-cli/pull/200 +* Add the duration related flags in the `endpoint list` command by @mrproliu in https://github.com/apache/skywalking-cli/pull/201 ### Bug Fixes diff --git a/assets/graphqls/metadata/v2/FindEndpoints.graphql b/assets/graphqls/metadata/v2/FindEndpointsWithDuration.graphql similarity index 87% copy from assets/graphqls/metadata/v2/FindEndpoints.graphql copy to assets/graphqls/metadata/v2/FindEndpointsWithDuration.graphql index f53c225..b9cd169 100644 --- a/assets/graphqls/metadata/v2/FindEndpoints.graphql +++ b/assets/graphqls/metadata/v2/FindEndpointsWithDuration.graphql @@ -15,8 +15,8 @@ # specific language governing permissions and limitations # under the License. -query ($keyword: String!, $serviceId: ID!, $limit: Int!) { -result: findEndpoint(keyword: $keyword, serviceId: $serviceId, limit: $limit) { +query ($keyword: String!, $serviceId: ID!, $limit: Int!, $duration: Duration) { +result: findEndpoint(keyword: $keyword, serviceId: $serviceId, limit: $limit, duration: $duration) { id name } } \ No newline at end of file diff --git a/assets/graphqls/metadata/v2/FindEndpoints.graphql b/assets/graphqls/metadata/v2/FindEndpointsWithoutDuration.graphql similarity index 100% rename from assets/graphqls/metadata/v2/FindEndpoints.graphql rename to assets/graphqls/metadata/v2/FindEndpointsWithoutDuration.graphql diff --git a/internal/commands/browser/page/list.go b/internal/commands/browser/page/list.go index b389c22..757f400 100644 --- a/internal/commands/browser/page/list.go +++ b/internal/commands/browser/page/list.go @@ -58,7 +58,7 @@ $ swctl browser page ls --service-id dGVzdC11aQ==.1`, serviceID := ctx.String("service-id") limit := ctx.Int("limit") - endpoints, err := metadata.SearchEndpoints(ctx, serviceID, "", limit) + endpoints, err := metadata.SearchEndpoints(ctx, serviceID, "", limit, nil) if err != nil { return err diff --git a/internal/commands/endpoint/list.go b/internal/commands/endpoint/list.go index b9b3555..2249b12 100644 --- a/internal/commands/endpoint/list.go +++ b/internal/commands/endpoint/list.go @@ -20,8 +20,11 @@ package endpoint import ( "github.com/urfave/cli/v2" + api "skywalking.apache.org/repo/goapi/query" + "github.com/apache/skywalking-cli/internal/c
(skywalking-go) branch main updated: fix interface nil exception (#208)
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-go.git The following commit(s) were added to refs/heads/main by this push: new 3981a26 fix interface nil exception (#208) 3981a26 is described below commit 3981a26a05db6abca7c9cca218b1cdb7ae604d0e Author: exgalibas AuthorDate: Thu Oct 10 17:02:50 2024 +0800 fix interface nil exception (#208) Co-authored-by: lin.tan --- plugins/core/logreport.go | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/plugins/core/logreport.go b/plugins/core/logreport.go index cb09112..e8c702c 100644 --- a/plugins/core/logreport.go +++ b/plugins/core/logreport.go @@ -19,6 +19,7 @@ package core import ( "fmt" + "reflect" "time" "github.com/apache/skywalking-go/plugins/core/operator" @@ -111,7 +112,7 @@ func (t *Tracer) GetLogContext(withEndpoint bool) interface{} { } } entity := t.Entity() - if e, ok := entity.(operator.Entity); ok && e != nil { + if e, ok := entity.(operator.Entity); ok && e != nil && !reflect.ValueOf(e).IsNil() { serviceName, instanceName = e.GetServiceName(), e.GetInstanceName() } return &SkyWalkingLogContext{
(skywalking-query-protocol) branch master updated: Support query endpoints in given duration (#140)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/skywalking-query-protocol.git The following commit(s) were added to refs/heads/master by this push: new d5a8b09 Support query endpoints in given duration (#140) d5a8b09 is described below commit d5a8b092d1ebbc5fe330c1c2a06fa688050a21c9 Author: mrproliu <741550...@qq.com> AuthorDate: Thu Oct 10 14:49:40 2024 +0800 Support query endpoints in given duration (#140) --- metadata-v2.graphqls | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/metadata-v2.graphqls b/metadata-v2.graphqls index adf3850..d22e734 100644 --- a/metadata-v2.graphqls +++ b/metadata-v2.graphqls @@ -129,7 +129,8 @@ extend type Query { # Search and find matched endpoints according to given service and keyword(optional) # If no keyword, randomly choose endpoint based on `limit` value. -findEndpoint(keyword: String, serviceId: ID!, limit: Int!): [Endpoint!]! +# If duration is nil mean get all endpoints, otherwise, get the endpoint list in the given duration. +findEndpoint(keyword: String, serviceId: ID!, limit: Int!, duration: Duration): [Endpoint!]! getEndpointInfo(endpointId: ID!): EndpointInfo # Read process list.
(skywalking-showcase) branch main updated: disable the istio-proxy inject in r3-load and bump up rover image (#189)
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-showcase.git The following commit(s) were added to refs/heads/main by this push: new e2dea8a disable the istio-proxy inject in r3-load and bump up rover image (#189) e2dea8a is described below commit e2dea8a6fc180a121b5527202434c6e551782cba Author: mrproliu <741550...@qq.com> AuthorDate: Thu Oct 10 12:40:55 2024 +0800 disable the istio-proxy inject in r3-load and bump up rover image (#189) --- Makefile.in| 2 +- deploy/platform/kubernetes/templates/feature-r3/resources.yaml | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/Makefile.in b/Makefile.in index 0f22059..4a1fbc4 100644 --- a/Makefile.in +++ b/Makefile.in @@ -49,7 +49,7 @@ SW_AGENT_NODEJS_FRONTEND_VERSION ?= 1e31bd17dcebb616163d848fc435f3a2d4822fb8 SW_SATELLITE_IMAGE ?= ghcr.io/apache/skywalking-satellite/skywalking-satellite SW_SATELLITE_IMAGE_TAG ?= v261daa37cfe4abbae6e12ef5706a941b4357b815 -SW_ROVER_IMAGE ?= ghcr.io/apache/skywalking-rover/skywalking-rover:2331dbe091343b9ebb2c74a8c6500af80274fb07 +SW_ROVER_IMAGE ?= ghcr.io/apache/skywalking-rover/skywalking-rover:e0fc8f7c72a8b57dab6ea9552d7be2b40b134fe8 SWCK_OPERATOR_IMAGE ?= docker.io/apache/skywalking-swck SWCK_OPERATOR_IMAGE_TAG ?= v0.7.0 diff --git a/deploy/platform/kubernetes/templates/feature-r3/resources.yaml b/deploy/platform/kubernetes/templates/feature-r3/resources.yaml index 8becfa2..23e8396 100644 --- a/deploy/platform/kubernetes/templates/feature-r3/resources.yaml +++ b/deploy/platform/kubernetes/templates/feature-r3/resources.yaml @@ -69,6 +69,9 @@ spec: spec: template: spec: + metadata: +annotations: + sidecar.istio.io/inject: "false" shareProcessNamespace: true containers: - name: r3-load
(skywalking-banyandb-helm) branch 0.3.0 deleted (was ed14d61)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a change to branch 0.3.0 in repository https://gitbox.apache.org/repos/asf/skywalking-banyandb-helm.git was ed14d61 Bump up image for releasing 0.3.0 The revisions that were on this branch are still contained in other references; therefore, this change does not discard any commits from the repository.
(skywalking-banyandb-helm) branch master updated: Bump up image for releasing 0.3.0 (#25)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/skywalking-banyandb-helm.git The following commit(s) were added to refs/heads/master by this push: new fac9a2a Bump up image for releasing 0.3.0 (#25) fac9a2a is described below commit fac9a2a75dc3baf5b168b98231fee86f426819ee Author: Gao Hongtao AuthorDate: Thu Oct 10 09:35:35 2024 +0800 Bump up image for releasing 0.3.0 (#25) --- README.md | 2 +- chart/Chart.yaml| 2 +- chart/values.yaml | 2 +- test/e2e/values.cluster.yaml| 2 +- test/e2e/values.standalone.yaml | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index a6ccb39..4344f7b 100644 --- a/README.md +++ b/README.md @@ -171,7 +171,7 @@ The chart needs the minimum version of BanyanDB 0.7.0 when the chart version is | nameOverride | string | `"banyandb"` | Name override for the chart | | image.pullPolicy | string | `"IfNotPresent"` | Image pull policy | | image.repository | string | `"docker.io/apache/skywalking-banyandb"` | Image repository | -| image.tag | string | `"0.7.0-rc0"` | Image tag | +| image.tag | string | `"0.7.0"` | Image tag | | serviceAccount.annotations | object | `{}` | Annotations for the service account | | serviceAccount.create | bool | `true` | Create a service account | | serviceAccount.name | string | `""` | Name of the service account | diff --git a/chart/Chart.yaml b/chart/Chart.yaml index 5678029..aa1c433 100644 --- a/chart/Chart.yaml +++ b/chart/Chart.yaml @@ -16,7 +16,7 @@ apiVersion: v2 name: skywalking-banyandb-helm home: https://skywalking.apache.org -version: 0.3.0-rc0 +version: 0.3.0 description: Helm Chart for Apache SkyWalking BanyanDB icon: https://raw.githubusercontent.com/apache/skywalking-kubernetes/master/logo/sw-logo-for-chart.jpg sources: diff --git a/chart/values.yaml b/chart/values.yaml index 587e50c..10b40b7 100644 --- a/chart/values.yaml +++ b/chart/values.yaml @@ -19,7 +19,7 @@ image: repository: docker.io/apache/skywalking-banyandb - tag: 0.7.0-rc0 + tag: 0.7.0 pullPolicy: IfNotPresent standalone: diff --git a/test/e2e/values.cluster.yaml b/test/e2e/values.cluster.yaml index 6f6dda0..c37491f 100644 --- a/test/e2e/values.cluster.yaml +++ b/test/e2e/values.cluster.yaml @@ -19,7 +19,7 @@ image: repository: docker.io/apache/skywalking-banyandb - tag: 0.7.0-rc0 + tag: 0.7.0 pullPolicy: IfNotPresent cluster: diff --git a/test/e2e/values.standalone.yaml b/test/e2e/values.standalone.yaml index 638cdb4..c18ffc4 100644 --- a/test/e2e/values.standalone.yaml +++ b/test/e2e/values.standalone.yaml @@ -25,7 +25,7 @@ etcd: image: repository: docker.io/apache/skywalking-banyandb - tag: 0.7.0-rc0 + tag: 0.7.0 pullPolicy: IfNotPresent standalone:
(skywalking) branch master updated: Bump up Apache commons-io to 2.17.0 (#12688)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/skywalking.git The following commit(s) were added to refs/heads/master by this push: new f9d6d950ed Bump up Apache commons-io to 2.17.0 (#12688) f9d6d950ed is described below commit f9d6d950ed4d865726614a56b10f552db32ab9ea Author: kezhenxu94 AuthorDate: Thu Oct 10 08:48:55 2024 +0800 Bump up Apache commons-io to 2.17.0 (#12688) --- dist-material/release-docs/LICENSE | 2 +- docs/en/changes/changes.md | 1 + oap-server-bom/pom.xml | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/dist-material/release-docs/LICENSE b/dist-material/release-docs/LICENSE index cd909a950e..9c5f662687 100644 --- a/dist-material/release-docs/LICENSE +++ b/dist-material/release-docs/LICENSE @@ -252,7 +252,7 @@ The text of each license is the standard Apache 2.0 license. https://mvnrepository.com/artifact/com.zaxxer/HikariCP/3.1.0 Apache-2.0 https://mvnrepository.com/artifact/commons-beanutils/commons-beanutils/1.9.4 Apache-2.0 https://mvnrepository.com/artifact/commons-codec/commons-codec/1.11 Apache-2.0 -https://mvnrepository.com/artifact/commons-io/commons-io/2.7 Apache-2.0 +https://mvnrepository.com/artifact/commons-io/commons-io/2.17.0 Apache-2.0 https://mvnrepository.com/artifact/commons-net/commons-net/3.9.0 Apache-2.0 https://mvnrepository.com/artifact/commons-validator/commons-validator/1.7 Apache-2.0 https://npmjs.com/package/d3-flame-graph/v/4.1.3 4.1.3 Apache-2.0 diff --git a/docs/en/changes/changes.md b/docs/en/changes/changes.md index 12db2a8c72..c8f88b8b5e 100644 --- a/docs/en/changes/changes.md +++ b/docs/en/changes/changes.md @@ -5,6 +5,7 @@ * Skip processing OTLP metrics data points with flag `FLAG_NO_RECORDED_VALUE`, which causes exceptional result. * Add self observability metrics for GraphQL query, `graphql_query_latency`. * Reduce the count of process index and adding time range when query process index. +* Bump up Apache commons-io to 2.17.0. UI diff --git a/oap-server-bom/pom.xml b/oap-server-bom/pom.xml index c082dbc4b0..339d0dcd41 100644 --- a/oap-server-bom/pom.xml +++ b/oap-server-bom/pom.xml @@ -45,7 +45,7 @@ 3.25.5 1.11 3.12.0 -2.7 +2.17.0 1.4 6.7.1 3.1.0
(skywalking) branch master updated: Add GraphQL metrics dashboard (#12687)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/skywalking.git The following commit(s) were added to refs/heads/master by this push: new 97d4a59588 Add GraphQL metrics dashboard (#12687) 97d4a59588 is described below commit 97d4a59588fc1d39ed05d66495f28398baeea7b6 Author: kezhenxu94 AuthorDate: Wed Oct 9 22:54:31 2024 +0800 Add GraphQL metrics dashboard (#12687) --- .../src/main/resources/otel-rules/oap.yaml | 2 ++ .../so11y_oap/so11y-instance.json | 27 ++ 2 files changed, 29 insertions(+) diff --git a/oap-server/server-starter/src/main/resources/otel-rules/oap.yaml b/oap-server/server-starter/src/main/resources/otel-rules/oap.yaml index a8aa11ee2e..485a02d15f 100644 --- a/oap-server/server-starter/src/main/resources/otel-rules/oap.yaml +++ b/oap-server/server-starter/src/main/resources/otel-rules/oap.yaml @@ -114,3 +114,5 @@ metricsRules: exp: otel_logs_latency.sum(['le', 'service', 'host_name']).increase('PT1M').histogram().histogram_percentile([50,70,90,99]) - name: otel_spans_latency_percentile exp: otel_spans_latency.sum(['le', 'service', 'host_name']).increase('PT1M').histogram().histogram_percentile([50,70,90,99]) + - name: graphql_query_latency_percentile +exp: graphql_query_latency.sum(['le', 'service', 'host_name']).increase('PT5M').histogram().histogram_percentile([50,70,90,99]) diff --git a/oap-server/server-starter/src/main/resources/ui-initialized-templates/so11y_oap/so11y-instance.json b/oap-server/server-starter/src/main/resources/ui-initialized-templates/so11y_oap/so11y-instance.json index 0752732cb5..34edf346c6 100644 --- a/oap-server/server-starter/src/main/resources/ui-initialized-templates/so11y_oap/so11y-instance.json +++ b/oap-server/server-starter/src/main/resources/ui-initialized-templates/so11y_oap/so11y-instance.json @@ -315,6 +315,33 @@ "meter_oap_jvm_class_total_unloaded_count", "meter_oap_jvm_class_total_loaded_count" ] +}, +{ + "x": 0, + "y": 39, + "w": 6, + "h": 11, + "i": "16", + "type": "Widget", + "expressions": [ + "relabels(meter_oap_graphql_query_latency_percentile{p='50,75,90,95,99'},p='50,75,90,95,99',percentile='50,75,90,95,99')" + ], + "graph": { +"type": "Line", +"step": false, +"smooth": false, +"showSymbol": true, +"showXAxis": true, +"showYAxis": true + }, + "widget": { +"title": "GraphQL Query Latency (ms)" + }, + "metricConfig": [ +{ + "unit": "ns" +} + ] } ] },
(skywalking-banyandb) branch main updated: Fix metrics system typo (#550)
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-banyandb.git The following commit(s) were added to refs/heads/main by this push: new bcaf9a8d Fix metrics system typo (#550) bcaf9a8d is described below commit bcaf9a8d80780b374c9275d15ad3c45c83a94b09 Author: hui lai <1353307...@qq.com> AuthorDate: Tue Oct 8 21:51:23 2024 +0800 Fix metrics system typo (#550) --- CHANGES.md | 6 ++ banyand/observability/metrics_system.go | 28 ++-- 2 files changed, 20 insertions(+), 14 deletions(-) diff --git a/CHANGES.md b/CHANGES.md index d8b75db2..36f4d273 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -2,6 +2,12 @@ Release Notes. +## 0.8.0 + +### Chores + +- Fix metrics system typo. + ## 0.7.0 ### File System Changes diff --git a/banyand/observability/metrics_system.go b/banyand/observability/metrics_system.go index 8b1b7ecc..fd6f5ed2 100644 --- a/banyand/observability/metrics_system.go +++ b/banyand/observability/metrics_system.go @@ -47,14 +47,14 @@ var ( // RootScope is the root scope for all metrics. RootScope = meter.NewHierarchicalScope("banyandb", "_") // SystemScope is the system scope for all metrics. - SystemScope = RootScope.SubScope("system") - cpuStateGauge meter.Gauge - cpuNumGauge meter.Gauge - memorySateGauge meter.Gauge - netStateGauge meter.Gauge - upTimeGauge meter.Gauge - diskStateGauge meter.Gauge - diskMap = sync.Map{} + SystemScope = RootScope.SubScope("system") + cpuStateGaugemeter.Gauge + cpuNumGauge meter.Gauge + memoryStateGauge meter.Gauge + netStateGaugemeter.Gauge + upTimeGauge meter.Gauge + diskStateGauge meter.Gauge + diskMap = sync.Map{} ) // UpdatePath updates a path to monitoring its disk usage. @@ -82,7 +82,7 @@ func (p *metricService) initMetrics() { factory := p.With(SystemScope) cpuStateGauge = factory.NewGauge("cpu_state", "kind") cpuNumGauge = factory.NewGauge("cpu_num") - memorySateGauge = factory.NewGauge("memory_state", "kind") + memoryStateGauge = factory.NewGauge("memory_state", "kind") netStateGauge = factory.NewGauge("net_state", "kind", "name") upTimeGauge = factory.NewGauge("up_time") diskStateGauge = factory.NewGauge("disk", "path", "kind") @@ -118,16 +118,16 @@ func collectCPU() { } func collectMemory() { - if memorySateGauge == nil { - log.Error().Msg("memorySateGauge is not registered") + if memoryStateGauge == nil { + log.Error().Msg("memoryStateGauge is not registered") } m, err := mem.VirtualMemory() if err != nil { log.Error().Err(err).Msg("cannot get memory stat") } - memorySateGauge.Set(m.UsedPercent/100, "used_percent") - memorySateGauge.Set(float64(m.Used), "used") - memorySateGauge.Set(float64(m.Total), "total") + memoryStateGauge.Set(m.UsedPercent/100, "used_percent") + memoryStateGauge.Set(float64(m.Used), "used") + memoryStateGauge.Set(float64(m.Total), "total") } func collectNet() {
(skywalking) branch master updated: Fix checking OTEL DataPointFlags (#12682)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/skywalking.git The following commit(s) were added to refs/heads/master by this push: new 180ca71375 Fix checking OTEL DataPointFlags (#12682) 180ca71375 is described below commit 180ca713755eb7958a3430fe4ee33527288e24db Author: kezhenxu94 AuthorDate: Tue Oct 8 20:59:42 2024 +0800 Fix checking OTEL DataPointFlags (#12682) --- .../otlp/OpenTelemetryMetricRequestProcessor.java | 28 +++--- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/oap-server/server-receiver-plugin/otel-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/otel/otlp/OpenTelemetryMetricRequestProcessor.java b/oap-server/server-receiver-plugin/otel-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/otel/otlp/OpenTelemetryMetricRequestProcessor.java index 092bf3f57c..ae60bdbade 100644 --- a/oap-server/server-receiver-plugin/otel-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/otel/otlp/OpenTelemetryMetricRequestProcessor.java +++ b/oap-server/server-receiver-plugin/otel-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/otel/otlp/OpenTelemetryMetricRequestProcessor.java @@ -238,8 +238,8 @@ public class OpenTelemetryMetricRequestProcessor implements Service { final Map nodeLabels, final io.opentelemetry.proto.metrics.v1.Metric metric) { if (metric.hasGauge()) { -return metric.getGauge().getDataPointsList().stream().filter(point -> point.getFlags() - != DataPointFlags.FLAG_NO_RECORDED_VALUE_VALUE) +return metric.getGauge().getDataPointsList().stream().filter(point -> +(point.getFlags() & DataPointFlags.FLAG_NO_RECORDED_VALUE_VALUE) != DataPointFlags.FLAG_NO_RECORDED_VALUE_VALUE) .map(point -> new Gauge( metric.getName(), mergeLabels( @@ -259,8 +259,8 @@ public class OpenTelemetryMetricRequestProcessor implements Service { } if (sum .getAggregationTemporality() == AGGREGATION_TEMPORALITY_DELTA) { -return sum.getDataPointsList().stream().filter(point -> point.getFlags() - != DataPointFlags.FLAG_NO_RECORDED_VALUE_VALUE) +return sum.getDataPointsList().stream().filter(point -> +(point.getFlags() & DataPointFlags.FLAG_NO_RECORDED_VALUE_VALUE) != DataPointFlags.FLAG_NO_RECORDED_VALUE_VALUE) .map(point -> new Gauge( metric.getName(), mergeLabels( @@ -273,8 +273,8 @@ public class OpenTelemetryMetricRequestProcessor implements Service { )); } if (sum.getIsMonotonic()) { -return sum.getDataPointsList().stream().filter(point -> point.getFlags() - != DataPointFlags.FLAG_NO_RECORDED_VALUE_VALUE) +return sum.getDataPointsList().stream().filter(point -> +(point.getFlags() & DataPointFlags.FLAG_NO_RECORDED_VALUE_VALUE) != DataPointFlags.FLAG_NO_RECORDED_VALUE_VALUE) .map(point -> new Counter( metric.getName(), mergeLabels( @@ -286,8 +286,8 @@ public class OpenTelemetryMetricRequestProcessor implements Service { point.getTimeUnixNano() / 100 )); } else { -return sum.getDataPointsList().stream().filter(point -> point.getFlags() - != DataPointFlags.FLAG_NO_RECORDED_VALUE_VALUE) +return sum.getDataPointsList().stream().filter(point -> +(point.getFlags() & DataPointFlags.FLAG_NO_RECORDED_VALUE_VALUE) != DataPointFlags.FLAG_NO_RECORDED_VALUE_VALUE) .map(point -> new Gauge( metric.getName(), mergeLabels( @@ -301,8 +301,8 @@ public class OpenTelemetryMetricRequestProcessor implements Service { } } if (metric.hasHistogram()) { -return metric.getHistogram().getDataPointsList().stream().filter(point -> point.getFlags() - != DataPointFlags.FLAG_NO_RECORDED_VALUE_VALUE) +return metric.getHistogram().getDataPointsList().stream().filter(point -> +(point.getFlags() & DataPointFlags.FLAG_NO_RECORDED_VALUE_VALUE) != DataPointFlags.FLAG_NO_RECORDED_VALUE_VALUE) .map(point -> new Histogram(
(skywalking) branch master updated: Add self observability metrics for GraphQL query (#12683)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/skywalking.git The following commit(s) were added to refs/heads/master by this push: new 36e34672ed Add self observability metrics for GraphQL query (#12683) 36e34672ed is described below commit 36e34672ed625ca11f41a70811a8f69488876613 Author: kezhenxu94 AuthorDate: Tue Oct 8 20:26:20 2024 +0800 Add self observability metrics for GraphQL query (#12683) --- docs/en/changes/changes.md | 3 ++- .../oap/query/graphql/GraphQLQueryHandler.java | 28 +- .../oap/query/graphql/GraphQLQueryProvider.java| 4 ++-- 3 files changed, 31 insertions(+), 4 deletions(-) diff --git a/docs/en/changes/changes.md b/docs/en/changes/changes.md index 553650d4e3..4b55d3da8b 100644 --- a/docs/en/changes/changes.md +++ b/docs/en/changes/changes.md @@ -2,7 +2,8 @@ OAP Server -Fix OTLP metrics incorrectly processed when the datapoint flag is `FLAG_NO_RECORDED_VALUE`. +* Skip processing OTLP metrics data points with flag `FLAG_NO_RECORDED_VALUE`, which causes exceptional result. +* Add self observability metrics for GraphQL query, `graphql_query_latency`. UI diff --git a/oap-server/server-query-plugin/query-graphql-plugin/src/main/java/org/apache/skywalking/oap/query/graphql/GraphQLQueryHandler.java b/oap-server/server-query-plugin/query-graphql-plugin/src/main/java/org/apache/skywalking/oap/query/graphql/GraphQLQueryHandler.java index 0eb46f4895..8ba0d730dc 100644 --- a/oap-server/server-query-plugin/query-graphql-plugin/src/main/java/org/apache/skywalking/oap/query/graphql/GraphQLQueryHandler.java +++ b/oap-server/server-query-plugin/query-graphql-plugin/src/main/java/org/apache/skywalking/oap/query/graphql/GraphQLQueryHandler.java @@ -18,24 +18,48 @@ package org.apache.skywalking.oap.query.graphql; +import org.apache.skywalking.oap.server.library.module.ModuleManager; +import org.apache.skywalking.oap.server.telemetry.TelemetryModule; +import org.apache.skywalking.oap.server.telemetry.api.HistogramMetrics; +import org.apache.skywalking.oap.server.telemetry.api.MetricsCreator; +import org.apache.skywalking.oap.server.telemetry.api.MetricsTag; + import com.linecorp.armeria.common.HttpRequest; import com.linecorp.armeria.common.HttpResponse; import com.linecorp.armeria.server.ServiceRequestContext; import com.linecorp.armeria.server.annotation.Blocking; import com.linecorp.armeria.server.annotation.Post; import com.linecorp.armeria.server.graphql.GraphqlService; + import graphql.analysis.MaxQueryComplexityInstrumentation; import graphql.schema.GraphQLSchema; +import lombok.Getter; import lombok.extern.slf4j.Slf4j; @Slf4j public class GraphQLQueryHandler { +private final ModuleManager moduleManager; private final GraphqlService graphqlService; +@Getter(lazy = true) +private final HistogramMetrics queryHistogram = +moduleManager.find(TelemetryModule.NAME) + .provider() + .getService(MetricsCreator.class) + .createHistogramMetric( +"graphql_query_latency", +"The processing latency of graphql query", +MetricsTag.EMPTY_KEY, +MetricsTag.EMPTY_VALUE); + public GraphQLQueryHandler( +final ModuleManager moduleManager, final GraphQLQueryConfig config, final GraphQLSchema schema) { final int allowedComplexity = config.getMaxQueryComplexity(); + +this.moduleManager = moduleManager; + graphqlService = GraphqlService .builder() @@ -55,6 +79,8 @@ public class GraphQLQueryHandler { public HttpResponse graphql( final ServiceRequestContext ctx, final HttpRequest req) throws Exception { -return graphqlService.serve(ctx, req); +try (final var ignored = getQueryHistogram().createTimer()) { +return graphqlService.serve(ctx, req); +} } } diff --git a/oap-server/server-query-plugin/query-graphql-plugin/src/main/java/org/apache/skywalking/oap/query/graphql/GraphQLQueryProvider.java b/oap-server/server-query-plugin/query-graphql-plugin/src/main/java/org/apache/skywalking/oap/query/graphql/GraphQLQueryProvider.java index eac7b99798..d99dabb2cc 100644 --- a/oap-server/server-query-plugin/query-graphql-plugin/src/main/java/org/apache/skywalking/oap/query/graphql/GraphQLQueryProvider.java +++ b/oap-server/server-query-plugin/query-graphql-plugin/src/main/java/org/apache/skywalking/oap/query/graphql/GraphQLQueryProvider.java @@ -145,7 +145,7 @@ public class GraphQLQueryProvider extends ModuleProvider { .resolvers(new ContinuousProfilingQuery(getManager()), new ContinuousProfilin
(skywalking) branch master updated: Fix OTLP metrics incorrectly processed when the datapoint flag is `FLAG_NO_RECORDED_VALUE`. (#12680)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/skywalking.git The following commit(s) were added to refs/heads/master by this push: new 1679fa79e1 Fix OTLP metrics incorrectly processed when the datapoint flag is `FLAG_NO_RECORDED_VALUE`. (#12680) 1679fa79e1 is described below commit 1679fa79e129dda37d1a8fa2591304aed9794655 Author: Wan Kai AuthorDate: Tue Oct 8 16:05:22 2024 +0800 Fix OTLP metrics incorrectly processed when the datapoint flag is `FLAG_NO_RECORDED_VALUE`. (#12680) --- docs/en/changes/changes.md | 2 ++ .../otlp/OpenTelemetryMetricRequestProcessor.java | 22 +++--- 2 files changed, 17 insertions(+), 7 deletions(-) diff --git a/docs/en/changes/changes.md b/docs/en/changes/changes.md index f41cf39e1e..553650d4e3 100644 --- a/docs/en/changes/changes.md +++ b/docs/en/changes/changes.md @@ -2,6 +2,8 @@ OAP Server +Fix OTLP metrics incorrectly processed when the datapoint flag is `FLAG_NO_RECORDED_VALUE`. + UI diff --git a/oap-server/server-receiver-plugin/otel-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/otel/otlp/OpenTelemetryMetricRequestProcessor.java b/oap-server/server-receiver-plugin/otel-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/otel/otlp/OpenTelemetryMetricRequestProcessor.java index db7008ceb3..092bf3f57c 100644 --- a/oap-server/server-receiver-plugin/otel-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/otel/otlp/OpenTelemetryMetricRequestProcessor.java +++ b/oap-server/server-receiver-plugin/otel-receiver-plugin/src/main/java/org/apache/skywalking/oap/server/receiver/otel/otlp/OpenTelemetryMetricRequestProcessor.java @@ -22,6 +22,7 @@ import com.google.common.collect.ImmutableMap; import io.opentelemetry.proto.collector.metrics.v1.ExportMetricsServiceRequest; import io.opentelemetry.proto.common.v1.AnyValue; import io.opentelemetry.proto.common.v1.KeyValue; +import io.opentelemetry.proto.metrics.v1.DataPointFlags; import io.opentelemetry.proto.metrics.v1.Sum; import io.opentelemetry.proto.metrics.v1.SummaryDataPoint; import io.vavr.Function1; @@ -237,7 +238,8 @@ public class OpenTelemetryMetricRequestProcessor implements Service { final Map nodeLabels, final io.opentelemetry.proto.metrics.v1.Metric metric) { if (metric.hasGauge()) { -return metric.getGauge().getDataPointsList().stream() +return metric.getGauge().getDataPointsList().stream().filter(point -> point.getFlags() + != DataPointFlags.FLAG_NO_RECORDED_VALUE_VALUE) .map(point -> new Gauge( metric.getName(), mergeLabels( @@ -257,7 +259,8 @@ public class OpenTelemetryMetricRequestProcessor implements Service { } if (sum .getAggregationTemporality() == AGGREGATION_TEMPORALITY_DELTA) { -return sum.getDataPointsList().stream() +return sum.getDataPointsList().stream().filter(point -> point.getFlags() + != DataPointFlags.FLAG_NO_RECORDED_VALUE_VALUE) .map(point -> new Gauge( metric.getName(), mergeLabels( @@ -270,7 +273,8 @@ public class OpenTelemetryMetricRequestProcessor implements Service { )); } if (sum.getIsMonotonic()) { -return sum.getDataPointsList().stream() +return sum.getDataPointsList().stream().filter(point -> point.getFlags() + != DataPointFlags.FLAG_NO_RECORDED_VALUE_VALUE) .map(point -> new Counter( metric.getName(), mergeLabels( @@ -282,7 +286,8 @@ public class OpenTelemetryMetricRequestProcessor implements Service { point.getTimeUnixNano() / 100 )); } else { -return sum.getDataPointsList().stream() +return sum.getDataPointsList().stream().filter(point -> point.getFlags() + != DataPointFlags.FLAG_NO_RECORDED_VALUE_VALUE) .map(point -> new Gauge( metric.getName(), mergeLabels( @@ -296,7 +301,8 @@ public class OpenTelemetryMetricRequestProcessor implements Service { } } if (metric.hasHistogram()) { -return metric.getHistogram().getDataPointsList().stream() +return metric.getHistogram().getDataPointsList().stream().filter(
(skywalking) branch master updated: docs: add go-agent to log-agent-native doc (#12676)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/skywalking.git The following commit(s) were added to refs/heads/master by this push: new 178146d225 docs: add go-agent to log-agent-native doc (#12676) 178146d225 is described below commit 178146d2259701f25ae83274bc69a3b3c351abae Author: Shyunn AuthorDate: Tue Oct 8 12:58:11 2024 +0800 docs: add go-agent to log-agent-native doc (#12676) --- docs/en/setup/backend/log-agent-native.md | 9 + 1 file changed, 9 insertions(+) diff --git a/docs/en/setup/backend/log-agent-native.md b/docs/en/setup/backend/log-agent-native.md index 87a8c12229..a3c4120759 100644 --- a/docs/en/setup/backend/log-agent-native.md +++ b/docs/en/setup/backend/log-agent-native.md @@ -38,3 +38,12 @@ module](https://docs.python.org/3/library/logging.html) with functionalities ali To explore how to enable the reporting features for your use cases, please refer to the [Log Reporter Doc](https://skywalking.apache.org/docs/skywalking-python/next/en/setup/advanced/logreporter/) for a detailed guide. + +## Golang agent log reporter + +[SkyWalking Golang Agent](https://github.com/apache/skywalking-go) implements a log reporter for the logging module +with functionality is similar to that of the Java toolkits. + +To explore how to enable the reporting features for your use cases, please refer to the +[Log Reporter Doc](https://skywalking.apache.org/docs/skywalking-go/next/en/advanced-features/manual-apis/toolkit-log/) for a +detailed guide.
(skywalking-banyandb) branch measure-merge deleted (was 1ce317ea)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a change to branch measure-merge in repository https://gitbox.apache.org/repos/asf/skywalking-banyandb.git was 1ce317ea Fix measure merging issue The revisions that were on this branch are still contained in other references; therefore, this change does not discard any commits from the repository.
(skywalking-banyandb) branch main updated: Fix measure merging issue (#549)
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-banyandb.git The following commit(s) were added to refs/heads/main by this push: new c92ee3ab Fix measure merging issue (#549) c92ee3ab is described below commit c92ee3ab53f0f23daf2b1042b5c50d687629c323 Author: Gao Hongtao AuthorDate: Tue Oct 8 07:32:53 2024 +0800 Fix measure merging issue (#549) --- CHANGES.md | 1 + banyand/measure/block.go| 4 ++-- banyand/measure/merger.go | 3 ++- banyand/measure/merger_test.go | 15 --- banyand/measure/tstable_test.go | 32 5 files changed, 49 insertions(+), 6 deletions(-) diff --git a/CHANGES.md b/CHANGES.md index bb78d51d..d8b75db2 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -48,6 +48,7 @@ Release Notes. - Fix the bug that the etcd client doesn't reconnect when facing the context timeout in the startup phase. - Fix the bug that the long running query doesn't stop when the context is canceled. - Fix the bug that merge block with different tags or fields. +- Fix the bug that the pending measure block is not released when a full block is merged. ### Documentation diff --git a/banyand/measure/block.go b/banyand/measure/block.go index 282c0b22..ce01b90e 100644 --- a/banyand/measure/block.go +++ b/banyand/measure/block.go @@ -776,7 +776,7 @@ func (bi *blockPointer) updateMetadata() { } func (bi *blockPointer) copyFrom(src *blockPointer) { - bi.idx = 0 + bi.reset() bi.bm.copyFrom(&src.bm) bi.appendAll(src) } @@ -1006,7 +1006,7 @@ func (bi *blockPointer) isFull() bool { func (bi *blockPointer) reset() { bi.idx = 0 bi.block.reset() - bi.bm = blockMetadata{} + bi.bm.reset() } func generateBlockPointer() *blockPointer { diff --git a/banyand/measure/merger.go b/banyand/measure/merger.go index a46cbf03..9f4e5ef8 100644 --- a/banyand/measure/merger.go +++ b/banyand/measure/merger.go @@ -292,7 +292,6 @@ func mergeBlocks(closeCh <-chan struct{}, bw *blockWriter, br *blockReader) (*pa (pendingBlock.isFull() && pendingBlock.bm.timestamps.max <= b.bm.timestamps.min) { bw.mustWriteBlock(pendingBlock.bm.seriesID, &pendingBlock.block) releaseDecoder() - pendingBlock.reset() br.loadBlockData(getDecoder()) pendingBlock.copyFrom(b) continue @@ -316,6 +315,8 @@ func mergeBlocks(closeCh <-chan struct{}, bw *blockWriter, br *blockReader) (*pa if len(tmpBlock.timestamps) <= maxBlockLength { bw.mustWriteBlock(tmpBlock.bm.seriesID, &tmpBlock.block) + pendingBlock.reset() + pendingBlockIsEmpty = true releaseDecoder() continue } diff --git a/banyand/measure/merger_test.go b/banyand/measure/merger_test.go index b8a8ff50..037da7db 100644 --- a/banyand/measure/merger_test.go +++ b/banyand/measure/merger_test.go @@ -291,14 +291,23 @@ func Test_mergeParts(t *testing.T) { {seriesID: 1, count: 1265, uncompressedSizeBytes: 2130260}, {seriesID: 1, count: 1265, uncompressedSizeBytes: 2130260}, {seriesID: 1, count: 2470, uncompressedSizeBytes: 4159480}, - {seriesID: 1, count: 2470, uncompressedSizeBytes: 4159480}, - {seriesID: 1, count: 2470, uncompressedSizeBytes: 4159480}, - {seriesID: 1, count: 2410, uncompressedSizeBytes: 4058440}, + {seriesID: 1, count: 1265, uncompressedSizeBytes: 2130260}, + {seriesID: 1, count: 1265, uncompressedSizeBytes: 2130260}, {seriesID: 1, count: 1205, uncompressedSizeBytes: 2029220}, {seriesID: 2, count: 2, uncompressedSizeBytes: 126}, {seriesID: 3, count: 2, uncompressedSizeBytes: 64}, }, }, + { + name:"Test with multiple parts with a large small quantity of different ts", + dpsList: []*dataPoints{generateHugeSmallDps(1, 5000, 1), generateHugeSmallDps(5001, 1, 2)}, + want: []blockMetadata{ + {seriesID: 1, count: 8192, uncompressedSizeBytes: 262144}, + {seriesID: 1, count: 1808, uncompressedSizeBytes: 57856}, + {seriesID: 2, count: 2, uncompressedSizeBytes: 32}, +
(skywalking-booster-ui) branch main updated: feat: add support for case-insensitive search in the dashboard list (#418)
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-booster-ui.git The following commit(s) were added to refs/heads/main by this push: new a92365ef feat: add support for case-insensitive search in the dashboard list (#418) a92365ef is described below commit a92365efcffb449f9b54051f26791e2068f2aa5d Author: Zixin Zhou AuthorDate: Mon Oct 7 23:14:22 2024 +0800 feat: add support for case-insensitive search in the dashboard list (#418) --- src/views/dashboard/List.vue | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/views/dashboard/List.vue b/src/views/dashboard/List.vue index c05afc29..69d0e92d 100644 --- a/src/views/dashboard/List.vue +++ b/src/views/dashboard/List.vue @@ -612,7 +612,7 @@ limitations under the License. --> } function searchDashboards(pageIndex: number) { const list = JSON.parse(sessionStorage.getItem("dashboards") || "[]"); -const arr = list.filter((d: { name: string }) => d.name.includes(searchText.value)); +const arr = list.filter((d: { name: string }) => d.name.toLowerCase().includes(searchText.value.toLowerCase())); total.value = arr.length; dashboards.value = arr.filter(
(skywalking-website) branch release-10.1 deleted (was 6c0b7250cf0)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a change to branch release-10.1 in repository https://gitbox.apache.org/repos/asf/skywalking-website.git was 6c0b7250cf0 Fix nit. The revisions that were on this branch are still contained in other references; therefore, this change does not discard any commits from the repository.
(skywalking-website) branch master updated: Release SkyWalking 10.1 (#740)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/skywalking-website.git The following commit(s) were added to refs/heads/master by this push: new c049af54a05 Release SkyWalking 10.1 (#740) c049af54a05 is described below commit c049af54a052639cbd5cdc8ba914e3205c6092b5 Author: 吴晟 Wu Sheng AuthorDate: Sun Oct 6 23:07:40 2024 +0800 Release SkyWalking 10.1 (#740) --- .../release-apache-skywalking-apm-10.1.0/index.md | 125 + data/docs.yml | 5 +- data/releases.yml | 30 - 3 files changed, 153 insertions(+), 7 deletions(-) diff --git a/content/events/release-apache-skywalking-apm-10.1.0/index.md b/content/events/release-apache-skywalking-apm-10.1.0/index.md new file mode 100644 index 000..ae9afac8221 --- /dev/null +++ b/content/events/release-apache-skywalking-apm-10.1.0/index.md @@ -0,0 +1,125 @@ +--- +title: Release Apache SkyWalking APM 10.1.0 +date: 2024-09-29 +author: SkyWalking Team +description: "Release Apache SkyWalking 10.1.0 - A Version of PERFORMANCE" +endTime: 2024-10-30T00:00:00Z +--- + +SkyWalking 10.1.0 is released. Go to [downloads](/downloads) page to find release tars. + + + A Version of PERFORMANCE +* **Huge UI Performance Improvement. Metrics widgets queries are bundled by leveraging the GraphQL capabilities.** +* **Parallel Queries Support in GraphQL engine. Improve query performance.** +* **Significantly improve the performance of OTEL metrics handler. Reduce CPU and GC costs in OTEL metrics processes.** +* **With adopting BanyanDB 0.7, native database performance and stability are improved.** + + Project + +* E2E: bump up the version of the opentelemetry-collector to 0.102.1. +* Push snapshot data-generator docker image to ghcr.io. +* Bump up skywalking-infra-e2e to work around GHA removing `docker-compose` v1. +* Bump up CodeQL GitHub Actions. +* Fix wrong phase of delombok plugin to reduce build warnings. +* Use ci-friendly revision to set the project version. + + OAP Server + +* Fix wrong indices in the eBPF Profiling related models. +* Support exclude the specific namespaces traffic in the eBPF Access Log receiver. +* Add Golang as a supported language for Elasticsearch. +* Remove unnecessary BanyanDB flushing logs(info). +* Increase `SW_CORE_GRPC_MAX_MESSAGE_SIZE` to 50MB. +* Support to query relation metrics through PromQL. +* Support trace MQE query for debugging. +* Add Component ID(158) for the Solon framework. +* Fix metrics tag in HTTP handler of browser receiver plugin. +* Increase `alarm_record#message` column length to 2000 from 200. +* Remove `alarm_record#message` column indexing. +* Add Python as a supported language for Pulsar. +* Make more proper histogram buckets for the `persistence_timer_bulk_prepare_latency`, + `persistence_timer_bulk_execute_latency` and `persistence_timer_bulk_all_latency` metrics in PersistenceTimer. +* [Break Change] Update Nacos version to 2.3.2. Nacos 1.x server can't serve as cluster coordinator and configuration server. +* Support tracing trace query(SkyWalking and Zipkin) for debugging. +* Fix BanyanDB metrics query: used the wrong `Downsampling` type to find the schema. +* Support fetch cilium flow to monitoring network traffic between cilium services. +* Support `labelCount` function in the OAL engine. +* Support BanyanDB internal measure query execution tracing. +* BanyanDB client config: rise the default `maxBulkSize` to 1, add `flushTimeout` and set default to 10s. +* Polish BanyanDB group and schema creation logic to fix the schema creation failure issue in distributed race conditions. +* Support tracing topology query for debugging. +* Fix expression of graph `Current QPS` in MySQL dashboard. +* Support tracing logs query for debugging. +* BanyanDB: fix Tag autocomplete data storage and query. +* Support aggregation operators in PromQL query. +* Update the kubernetes HTTP latency related metrics source unit from `ns` to `ms`. +* Support BanyanDB internal stream query execution tracing. +* Fix Elasticsearch, MySQL, RabbitMQ dashboards typos and missing expressions. +* BanyanDB: Zipkin Module set service as Entity for improving the query performance. +* MQE: check the metrics value before do binary operation to improve robustness. +* Replace workaround with Armeria native supported context path. +* Add an http endpoint wrapper for health check. +* Bump up Armeria and transitive dependencies. +* BanyanDB: if the model column is already a `@BanyanDB.TimestampColumn`, set `@BanyanDB.NoIndexing` on it to reduce indexes. +* BanyanDB: stream sort-by `time` query, use internal time-series rather than `index` to improve the query performance. +* Bump up graphql-java to 21.5. +* Add Unknown Node when receive Kubernetes peer address is not aware in current
(skywalking-banyandb) branch main updated: Check the context in write and query (#547)
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-banyandb.git The following commit(s) were added to refs/heads/main by this push: new 35306d2c Check the context in write and query (#547) 35306d2c is described below commit 35306d2ce76823555a8e840c642aacf68af3b628 Author: Gao Hongtao AuthorDate: Tue Oct 1 11:23:44 2024 +0800 Check the context in write and query (#547) Signed-off-by: Gao Hongtao --- CHANGES.md | 1 + banyand/dquery/measure.go | 3 +- banyand/dquery/stream.go | 3 +- banyand/dquery/topn.go | 5 +-- banyand/internal/storage/index.go | 2 +- banyand/liaison/grpc/measure.go| 14 - banyand/liaison/grpc/stream.go | 7 ++--- banyand/measure/query.go | 19 ++-- banyand/measure/query_test.go | 2 ++ banyand/measure/topn.go| 2 +- banyand/measure/write.go | 9 +- banyand/metadata/schema/etcd.go| 4 ++- banyand/query/processor.go | 10 +++--- banyand/query/processor_topn.go| 7 ++--- banyand/queue/local.go | 19 banyand/queue/pub/pub.go | 25 +++ banyand/queue/pub/pub_test.go | 10 -- banyand/queue/sub/sub.go | 12 +--- banyand/stream/index.go| 15 ++--- banyand/stream/query.go| 36 ++ banyand/stream/write.go| 9 +- docs/menu.yml | 2 ++ pkg/bus/bus.go | 11 --- pkg/bus/bus_test.go| 5 +-- pkg/grpchelper/client.go | 6 ++-- pkg/index/index.go | 6 ++-- pkg/index/inverted/inverted.go | 14 ++--- pkg/index/inverted/inverted_series.go | 4 +-- pkg/index/inverted/sort.go | 6 ++-- pkg/index/inverted/sort_test.go| 3 +- pkg/index/testcases/duration.go| 3 +- pkg/logger/setting.go | 7 + pkg/meter/native/collection.go | 3 +- .../measure/measure_plan_indexscan_local.go| 7 - pkg/query/model/model.go | 1 + 35 files changed, 195 insertions(+), 97 deletions(-) diff --git a/CHANGES.md b/CHANGES.md index bc5f17de..652d735f 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -46,6 +46,7 @@ Release Notes. - Fix panic when removing a expired segment. - Fix panic when reading a disorder block of measure. This block's versions are not sorted in descending order. - Fix the bug that the etcd client doesn't reconnect when facing the context timeout in the startup phase. +- Fix the bug that the long running query doesn't stop when the context is canceled. ### Documentation diff --git a/banyand/dquery/measure.go b/banyand/dquery/measure.go index 04be967a..8a9be64e 100644 --- a/banyand/dquery/measure.go +++ b/banyand/dquery/measure.go @@ -40,7 +40,7 @@ type measureQueryProcessor struct { *queryService } -func (p *measureQueryProcessor) Rev(message bus.Message) (resp bus.Message) { +func (p *measureQueryProcessor) Rev(ctx context.Context, message bus.Message) (resp bus.Message) { queryCriteria, ok := message.Data().(*measurev1.QueryRequest) n := time.Now() now := n.UnixNano() @@ -82,7 +82,6 @@ func (p *measureQueryProcessor) Rev(message bus.Message) (resp bus.Message) { if e := ml.Debug(); e.Enabled() { e.Str("plan", plan.String()).Msg("query plan") } - ctx := context.Background() var tracer *query.Tracer var span *query.Span if queryCriteria.Trace { diff --git a/banyand/dquery/stream.go b/banyand/dquery/stream.go index 751a8331..397a77d4 100644 --- a/banyand/dquery/stream.go +++ b/banyand/dquery/stream.go @@ -39,7 +39,7 @@ type streamQueryProcessor struct { *queryService } -func (p *streamQueryProcessor) Rev(message bus.Message) (resp bus.Message) { +func (p *streamQueryProcessor) Rev(ctx context.Context, message bus.Message) (resp bus.Message) { n := time.Now() now := n.UnixNano() queryCriteria, ok := message.Data().(*streamv1.QueryRequest) @@ -78,7 +78,6 @@ func (p *streamQueryProcessor) Rev(message bus.Message) (resp bus.Message) { if p.log.Debug().Enabled() { p.log.Debug().Str("plan", plan.Stri
(skywalking-banyandb) branch context deleted (was 58a98eeb)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a change to branch context in repository https://gitbox.apache.org/repos/asf/skywalking-banyandb.git was 58a98eeb Check the context in write and query The revisions that were on this branch are still contained in other references; therefore, this change does not discard any commits from the repository.
(skywalking) branch dev-10.2 updated (afd968ebc3 -> 62a7d6faf7)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a change to branch dev-10.2 in repository https://gitbox.apache.org/repos/asf/skywalking.git from afd968ebc3 Released 10.1.0 and start 10.2.0 iteration. add 62a7d6faf7 Update doc. No new revisions were added by this update. Summary of changes: docs/en/guides/How-to-release.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-)
(skywalking) branch dev-10.2 created (now afd968ebc3)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a change to branch dev-10.2 in repository https://gitbox.apache.org/repos/asf/skywalking.git at afd968ebc3 Released 10.1.0 and start 10.2.0 iteration. No new revisions were added by this update.
(skywalking) branch dev-10.2 deleted (was b735ba2b15)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a change to branch dev-10.2 in repository https://gitbox.apache.org/repos/asf/skywalking.git was b735ba2b15 Add ignore to fix deadlink. The revisions that were on this branch are still contained in other references; therefore, this change does not discard any commits from the repository.
(skywalking) branch master updated (da768dcbc2 -> e78dd7c2d8)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a change to branch master in repository https://gitbox.apache.org/repos/asf/skywalking.git from da768dcbc2 Sync UI (#12667) add e78dd7c2d8 Released 10.1.0 and start 10.2.0 iteration. (#12669) No new revisions were added by this update. Summary of changes: .dlc.json | 3 + docs/en/changes/{changes.md => changes-10.1.0.md} | 7 +- docs/en/changes/changes.md| 109 +- docs/en/guides/How-to-release.md | 35 --- docs/menu.yml | 2 + pom.xml | 2 +- 6 files changed, 36 insertions(+), 122 deletions(-) copy docs/en/changes/{changes.md => changes-10.1.0.md} (98%)
(skywalking-data-collect-protocol) tag v10.1.0 created (now 5be4278)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a change to tag v10.1.0 in repository https://gitbox.apache.org/repos/asf/skywalking-data-collect-protocol.git at 5be4278 (commit) No new revisions were added by this update.
(skywalking-query-protocol) tag v10.1.0 created (now 0fa72b1)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a change to tag v10.1.0 in repository https://gitbox.apache.org/repos/asf/skywalking-query-protocol.git at 0fa72b1 (commit) No new revisions were added by this update.
(skywalking) branch dev-10.2 updated (62a7d6faf7 -> b735ba2b15)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a change to branch dev-10.2 in repository https://gitbox.apache.org/repos/asf/skywalking.git from 62a7d6faf7 Update doc. add b735ba2b15 Add ignore to fix deadlink. No new revisions were added by this update. Summary of changes: .dlc.json | 3 +++ 1 file changed, 3 insertions(+)
(skywalking-website) branch release-10.1 updated (db43769b612 -> 6c0b7250cf0)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a change to branch release-10.1 in repository https://gitbox.apache.org/repos/asf/skywalking-website.git from db43769b612 Fix format. add 6c0b7250cf0 Fix nit. No new revisions were added by this update. Summary of changes: content/events/release-apache-skywalking-apm-10.1.0/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
(skywalking-website) branch release-10.1 updated (e531f565059 -> db43769b612)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a change to branch release-10.1 in repository https://gitbox.apache.org/repos/asf/skywalking-website.git from e531f565059 Release 10.1 add db43769b612 Fix format. No new revisions were added by this update. Summary of changes: data/releases.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
(skywalking-website) branch release-10.1 created (now e531f565059)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a change to branch release-10.1 in repository https://gitbox.apache.org/repos/asf/skywalking-website.git at e531f565059 Release 10.1 No new revisions were added by this update.
(skywalking-showcase) branch main updated: Enable java-agent meter analyzer file. (#188)
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-showcase.git The following commit(s) were added to refs/heads/main by this push: new 3419c3c Enable java-agent meter analyzer file. (#188) 3419c3c is described below commit 3419c3cd56ba6ac62ff1b75abac6f1ea7562d9f7 Author: weixiang1862 <652048...@qq.com> AuthorDate: Mon Sep 30 11:52:41 2024 +0800 Enable java-agent meter analyzer file. (#188) --- deploy/platform/docker/docker-compose.cluster.yaml | 2 +- deploy/platform/docker/docker-compose.single-node.yaml | 2 +- deploy/platform/kubernetes/values.yaml | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/deploy/platform/docker/docker-compose.cluster.yaml b/deploy/platform/docker/docker-compose.cluster.yaml index 4791ae8..f4d5fb0 100644 --- a/deploy/platform/docker/docker-compose.cluster.yaml +++ b/deploy/platform/docker/docker-compose.cluster.yaml @@ -59,7 +59,7 @@ services: SW_TELEMETRY: prometheus # @feature: so11y; expose the metrics of self o11y through prometheus SW_PROMETHEUS_FETCHER: default # @feature: so11y; fetch the metrics of self o11y through prometheus JAVA_OPTS: "-Dmode=no-init -Xms2048m -Xmx2048m" # @feature: cluster; start the cluster nodes in no-init mode - SW_METER_ANALYZER_ACTIVE_FILES: datasource,threadpool,satellite,spring-sleuth,go-runtime + SW_METER_ANALYZER_ACTIVE_FILES: datasource,threadpool,satellite,spring-sleuth,go-runtime,java-agent healthcheck: test: [ "CMD-SHELL", "/skywalking/bin/swctl ch" ] interval: 30s diff --git a/deploy/platform/docker/docker-compose.single-node.yaml b/deploy/platform/docker/docker-compose.single-node.yaml index 7ab09a7..64f5bc9 100644 --- a/deploy/platform/docker/docker-compose.single-node.yaml +++ b/deploy/platform/docker/docker-compose.single-node.yaml @@ -42,7 +42,7 @@ services: SW_TELEMETRY: prometheus # @feature: so11y; expose the metrics of self o11y through prometheus SW_PROMETHEUS_FETCHER: default # @feature: so11y; fetch the metrics of self o11y through prometheus JAVA_OPTS: "-Xms2048m -Xmx2048m" - SW_METER_ANALYZER_ACTIVE_FILES: datasource,threadpool,satellite,spring-sleuth,go-runtime + SW_METER_ANALYZER_ACTIVE_FILES: datasource,threadpool,satellite,spring-sleuth,go-runtime,java-agent healthcheck: test: ["CMD", "bash", "-c", "cat < /dev/null > /dev/tcp/127.0.0.1/11800"] interval: 30s diff --git a/deploy/platform/kubernetes/values.yaml b/deploy/platform/kubernetes/values.yaml index 8fe4923..9432684 100644 --- a/deploy/platform/kubernetes/values.yaml +++ b/deploy/platform/kubernetes/values.yaml @@ -49,7 +49,7 @@ skywalking: SW_ENABLE_UPDATE_UI_TEMPLATE: "false" SW_SLOW_DB_THRESHOLD: default:0,mongodb:100 SW_ENABLE_ON_DEMAND_POD_LOG: "true" - SW_METER_ANALYZER_ACTIVE_FILES: datasource,threadpool,satellite,network-profiling,go-runtime,python-runtime,spring-micrometer,continuous-profiling + SW_METER_ANALYZER_ACTIVE_FILES: datasource,threadpool,satellite,network-profiling,go-runtime,python-runtime,spring-micrometer,continuous-profiling,java-agent SW_STORAGE_ES_RESPONSE_TIMEOUT: "5" SW_STORAGE_ES_INDEX_SHARDS_NUMBER: "6" SW_STORAGE_ES_SUPER_DATASET_INDEX_SHARDS_FACTOR: "2"
(skywalking-booster-ui) tag v10.1.0 created (now d65c18bd)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a change to tag v10.1.0 in repository https://gitbox.apache.org/repos/asf/skywalking-booster-ui.git at d65c18bd (commit) No new revisions were added by this update.
(skywalking) 01/01: Prepare for release 10.1.0
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a commit to tag v10.1.0 in repository https://gitbox.apache.org/repos/asf/skywalking.git commit d28dfea86b8c8811f055c0c4eefc0f6bfae07682 Author: Wu Sheng <“wu.sh...@foxmail.com”> AuthorDate: Sun Sep 29 12:12:08 2024 + Prepare for release 10.1.0 --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index c9c60637d8..f2275c571b 100755 --- a/pom.xml +++ b/pom.xml @@ -146,7 +146,7 @@ -10.1.0-SNAPSHOT +10.1.0 11
(skywalking) tag v10.1.0 created (now d28dfea86b)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a change to tag v10.1.0 in repository https://gitbox.apache.org/repos/asf/skywalking.git at d28dfea86b (commit) This tag includes the following new commits: new d28dfea86b Prepare for release 10.1.0 The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference.
(skywalking) branch master updated (22c9519ac2 -> 21e0149474)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a change to branch master in repository https://gitbox.apache.org/repos/asf/skywalking.git from 22c9519ac2 Introduce BanyanDB 0.7 client (#12663) add 21e0149474 Support query Alarm message Tag for auto-complete. (#12665) No new revisions were added by this update. Summary of changes: docs/en/api/query-protocol.md | 4 docs/en/changes/changes.md | 1 + .../core/alarm/AlarmStandardPersistence.java | 23 ++ .../core/analysis/manual/searchtag/TagType.java| 3 ++- .../oap/query/graphql/resolver/AlarmQuery.java | 20 +++ .../src/main/resources/query-protocol | 2 +- 6 files changed, 51 insertions(+), 2 deletions(-)
(skywalking-query-protocol) branch alarm-auto-complete deleted (was 15342d1)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a change to branch alarm-auto-complete in repository https://gitbox.apache.org/repos/asf/skywalking-query-protocol.git was 15342d1 Support alarm msg tag auto-complete query. The revisions that were on this branch are still contained in other references; therefore, this change does not discard any commits from the repository.
(skywalking-query-protocol) branch master updated: Support alarm msg tag auto-complete query. (#138)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/skywalking-query-protocol.git The following commit(s) were added to refs/heads/master by this push: new 0fa72b1 Support alarm msg tag auto-complete query. (#138) 0fa72b1 is described below commit 0fa72b147fb4d0569b7182d6753cc225a2145c82 Author: Wan Kai AuthorDate: Sun Sep 29 09:11:55 2024 +0800 Support alarm msg tag auto-complete query. (#138) --- alarm.graphqls | 4 1 file changed, 4 insertions(+) diff --git a/alarm.graphqls b/alarm.graphqls index 747ea9c..bcb97a4 100644 --- a/alarm.graphqls +++ b/alarm.graphqls @@ -40,4 +40,8 @@ input AlarmTag { extend type Query { getAlarmTrend(duration: Duration!): AlarmTrend! getAlarm(duration: Duration!, scope: Scope, keyword: String, paging: Pagination!, tags: [AlarmTag]): Alarms +# Read the list of searchable keys +queryAlarmTagAutocompleteKeys(duration: Duration!):[String!] +# Search the available value options of the given key. +queryAlarmTagAutocompleteValues(tagKey: String! , duration: Duration!):[String!] }
(skywalking-showcase) branch main updated: Bump up Java agent.
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-showcase.git The following commit(s) were added to refs/heads/main by this push: new edb24d5 Bump up Java agent. edb24d5 is described below commit edb24d580183f861db57285d310a3b8601b35035 Author: 吴晟 Wu Sheng AuthorDate: Sun Sep 29 08:22:37 2024 +0800 Bump up Java agent. --- Makefile.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Makefile.in b/Makefile.in index 7c3159d..58bf210 100644 --- a/Makefile.in +++ b/Makefile.in @@ -40,7 +40,7 @@ SW_UI_IMAGE_TAG ?= 29c1b8b4573cd35470088f090c462e4dfe260428 SW_CLI_IMAGE ?= ghcr.io/apache/skywalking-cli/skywalking-cli:0883266bfaa36612927b69e35781b64ea181758d SW_EVENT_EXPORTER_IMAGE ?= ghcr.io/apache/skywalking-kubernetes-event-exporter/skywalking-kubernetes-event-exporter:8a012a3f968cb139f817189afb9b3748841bba22 -SW_AGENT_JAVA_IMAGE ?= ghcr.io/apache/skywalking-java/skywalking-java:4f2f81e1819755d0d18d1453297142f0a7b0416a-java8 +SW_AGENT_JAVA_IMAGE ?= ghcr.io/apache/skywalking-java/skywalking-java:615a1b11bb49106ae9b8dc49da53caef2ec038ae-java8 SW_AGENT_GO_IMAGE ?= ghcr.io/apache/skywalking-go/skywalking-go:637845b76c9949a495a14ecf0e7e2f0e385701c8-go1.18 SW_AGENT_NODEJS_BACKEND_VERSION ?= 59ef1aed6a404e2e8afffbb4b81ea849ae4f3026
(skywalking) branch wu-sheng-patch-1 deleted (was 7bcd27629a)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a change to branch wu-sheng-patch-1 in repository https://gitbox.apache.org/repos/asf/skywalking.git was 7bcd27629a Introduce BanyanDB 0.7 client The revisions that were on this branch are still contained in other references; therefore, this change does not discard any commits from the repository.
(skywalking) branch master updated: Introduce BanyanDB 0.7 client (#12663)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/skywalking.git The following commit(s) were added to refs/heads/master by this push: new 22c9519ac2 Introduce BanyanDB 0.7 client (#12663) 22c9519ac2 is described below commit 22c9519ac2079d4414075c738ad229075d0be7ab Author: 吴晟 Wu Sheng AuthorDate: Sun Sep 29 00:27:41 2024 +0800 Introduce BanyanDB 0.7 client (#12663) --- oap-server-bom/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/oap-server-bom/pom.xml b/oap-server-bom/pom.xml index d2ca7f1a96..c082dbc4b0 100644 --- a/oap-server-bom/pom.xml +++ b/oap-server-bom/pom.xml @@ -73,7 +73,7 @@ 4.4.13 4.1.5 1.21 -0.7.0-rc4 +0.7.0 3.4.0 2.4.6.RELEASE 1.5.3
(skywalking) 01/01: Introduce BanyanDB 0.7 client
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a commit to branch wu-sheng-patch-1 in repository https://gitbox.apache.org/repos/asf/skywalking.git commit 7bcd27629af02d483681bea04cf44834fd12f9b3 Author: 吴晟 Wu Sheng AuthorDate: Sat Sep 28 23:20:43 2024 +0800 Introduce BanyanDB 0.7 client --- oap-server-bom/pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/oap-server-bom/pom.xml b/oap-server-bom/pom.xml index d2ca7f1a96..c082dbc4b0 100644 --- a/oap-server-bom/pom.xml +++ b/oap-server-bom/pom.xml @@ -73,7 +73,7 @@ 4.4.13 4.1.5 1.21 -0.7.0-rc4 +0.7.0 3.4.0 2.4.6.RELEASE 1.5.3
(skywalking) branch wu-sheng-patch-1 created (now 7bcd27629a)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a change to branch wu-sheng-patch-1 in repository https://gitbox.apache.org/repos/asf/skywalking.git at 7bcd27629a Introduce BanyanDB 0.7 client This branch includes the following new commits: new 7bcd27629a Introduce BanyanDB 0.7 client The 1 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "add" were already present in the repository and have only been added to this reference.
(skywalking-banyandb-java-client) branch release-0.7.0 deleted (was 7f90580)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a change to branch release-0.7.0 in repository https://gitbox.apache.org/repos/asf/skywalking-banyandb-java-client.git was 7f90580 Merge branch 'main' of github.com:apache/skywalking-banyandb-java-client into release-0.7.0 The revisions that were on this branch are still contained in other references; therefore, this change does not discard any commits from the repository.
(skywalking-banyandb-java-client) branch main updated: Released 0.7.0 and prepare for the next iteration (#72)
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-banyandb-java-client.git The following commit(s) were added to refs/heads/main by this push: new e3f58db Released 0.7.0 and prepare for the next iteration (#72) e3f58db is described below commit e3f58db2107441ffa333d6949265935bc15ce2bd Author: Wan Kai AuthorDate: Sat Sep 28 22:53:08 2024 +0800 Released 0.7.0 and prepare for the next iteration (#72) * [maven-release-plugin] prepare release v0.7.0 * [maven-release-plugin] prepare for next development iteration --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index 852ad6c..5941ef6 100644 --- a/pom.xml +++ b/pom.xml @@ -22,7 +22,7 @@ org.apache.skywalking banyandb-java-client -0.7.0-SNAPSHOT +0.8.0-SNAPSHOT org.apache
(skywalking-website) branch release-banyandb-java-client0.7 deleted (was d2ec70b8542)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a change to branch release-banyandb-java-client0.7 in repository https://gitbox.apache.org/repos/asf/skywalking-website.git was d2ec70b8542 docs link The revisions that were on this branch are still contained in other references; therefore, this change does not discard any commits from the repository.
(skywalking-website) branch master updated: release BanyanDB Java Client 0.7.0 (#739)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/skywalking-website.git The following commit(s) were added to refs/heads/master by this push: new a3f160ed472 release BanyanDB Java Client 0.7.0 (#739) a3f160ed472 is described below commit a3f160ed472f72826ffc62777c06c3100d9fc191 Author: Wan Kai AuthorDate: Sat Sep 28 21:26:31 2024 +0800 release BanyanDB Java Client 0.7.0 (#739) --- .../index.md | 29 ++ data/docs.yml | 4 +-- data/releases.yml | 16 ++-- 3 files changed, 39 insertions(+), 10 deletions(-) diff --git a/content/events/release-apache-skywalking-banyandb-java-client-0-7-0/index.md b/content/events/release-apache-skywalking-banyandb-java-client-0-7-0/index.md new file mode 100644 index 000..1cff9fad861 --- /dev/null +++ b/content/events/release-apache-skywalking-banyandb-java-client-0-7-0/index.md @@ -0,0 +1,29 @@ +--- +title: Release Apache SkyWalking BanyanDB Java Client 0.7.0 +date: 2024-09-28 +author: SkyWalking Team +description: "Release Apache SkyWalking BanyanDB Java Client 0.7.0" +--- + +SkyWalking BanyanDB 0.7.0 is released. Go to [downloads](/downloads) page to find release tars. + +### Features + +* Bump up the API of BanyanDB Server to support the query trace. +* Add trace to response. +* Add ToString annotation to Tag. +* Enhance the BulkWriteProcessor. +* Provide a new method to order data by timestamp. +* Refactor metadata object to original protocol. +* Complemented the Schema management API. +* Enhance the MetadataCache. +* Add more IT tests. +* Remove analyze DNS name to get/refresh IP for create connection. +* Support new Match Query proto. + +### Bugs + +* Fix MeasureQuery.SumBy to use SUM instead of COUNT +* Add missing FloatFieldValue type in the Measure write operation +* Fix wrong result of the Duration.ofDay +* Remove duplicate orderBy method in measure query. diff --git a/data/docs.yml b/data/docs.yml index 0c614bfb395..0bfe2eb05da 100644 --- a/data/docs.yml +++ b/data/docs.yml @@ -335,8 +335,8 @@ docs: - version: Next link: https://github.com/apache/skywalking-banyandb-java-client/blob/main/README.md -- version: v0.6.0 - link: https://github.com/apache/skywalking-banyandb-java-client/blob/v0.6.0/README.md +- version: v0.7.0 + link: https://github.com/apache/skywalking-banyandb-java-client/blob/v0.7.0/README.md - name: BanyanDB Helm icon: banyan-db description: BanyanDB Helm Chart repository provides ways to install and configure BanyanDB in a Kubernetes cluster. diff --git a/data/releases.yml b/data/releases.yml index 82c77f07d97..331931bfe2a 100644 --- a/data/releases.yml +++ b/data/releases.yml @@ -558,21 +558,21 @@ icon: banyan-db description: The client implementation for SkyWalking BanyanDB in Java source: -- version: v0.6.0 - date: May. 7th, 2024 +- version: v0.7.0 + date: Sep. 28th, 2024 downloadLink: - name: src - link: https://www.apache.org/dyn/closer.cgi/skywalking/banyandb-java-client/0.6.0/apache-skywalking-banyandb-java-client-0.6.0-src.tgz + link: https://www.apache.org/dyn/closer.cgi/skywalking/banyandb-java-client/0.7.0/apache-skywalking-banyandb-java-client-0.7.0-src.tgz - name: asc - link: https://downloads.apache.org/skywalking/banyandb-java-client/0.6.0/apache-skywalking-banyandb-java-client-0.6.0-src.tgz.asc + link: https://downloads.apache.org/skywalking/banyandb-java-client/0.7.0/apache-skywalking-banyandb-java-client-0.7.0-src.tgz.asc - name: sha512 - link: https://downloads.apache.org/skywalking/banyandb-java-client/0.6.0/apache-skywalking-banyandb-java-client-0.6.0-src.tgz.sha512 + link: https://downloads.apache.org/skywalking/banyandb-java-client/0.7.0/apache-skywalking-banyandb-java-client-0.7.0-src.tgz.sha512 distribution: -- version: v0.6.0 - date: May. 7th, 2024 +- version: v0.7.0 + date: Sep. 28th, 2024 downloadLink: - name: Install via maven - link: https://search.maven.org/artifact/org.apache.skywalking/banyandb-java-client/0.6.0/jar + link: https://search.maven.org/artifact/org.apache.skywalking/banyandb-java-client/0.7.0/jar - name: BanyanDB Helm icon: banyan-db description: BanyanDB Helm repository provides ways to install and configure BanyanDB. The scripts are written in Helm 3.
(skywalking-client-js) branch master updated: feat: disconnect observers and add new URLs to report for web vitals (#142)
This is an automated email from the ASF dual-hosted git repository. wusheng pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/skywalking-client-js.git The following commit(s) were added to refs/heads/master by this push: new 86cf96f feat: disconnect observers and add new URLs to report for web vitals (#142) 86cf96f is described below commit 86cf96f0a4d18334e8fd75e864e82aba95bec825 Author: Fine0830 AuthorDate: Fri Sep 27 14:23:16 2024 +0800 feat: disconnect observers and add new URLs to report for web vitals (#142) --- README.md | 7 ++-- src/monitor.ts | 9 ++-- src/performance/index.ts | 93 +++--- src/performance/type.ts| 8 +++- src/services/constant.ts | 2 + src/services/eventsListener.ts | 24 +++ src/services/report.ts | 22 +- src/types.ts | 1 - test/docker/Dockerfile.test-ui | 2 +- test/docker/index.js | 1 - test/env | 2 +- 11 files changed, 114 insertions(+), 57 deletions(-) diff --git a/README.md b/README.md index 4366943..0988862 100644 --- a/README.md +++ b/README.md @@ -52,7 +52,7 @@ The register method supports the following parameters. |jsErrors|Boolean|Support js errors monitoring|false|true| |apiErrors|Boolean|Support API errors monitoring|false|true| |resourceErrors|Boolean|Support resource errors monitoring|false|true| -|useFmp|Boolean|Collect FMP (first meaningful paint) data of the first screen|false|false| +|useFmp|Boolean|Collect FMP (first meaningful paint) data of the first screen. Deprecated: This is no longer recommended. Please use the useWebVitals instead. |false|false| |enableSPA|Boolean|Monitor the page hashchange event and report PV, which is suitable for [single page application scenarios](https://github.com/apache/skywalking-client-js#spa-page). |false|false| |autoTracePerf|Boolean|Support sending of performance data automatically.|false|true| |vue|Vue|Support vue2 errors monitoring. Deprecated: This is no longer recommended. Please use the [Catching errors in frames](https://github.com/apache/skywalking-client-js#catching-errors-in-frames-including-react-angular-vue) scenario instead. |false|undefined| @@ -61,6 +61,7 @@ The register method supports the following parameters. |noTraceOrigins|(string \| RegExp)[]|Origin in the `noTraceOrigins` list will not be traced.|false|[]| |traceTimeInterval|Number|Support setting time interval to report segments.|false|6| |customTags|Array|Custom Tags|false|-| +|useWebVitals|Boolean|Collect three core web vitals|false|false| ## Collect Metrics Manually Use the `setPerformance` method to report metrics at the moment of page loaded or any other moment meaningful. @@ -77,7 +78,7 @@ ClientMonitor.setPerformance({ service: 'browser-app', serviceVersion: '1.0.0', pagePath: location.href, - useFmp: true + useWebVitals: true }); ``` @@ -100,7 +101,7 @@ app.on('routeChange', function (next) { service: 'browser-app', serviceVersion: '1.0.0', pagePath: location.href, -useFmp: true +useWebVitals: true }); }); ``` diff --git a/src/monitor.ts b/src/monitor.ts index 89a7a58..01e8090 100644 --- a/src/monitor.ts +++ b/src/monitor.ts @@ -27,7 +27,7 @@ const ClientMonitor = { apiErrors: true, resourceErrors: true, autoTracePerf: true, // trace performance detail -useFmp: false, // use first meaningful paint +useWebVitals: false, enableSPA: false, traceSDKInternal: false, detailMode: true, @@ -84,7 +84,6 @@ const ClientMonitor = { this.customOptions = { ...this.customOptions, ...configs, - useFmp: false, }; this.validateOptions(); this.performance(this.customOptions); @@ -139,7 +138,7 @@ const ClientMonitor = { apiErrors, resourceErrors, autoTracePerf, - useFmp, + useWebVitals, enableSPA, traceSDKInternal, detailMode, @@ -173,8 +172,8 @@ const ClientMonitor = { if (typeof autoTracePerf !== 'boolean') { this.customOptions.autoTracePerf = true; } -if (typeof useFmp !== 'boolean') { - this.customOptions.useFmp = false; +if (typeof useWebVitals !== 'boolean') { + this.customOptions.useWebVitals = false; } if (typeof enableSPA !== 'boolean') { this.customOptions.enableSPA = false; diff --git a/src/performance/index.ts b/src/performance/index.ts index f750270..2ce3baa 100644 --- a/src/performance/index.ts +++ b/src/performance/index.ts @@ -17,15 +17,30 @@ import {CustomOptionsType} from '../types'; import Report from '../services/report'; -import {prerenderChangeListener} from "../services/eventsListener"; +import {prerenderChangeListener, onHidden, ru