From 687ae07bb0fda6a0828823243709d0df9310bc33 Mon Sep 17 00:00:00 2001 From: Fine0830 Date: Mon, 14 Apr 2025 21:12:48 +0800 Subject: [PATCH] feat: enhance the trace table graph for multiple refs (#464) --- src/store/modules/trace.ts | 5 + src/types/trace.d.ts | 1 + .../related/profile/components/SpanTree.vue | 6 +- src/views/dashboard/related/trace/Detail.vue | 3 +- .../trace/components/D3Graph/Index.vue | 82 +++++++++++--- .../related/trace/components/List.vue | 3 +- .../related/trace/components/Statistics.vue | 5 +- .../related/trace/components/Table.vue | 38 +++++++ .../related/trace/components/Table/Index.vue | 102 ------------------ .../trace/components/Table/TableContainer.vue | 47 +++++--- .../trace/components/Table/TableItem.vue | 51 ++++----- .../related/trace/components/Tree.vue | 3 +- .../related/trace/components/constant.ts | 23 ++++ .../related/trace/components/index.ts | 2 +- .../related/trace/utils/d3-trace-list.ts | 12 +-- .../related/trace/utils/trace-table.ts | 72 +------------ 16 files changed, 207 insertions(+), 248 deletions(-) create mode 100644 src/views/dashboard/related/trace/components/Table.vue delete mode 100644 src/views/dashboard/related/trace/components/Table/Index.vue create mode 100644 src/views/dashboard/related/trace/components/constant.ts diff --git a/src/store/modules/trace.ts b/src/store/modules/trace.ts index 808a183a..2d507aa5 100644 --- a/src/store/modules/trace.ts +++ b/src/store/modules/trace.ts @@ -34,6 +34,7 @@ interface TraceState { conditions: Recordable; traceSpanLogs: Recordable[]; selectorStore: Recordable; + selectedSpan: Recordable; } export const traceStore = defineStore({ @@ -45,6 +46,7 @@ export const traceStore = defineStore({ traceList: [], traceSpans: [], currentTrace: {}, + selectedSpan: {}, conditions: { queryDuration: useAppStoreWithOut().durationTime, traceState: "ALL", @@ -64,6 +66,9 @@ export const traceStore = defineStore({ setTraceSpans(spans: Span[]) { this.traceSpans = spans; }, + setSelectedSpan(span: Span) { + this.selectedSpan = span; + }, resetState() { this.traceSpans = []; this.traceList = []; diff --git a/src/types/trace.d.ts b/src/types/trace.d.ts index 822f3965..8d8d4457 100644 --- a/src/types/trace.d.ts +++ b/src/types/trace.d.ts @@ -48,6 +48,7 @@ export interface Span { logs?: log[]; parentSegmentId?: string; refs?: Ref[]; + key?: string; } export type Ref = { type?: string; diff --git a/src/views/dashboard/related/profile/components/SpanTree.vue b/src/views/dashboard/related/profile/components/SpanTree.vue index 0d7479d5..d8a9e5cf 100644 --- a/src/views/dashboard/related/profile/components/SpanTree.vue +++ b/src/views/dashboard/related/profile/components/SpanTree.vue @@ -43,8 +43,7 @@ limitations under the License. --> @@ -53,13 +52,14 @@ limitations under the License. --> + diff --git a/src/views/dashboard/related/trace/components/Table/Index.vue b/src/views/dashboard/related/trace/components/Table/Index.vue deleted file mode 100644 index 659328e8..00000000 --- a/src/views/dashboard/related/trace/components/Table/Index.vue +++ /dev/null @@ -1,102 +0,0 @@ - - - - diff --git a/src/views/dashboard/related/trace/components/Table/TableContainer.vue b/src/views/dashboard/related/trace/components/Table/TableContainer.vue index e5ac2380..fb803c95 100644 --- a/src/views/dashboard/related/trace/components/Table/TableContainer.vue +++ b/src/views/dashboard/related/trace/components/Table/TableContainer.vue @@ -14,8 +14,8 @@ See the License for the specific language governing permissions and limitations under the License. -->