From fb92ddc82266ac56f6926f7fb3a70be58bce80b3 Mon Sep 17 00:00:00 2001
From: SagarRajput-7 <162284829+SagarRajput-7@users.noreply.github.com>
Date: Thu, 29 Aug 2024 16:48:08 +0530
Subject: [PATCH] chore: added trace detail tests (#5523)
* feat: added trace filter test cases
* feat: added trace filter test cases - initial render
* feat: added test cases - query sync, filter section behaviour etc
* feat: deleted mock-data files
* feat: added test cases of undefined filters and items
* feat: deleted tsconfig
* feat: added clear and rest btn test cases for traces filters
* feat: added collapse and uncollapse test for traces filters
* chore: added trace detail tests
* chore: added trace detail tests - span selection, focus and reset
* chore: fixed eslint
---
frontend/src/container/TraceDetail/index.tsx | 13 +-
.../mocks-server/__mockdata__/tracedetail.ts | 2089 +++++++++++++++++
frontend/src/mocks-server/handlers.ts | 7 +
.../TraceDetail/__test__/TraceDetail.test.tsx | 214 ++
4 files changed, 2321 insertions(+), 2 deletions(-)
create mode 100644 frontend/src/mocks-server/__mockdata__/tracedetail.ts
create mode 100644 frontend/src/pages/TraceDetail/__test__/TraceDetail.test.tsx
diff --git a/frontend/src/container/TraceDetail/index.tsx b/frontend/src/container/TraceDetail/index.tsx
index 38f6db7c08..096b648acf 100644
--- a/frontend/src/container/TraceDetail/index.tsx
+++ b/frontend/src/container/TraceDetail/index.tsx
@@ -219,10 +219,18 @@ function TraceDetail({ response }: TraceDetailProps): JSX.Element {
- }>
+ }
+ data-testid="span-focus-btn"
+ >
Focus on selected span
-
@@ -262,6 +270,7 @@ function TraceDetail({ response }: TraceDetailProps): JSX.Element {
collapsedWidth={40}
defaultCollapsed
onCollapse={(value): void => setCollapsed(value)}
+ data-testid="span-details-sider"
>
{!collapsed && (
diff --git a/frontend/src/mocks-server/__mockdata__/tracedetail.ts b/frontend/src/mocks-server/__mockdata__/tracedetail.ts
new file mode 100644
index 0000000000..c0e439f65f
--- /dev/null
+++ b/frontend/src/mocks-server/__mockdata__/tracedetail.ts
@@ -0,0 +1,2089 @@
+/* eslint-disable sonarjs/no-duplicate-string */
+export const traceDetailResponse = [
+ {
+ startTimestampMillis: 1721304358677,
+ endTimestampMillis: 1721304360928,
+ columns: [
+ '__time',
+ 'SpanId',
+ 'TraceId',
+ 'ServiceName',
+ 'Name',
+ 'Kind',
+ 'DurationNano',
+ 'TagsKeys',
+ 'TagsValues',
+ 'References',
+ 'Events',
+ 'HasError',
+ 'StatusMessage',
+ 'StatusCodeString',
+ 'SpanKind',
+ ],
+ events: [
+ [
+ 1721304359454,
+ '74fff7b42cbc923b',
+ '000000000000000071dc9b0a338729b4',
+ 'customer',
+ 'HTTP GET /customer',
+ '2',
+ '348950000',
+ [
+ 'signoz.collector.id',
+ 'client-uuid',
+ 'component',
+ 'host.name',
+ 'http.method',
+ 'http.url',
+ 'ip',
+ 'http.status_code',
+ 'opencensus.exporterversion',
+ 'service.name',
+ ],
+ [
+ '70d440fb-4875-4371-9a13-1bf5117c99e7',
+ '7cd5f22c2034bc4e',
+ 'net/http',
+ '4f6ec470feea',
+ 'GET',
+ '/customer?customer=731',
+ '172.25.0.2',
+ '200',
+ 'Jaeger-Go-2.30.0',
+ 'customer',
+ ],
+ [
+ '{TraceId=000000000000000071dc9b0a338729b4, SpanId=1518282c4475a6d7, RefType=CHILD_OF}',
+ ],
+ [
+ '{"name":"HTTP request received","timeUnixNano":1721304359454282000,"attributeMap":{"level":"info","method":"GET","url":"/customer?customer=731"}}',
+ '{"name":"Loading customer","timeUnixNano":1721304359454308000,"attributeMap":{"customer_id":"731","level":"info"}}',
+ ],
+ false,
+ '',
+ 'Unset',
+ 'Server',
+ ],
+ [
+ 1721304359454,
+ '1518282c4475a6d7',
+ '000000000000000071dc9b0a338729b4',
+ 'frontend',
+ 'HTTP GET',
+ '3',
+ '349380000',
+ [
+ 'net/http.was_idle',
+ 'client-uuid',
+ 'host.name',
+ 'http.status_code',
+ 'net/http.reused',
+ 'opencensus.exporterversion',
+ 'service.name',
+ 'signoz.collector.id',
+ 'component',
+ 'http.method',
+ 'http.url',
+ 'ip',
+ ],
+ [
+ 'true',
+ '6fb81b8ca91b2b4d',
+ '4f6ec470feea',
+ '200',
+ 'true',
+ 'Jaeger-Go-2.30.0',
+ 'frontend',
+ '70d440fb-4875-4371-9a13-1bf5117c99e7',
+ 'net/http',
+ 'GET',
+ '0.0.0.0:8081',
+ '172.25.0.2',
+ ],
+ [
+ '{TraceId=000000000000000071dc9b0a338729b4, SpanId=51a3062c3456cd26, RefType=CHILD_OF}',
+ ],
+ [
+ '{"name":"GetConn","timeUnixNano":1721304359454120000}',
+ '{"name":"GotConn","timeUnixNano":1721304359454129000}',
+ '{"name":"WroteHeaders","timeUnixNano":1721304359454156000}',
+ '{"name":"WroteRequest","timeUnixNano":1721304359454158000}',
+ '{"name":"GotFirstResponseByte","timeUnixNano":1721304359803413000}',
+ '{"name":"PutIdleConn","timeUnixNano":1721304359803452000}',
+ '{"name":"ClosedBody","timeUnixNano":1721304359803472000}',
+ ],
+ false,
+ '',
+ 'Unset',
+ 'Client',
+ ],
+ [
+ 1721304359454,
+ '51a3062c3456cd26',
+ '000000000000000071dc9b0a338729b4',
+ 'frontend',
+ 'HTTP GET: /customer',
+ '0',
+ '349435000',
+ [
+ 'opencensus.exporterversion',
+ 'service.name',
+ 'signoz.collector.id',
+ 'client-uuid',
+ 'host.name',
+ 'ip',
+ ],
+ [
+ 'Jaeger-Go-2.30.0',
+ 'frontend',
+ '70d440fb-4875-4371-9a13-1bf5117c99e7',
+ '6fb81b8ca91b2b4d',
+ '4f6ec470feea',
+ '172.25.0.2',
+ ],
+ [
+ '{TraceId=000000000000000071dc9b0a338729b4, SpanId=71dc9b0a338729b4, RefType=CHILD_OF}',
+ ],
+ [],
+ false,
+ '',
+ 'Unset',
+ 'Unspecified',
+ ],
+ [
+ 1721304359454,
+ '67e901d53c8f11d4',
+ '000000000000000071dc9b0a338729b4',
+ 'mysql',
+ 'SQL SELECT',
+ '3',
+ '348855000',
+ [
+ 'host.name',
+ 'peer.service',
+ 'request',
+ 'signoz.collector.id',
+ 'sql.query',
+ 'client-uuid',
+ 'ip',
+ 'opencensus.exporterversion',
+ 'service.name',
+ ],
+ [
+ '4f6ec470feea',
+ 'mysql',
+ '',
+ '70d440fb-4875-4371-9a13-1bf5117c99e7',
+ 'SELECT * FROM customer WHERE customer_id=731',
+ '3441c794741337d0',
+ '172.25.0.2',
+ 'Jaeger-Go-2.30.0',
+ 'mysql',
+ ],
+ [
+ '{TraceId=000000000000000071dc9b0a338729b4, SpanId=74fff7b42cbc923b, RefType=CHILD_OF}',
+ ],
+ [
+ '{"name":"Waiting for lock behind 1 transactions","timeUnixNano":1721304359454335000,"attributeMap":{"blockers":"[]"}}',
+ '{"name":"Acquired lock with 0 transactions waiting behind","timeUnixNano":1721304359529107000}',
+ ],
+ false,
+ '',
+ 'Unset',
+ 'Client',
+ ],
+ [
+ 1721304359803,
+ '541274ec900e06ae',
+ '000000000000000071dc9b0a338729b4',
+ 'redis',
+ 'FindDriverIDs',
+ '3',
+ '15030000',
+ [
+ 'service.name',
+ 'signoz.collector.id',
+ 'client-uuid',
+ 'host.name',
+ 'ip',
+ 'opencensus.exporterversion',
+ 'param.location',
+ ],
+ [
+ 'redis',
+ '70d440fb-4875-4371-9a13-1bf5117c99e7',
+ '1b45eecbdc9fca62',
+ '4f6ec470feea',
+ '172.25.0.2',
+ 'Jaeger-Go-2.30.0',
+ '728,326',
+ ],
+ [
+ '{TraceId=000000000000000071dc9b0a338729b4, SpanId=22eadd8a0f27a552, RefType=CHILD_OF}',
+ ],
+ [
+ '{"name":"Found drivers","timeUnixNano":1721304359818819000,"attributeMap":{"level":"info"}}',
+ ],
+ false,
+ '',
+ 'Unset',
+ 'Client',
+ ],
+ [
+ 1721304359818,
+ '14a6cad2442f62ae',
+ '000000000000000071dc9b0a338729b4',
+ 'redis',
+ 'GetDriver',
+ '3',
+ '7524000',
+ [
+ 'client-uuid',
+ 'host.name',
+ 'ip',
+ 'opencensus.exporterversion',
+ 'param.driverID',
+ 'service.name',
+ 'signoz.collector.id',
+ ],
+ [
+ '1b45eecbdc9fca62',
+ '4f6ec470feea',
+ '172.25.0.2',
+ 'Jaeger-Go-2.30.0',
+ 'T746480C',
+ 'redis',
+ '70d440fb-4875-4371-9a13-1bf5117c99e7',
+ ],
+ [
+ '{TraceId=000000000000000071dc9b0a338729b4, SpanId=22eadd8a0f27a552, RefType=CHILD_OF}',
+ ],
+ [],
+ false,
+ '',
+ 'Unset',
+ 'Client',
+ ],
+ [
+ 1721304359826,
+ '49771a34b0287913',
+ '000000000000000071dc9b0a338729b4',
+ 'redis',
+ 'GetDriver',
+ '3',
+ '10207000',
+ [
+ 'param.driverID',
+ 'service.name',
+ 'signoz.collector.id',
+ 'client-uuid',
+ 'host.name',
+ 'ip',
+ 'opencensus.exporterversion',
+ ],
+ [
+ 'T787177C',
+ 'redis',
+ '70d440fb-4875-4371-9a13-1bf5117c99e7',
+ '1b45eecbdc9fca62',
+ '4f6ec470feea',
+ '172.25.0.2',
+ 'Jaeger-Go-2.30.0',
+ ],
+ [
+ '{TraceId=000000000000000071dc9b0a338729b4, SpanId=22eadd8a0f27a552, RefType=CHILD_OF}',
+ ],
+ [],
+ false,
+ '',
+ 'Unset',
+ 'Client',
+ ],
+ [
+ 1721304359836,
+ '53e1096a98361b25',
+ '000000000000000071dc9b0a338729b4',
+ 'redis',
+ 'GetDriver',
+ '3',
+ '32032000',
+ [
+ 'param.driverID',
+ 'service.name',
+ 'signoz.collector.id',
+ 'client-uuid',
+ 'host.name',
+ 'ip',
+ 'opencensus.exporterversion',
+ ],
+ [
+ 'T718678C',
+ 'redis',
+ '70d440fb-4875-4371-9a13-1bf5117c99e7',
+ '1b45eecbdc9fca62',
+ '4f6ec470feea',
+ '172.25.0.2',
+ 'Jaeger-Go-2.30.0',
+ ],
+ [
+ '{TraceId=000000000000000071dc9b0a338729b4, SpanId=22eadd8a0f27a552, RefType=CHILD_OF}',
+ ],
+ [
+ '{"name":"redis timeout","timeUnixNano":1721304359868650000,"attributeMap":{"driver_id":"T718678C","error":"redis timeout","level":"error"}}',
+ ],
+ true,
+ '',
+ 'Error',
+ 'Client',
+ ],
+ [
+ 1721304359868,
+ '62f28274cd882905',
+ '000000000000000071dc9b0a338729b4',
+ 'redis',
+ 'GetDriver',
+ '3',
+ '9969000',
+ [
+ 'client-uuid',
+ 'host.name',
+ 'ip',
+ 'opencensus.exporterversion',
+ 'param.driverID',
+ 'service.name',
+ 'signoz.collector.id',
+ ],
+ [
+ '1b45eecbdc9fca62',
+ '4f6ec470feea',
+ '172.25.0.2',
+ 'Jaeger-Go-2.30.0',
+ 'T718678C',
+ 'redis',
+ '70d440fb-4875-4371-9a13-1bf5117c99e7',
+ ],
+ [
+ '{TraceId=000000000000000071dc9b0a338729b4, SpanId=22eadd8a0f27a552, RefType=CHILD_OF}',
+ ],
+ [],
+ false,
+ '',
+ 'Unset',
+ 'Client',
+ ],
+ [
+ 1721304359878,
+ '273c24835b4733f7',
+ '000000000000000071dc9b0a338729b4',
+ 'redis',
+ 'GetDriver',
+ '3',
+ '6974000',
+ [
+ 'opencensus.exporterversion',
+ 'param.driverID',
+ 'service.name',
+ 'signoz.collector.id',
+ 'client-uuid',
+ 'host.name',
+ 'ip',
+ ],
+ [
+ 'Jaeger-Go-2.30.0',
+ 'T778818C',
+ 'redis',
+ '70d440fb-4875-4371-9a13-1bf5117c99e7',
+ '1b45eecbdc9fca62',
+ '4f6ec470feea',
+ '172.25.0.2',
+ ],
+ [
+ '{TraceId=000000000000000071dc9b0a338729b4, SpanId=22eadd8a0f27a552, RefType=CHILD_OF}',
+ ],
+ [],
+ false,
+ '',
+ 'Unset',
+ 'Client',
+ ],
+ [
+ 1721304359885,
+ '1fee566b7d89250d',
+ '000000000000000071dc9b0a338729b4',
+ 'redis',
+ 'GetDriver',
+ '3',
+ '11594000',
+ [
+ 'host.name',
+ 'ip',
+ 'opencensus.exporterversion',
+ 'param.driverID',
+ 'service.name',
+ 'signoz.collector.id',
+ 'client-uuid',
+ ],
+ [
+ '4f6ec470feea',
+ '172.25.0.2',
+ 'Jaeger-Go-2.30.0',
+ 'T730205C',
+ 'redis',
+ '70d440fb-4875-4371-9a13-1bf5117c99e7',
+ '1b45eecbdc9fca62',
+ ],
+ [
+ '{TraceId=000000000000000071dc9b0a338729b4, SpanId=22eadd8a0f27a552, RefType=CHILD_OF}',
+ ],
+ [],
+ false,
+ '',
+ 'Unset',
+ 'Client',
+ ],
+ [
+ 1721304359897,
+ '6b7bfcbede8a2e10',
+ '000000000000000071dc9b0a338729b4',
+ 'redis',
+ 'GetDriver',
+ '3',
+ '9198000',
+ [
+ 'client-uuid',
+ 'host.name',
+ 'ip',
+ 'opencensus.exporterversion',
+ 'param.driverID',
+ 'service.name',
+ 'signoz.collector.id',
+ ],
+ [
+ '1b45eecbdc9fca62',
+ '4f6ec470feea',
+ '172.25.0.2',
+ 'Jaeger-Go-2.30.0',
+ 'T708669C',
+ 'redis',
+ '70d440fb-4875-4371-9a13-1bf5117c99e7',
+ ],
+ [
+ '{TraceId=000000000000000071dc9b0a338729b4, SpanId=22eadd8a0f27a552, RefType=CHILD_OF}',
+ ],
+ [],
+ false,
+ '',
+ 'Unset',
+ 'Client',
+ ],
+ [
+ 1721304359906,
+ '707b2e18e9f4b36d',
+ '000000000000000071dc9b0a338729b4',
+ 'redis',
+ 'GetDriver',
+ '3',
+ '28706000',
+ [
+ 'client-uuid',
+ 'host.name',
+ 'ip',
+ 'opencensus.exporterversion',
+ 'param.driverID',
+ 'service.name',
+ 'signoz.collector.id',
+ ],
+ [
+ '1b45eecbdc9fca62',
+ '4f6ec470feea',
+ '172.25.0.2',
+ 'Jaeger-Go-2.30.0',
+ 'T740153C',
+ 'redis',
+ '70d440fb-4875-4371-9a13-1bf5117c99e7',
+ ],
+ [
+ '{TraceId=000000000000000071dc9b0a338729b4, SpanId=22eadd8a0f27a552, RefType=CHILD_OF}',
+ ],
+ [
+ '{"name":"redis timeout","timeUnixNano":1721304359935174000,"attributeMap":{"driver_id":"T740153C","error":"redis timeout","level":"error"}}',
+ ],
+ true,
+ '',
+ 'Error',
+ 'Client',
+ ],
+ [
+ 1721304359935,
+ '759867234892fa23',
+ '000000000000000071dc9b0a338729b4',
+ 'redis',
+ 'GetDriver',
+ '3',
+ '10115000',
+ [
+ 'ip',
+ 'opencensus.exporterversion',
+ 'param.driverID',
+ 'service.name',
+ 'signoz.collector.id',
+ 'client-uuid',
+ 'host.name',
+ ],
+ [
+ '172.25.0.2',
+ 'Jaeger-Go-2.30.0',
+ 'T740153C',
+ 'redis',
+ '70d440fb-4875-4371-9a13-1bf5117c99e7',
+ '1b45eecbdc9fca62',
+ '4f6ec470feea',
+ ],
+ [
+ '{TraceId=000000000000000071dc9b0a338729b4, SpanId=22eadd8a0f27a552, RefType=CHILD_OF}',
+ ],
+ [],
+ false,
+ '',
+ 'Unset',
+ 'Client',
+ ],
+ [
+ 1721304359945,
+ '40e021cf08a5849d',
+ '000000000000000071dc9b0a338729b4',
+ 'redis',
+ 'GetDriver',
+ '3',
+ '13283000',
+ [
+ 'client-uuid',
+ 'host.name',
+ 'ip',
+ 'opencensus.exporterversion',
+ 'param.driverID',
+ 'service.name',
+ 'signoz.collector.id',
+ ],
+ [
+ '1b45eecbdc9fca62',
+ '4f6ec470feea',
+ '172.25.0.2',
+ 'Jaeger-Go-2.30.0',
+ 'T739323C',
+ 'redis',
+ '70d440fb-4875-4371-9a13-1bf5117c99e7',
+ ],
+ [
+ '{TraceId=000000000000000071dc9b0a338729b4, SpanId=22eadd8a0f27a552, RefType=CHILD_OF}',
+ ],
+ [],
+ false,
+ '',
+ 'Unset',
+ 'Client',
+ ],
+ [
+ 1721304359958,
+ '53a1db7583207833',
+ '000000000000000071dc9b0a338729b4',
+ 'redis',
+ 'GetDriver',
+ '3',
+ '7573000',
+ [
+ 'opencensus.exporterversion',
+ 'param.driverID',
+ 'service.name',
+ 'signoz.collector.id',
+ 'client-uuid',
+ 'host.name',
+ 'ip',
+ ],
+ [
+ 'Jaeger-Go-2.30.0',
+ 'T731135C',
+ 'redis',
+ '70d440fb-4875-4371-9a13-1bf5117c99e7',
+ '1b45eecbdc9fca62',
+ '4f6ec470feea',
+ '172.25.0.2',
+ ],
+ [
+ '{TraceId=000000000000000071dc9b0a338729b4, SpanId=22eadd8a0f27a552, RefType=CHILD_OF}',
+ ],
+ [],
+ false,
+ '',
+ 'Unset',
+ 'Client',
+ ],
+ [
+ 1721304359966,
+ '46aaaa6f2a2fc84f',
+ '000000000000000071dc9b0a338729b4',
+ 'redis',
+ 'GetDriver',
+ '3',
+ '9238000',
+ [
+ 'param.driverID',
+ 'service.name',
+ 'signoz.collector.id',
+ 'client-uuid',
+ 'host.name',
+ 'ip',
+ 'opencensus.exporterversion',
+ ],
+ [
+ 'T760263C',
+ 'redis',
+ '70d440fb-4875-4371-9a13-1bf5117c99e7',
+ '1b45eecbdc9fca62',
+ '4f6ec470feea',
+ '172.25.0.2',
+ 'Jaeger-Go-2.30.0',
+ ],
+ [
+ '{TraceId=000000000000000071dc9b0a338729b4, SpanId=22eadd8a0f27a552, RefType=CHILD_OF}',
+ ],
+ [],
+ false,
+ '',
+ 'Unset',
+ 'Client',
+ ],
+ [
+ 1721304359803,
+ '22eadd8a0f27a552',
+ '000000000000000071dc9b0a338729b4',
+ 'driver',
+ '/driver.DriverService/FindNearest',
+ '2',
+ '172564000',
+ [
+ 'opencensus.exporterversion',
+ 'service.name',
+ 'signoz.collector.id',
+ 'client-uuid',
+ 'component',
+ 'host.name',
+ 'ip',
+ ],
+ [
+ 'Jaeger-Go-2.30.0',
+ 'driver',
+ '70d440fb-4875-4371-9a13-1bf5117c99e7',
+ '46ade24719771fcb',
+ 'gRPC',
+ '4f6ec470feea',
+ '172.25.0.2',
+ ],
+ [
+ '{TraceId=000000000000000071dc9b0a338729b4, SpanId=0b67082081caa21d, RefType=CHILD_OF}',
+ ],
+ [
+ '{"name":"Searching for nearby drivers","timeUnixNano":1721304359803853000,"attributeMap":{"level":"info","location":"728,326"}}',
+ '{"name":"Retrying GetDriver after error","timeUnixNano":1721304359868728000,"attributeMap":{"error":"redis timeout","level":"error","retry_no":"1"}}',
+ '{"name":"Retrying GetDriver after error","timeUnixNano":1721304359935265000,"attributeMap":{"error":"redis timeout","level":"error","retry_no":"1"}}',
+ '{"name":"Search successful","timeUnixNano":1721304359975617000,"attributeMap":{"level":"info","num_drivers":"10"}}',
+ ],
+ false,
+ '',
+ 'Unset',
+ 'Server',
+ ],
+ [
+ 1721304359803,
+ '0b67082081caa21d',
+ '000000000000000071dc9b0a338729b4',
+ 'frontend',
+ '/driver.DriverService/FindNearest',
+ '3',
+ '173105000',
+ [
+ 'component',
+ 'host.name',
+ 'ip',
+ 'opencensus.exporterversion',
+ 'service.name',
+ 'signoz.collector.id',
+ 'client-uuid',
+ ],
+ [
+ 'gRPC',
+ '4f6ec470feea',
+ '172.25.0.2',
+ 'Jaeger-Go-2.30.0',
+ 'frontend',
+ '70d440fb-4875-4371-9a13-1bf5117c99e7',
+ '6fb81b8ca91b2b4d',
+ ],
+ [
+ '{TraceId=000000000000000071dc9b0a338729b4, SpanId=71dc9b0a338729b4, RefType=CHILD_OF}',
+ ],
+ [],
+ false,
+ '',
+ 'Unset',
+ 'Client',
+ ],
+ [
+ 1721304359978,
+ '3ed7b128c9d765bf',
+ '000000000000000071dc9b0a338729b4',
+ 'frontend',
+ 'HTTP GET',
+ '3',
+ '54072000',
+ [
+ 'component',
+ 'http.method',
+ 'http.status_code',
+ 'http.url',
+ 'net/http.reused',
+ 'net/http.was_idle',
+ 'service.name',
+ 'client-uuid',
+ 'signoz.collector.id',
+ 'ip',
+ 'opencensus.exporterversion',
+ 'host.name',
+ ],
+ [
+ 'net/http',
+ 'GET',
+ '200',
+ '0.0.0.0:8083',
+ 'true',
+ 'true',
+ 'frontend',
+ '6fb81b8ca91b2b4d',
+ '70d440fb-4875-4371-9a13-1bf5117c99e7',
+ '172.25.0.2',
+ 'Jaeger-Go-2.30.0',
+ '4f6ec470feea',
+ ],
+ [
+ '{TraceId=000000000000000071dc9b0a338729b4, SpanId=0ac9396a0836beef, RefType=CHILD_OF}',
+ ],
+ [
+ '{"name":"GetConn","timeUnixNano":1721304359978461000}',
+ '{"name":"GotConn","timeUnixNano":1721304359978470000}',
+ '{"name":"WroteHeaders","timeUnixNano":1721304359978490000}',
+ '{"name":"WroteRequest","timeUnixNano":1721304359978492000}',
+ '{"name":"GotFirstResponseByte","timeUnixNano":1721304360032438000}',
+ '{"name":"PutIdleConn","timeUnixNano":1721304360032487000}',
+ '{"name":"ClosedBody","timeUnixNano":1721304360032511000}',
+ ],
+ false,
+ '',
+ 'Unset',
+ 'Client',
+ ],
+ [
+ 1721304359978,
+ '0ac9396a0836beef',
+ '000000000000000071dc9b0a338729b4',
+ 'frontend',
+ 'HTTP GET: /route',
+ '0',
+ '54081000',
+ [
+ 'service.name',
+ 'signoz.collector.id',
+ 'client-uuid',
+ 'host.name',
+ 'ip',
+ 'opencensus.exporterversion',
+ ],
+ [
+ 'frontend',
+ '70d440fb-4875-4371-9a13-1bf5117c99e7',
+ '6fb81b8ca91b2b4d',
+ '4f6ec470feea',
+ '172.25.0.2',
+ 'Jaeger-Go-2.30.0',
+ ],
+ [
+ '{TraceId=000000000000000071dc9b0a338729b4, SpanId=71dc9b0a338729b4, RefType=CHILD_OF}',
+ ],
+ [],
+ false,
+ '',
+ 'Unset',
+ 'Unspecified',
+ ],
+ [
+ 1721304359978,
+ '2b837048c74fc169',
+ '000000000000000071dc9b0a338729b4',
+ 'frontend',
+ 'HTTP GET',
+ '3',
+ '64945000',
+ [
+ 'ip',
+ 'service.name',
+ 'client-uuid',
+ 'component',
+ 'http.method',
+ 'http.status_code',
+ 'opencensus.exporterversion',
+ 'signoz.collector.id',
+ 'host.name',
+ 'http.url',
+ 'net/http.reused',
+ 'net/http.was_idle',
+ ],
+ [
+ '172.25.0.2',
+ 'frontend',
+ '6fb81b8ca91b2b4d',
+ 'net/http',
+ 'GET',
+ '200',
+ 'Jaeger-Go-2.30.0',
+ '70d440fb-4875-4371-9a13-1bf5117c99e7',
+ '4f6ec470feea',
+ '0.0.0.0:8083',
+ 'false',
+ 'false',
+ ],
+ [
+ '{TraceId=000000000000000071dc9b0a338729b4, SpanId=1e320f1c93026e9d, RefType=CHILD_OF}',
+ ],
+ [
+ '{"name":"GetConn","timeUnixNano":1721304359979001000}',
+ '{"name":"ConnectStart","timeUnixNano":1721304359979065000,"attributeMap":{"addr":"0.0.0.0:8083","network":"tcp"}}',
+ '{"name":"ConnectDone","timeUnixNano":1721304359979262000,"attributeMap":{"addr":"0.0.0.0:8083","network":"tcp"}}',
+ '{"name":"GotConn","timeUnixNano":1721304359979287000}',
+ '{"name":"WroteHeaders","timeUnixNano":1721304359979341000}',
+ '{"name":"WroteRequest","timeUnixNano":1721304359979342000}',
+ '{"name":"GotFirstResponseByte","timeUnixNano":1721304360043858000}',
+ '{"name":"PutIdleConn","timeUnixNano":1721304360043897000}',
+ '{"name":"ClosedBody","timeUnixNano":1721304360043919000}',
+ ],
+ false,
+ '',
+ 'Unset',
+ 'Client',
+ ],
+ [
+ 1721304359978,
+ '1e320f1c93026e9d',
+ '000000000000000071dc9b0a338729b4',
+ 'frontend',
+ 'HTTP GET: /route',
+ '0',
+ '64954000',
+ [
+ 'client-uuid',
+ 'host.name',
+ 'ip',
+ 'opencensus.exporterversion',
+ 'service.name',
+ 'signoz.collector.id',
+ ],
+ [
+ '6fb81b8ca91b2b4d',
+ '4f6ec470feea',
+ '172.25.0.2',
+ 'Jaeger-Go-2.30.0',
+ 'frontend',
+ '70d440fb-4875-4371-9a13-1bf5117c99e7',
+ ],
+ [
+ '{TraceId=000000000000000071dc9b0a338729b4, SpanId=71dc9b0a338729b4, RefType=CHILD_OF}',
+ ],
+ [],
+ false,
+ '',
+ 'Unset',
+ 'Unspecified',
+ ],
+ [
+ 1721304359977,
+ '3d559df27da11f0f',
+ '000000000000000071dc9b0a338729b4',
+ 'frontend',
+ 'HTTP GET',
+ '3',
+ '76137000',
+ [
+ 'net/http.reused',
+ 'net/http.was_idle',
+ 'component',
+ 'host.name',
+ 'http.url',
+ 'ip',
+ 'service.name',
+ 'signoz.collector.id',
+ 'client-uuid',
+ 'http.method',
+ 'http.status_code',
+ 'opencensus.exporterversion',
+ ],
+ [
+ 'true',
+ 'true',
+ 'net/http',
+ '4f6ec470feea',
+ '0.0.0.0:8083',
+ '172.25.0.2',
+ 'frontend',
+ '70d440fb-4875-4371-9a13-1bf5117c99e7',
+ '6fb81b8ca91b2b4d',
+ 'GET',
+ '200',
+ 'Jaeger-Go-2.30.0',
+ ],
+ [
+ '{TraceId=000000000000000071dc9b0a338729b4, SpanId=6acf3a3fd51f294a, RefType=CHILD_OF}',
+ ],
+ [
+ '{"name":"GetConn","timeUnixNano":1721304359977905000}',
+ '{"name":"GotConn","timeUnixNano":1721304359977914000}',
+ '{"name":"WroteHeaders","timeUnixNano":1721304359977939000}',
+ '{"name":"WroteRequest","timeUnixNano":1721304359977941000}',
+ '{"name":"GotFirstResponseByte","timeUnixNano":1721304360053941000}',
+ '{"name":"PutIdleConn","timeUnixNano":1721304360053982000}',
+ '{"name":"ClosedBody","timeUnixNano":1721304360054009000}',
+ ],
+ false,
+ '',
+ 'Unset',
+ 'Client',
+ ],
+ [
+ 1721304359977,
+ '6acf3a3fd51f294a',
+ '000000000000000071dc9b0a338729b4',
+ 'frontend',
+ 'HTTP GET: /route',
+ '0',
+ '76161000',
+ [
+ 'host.name',
+ 'ip',
+ 'opencensus.exporterversion',
+ 'service.name',
+ 'signoz.collector.id',
+ 'client-uuid',
+ ],
+ [
+ '4f6ec470feea',
+ '172.25.0.2',
+ 'Jaeger-Go-2.30.0',
+ 'frontend',
+ '70d440fb-4875-4371-9a13-1bf5117c99e7',
+ '6fb81b8ca91b2b4d',
+ ],
+ [
+ '{TraceId=000000000000000071dc9b0a338729b4, SpanId=71dc9b0a338729b4, RefType=CHILD_OF}',
+ ],
+ [],
+ false,
+ '',
+ 'Unset',
+ 'Unspecified',
+ ],
+ [
+ 1721304360033,
+ '4f50f3f099502699',
+ '000000000000000071dc9b0a338729b4',
+ 'frontend',
+ 'HTTP GET',
+ '3',
+ '69683000',
+ [
+ 'client-uuid',
+ 'component',
+ 'http.status_code',
+ 'http.url',
+ 'net/http.reused',
+ 'net/http.was_idle',
+ 'signoz.collector.id',
+ 'host.name',
+ 'http.method',
+ 'ip',
+ 'opencensus.exporterversion',
+ 'service.name',
+ ],
+ [
+ '6fb81b8ca91b2b4d',
+ 'net/http',
+ '200',
+ '0.0.0.0:8083',
+ 'true',
+ 'true',
+ '70d440fb-4875-4371-9a13-1bf5117c99e7',
+ '4f6ec470feea',
+ 'GET',
+ '172.25.0.2',
+ 'Jaeger-Go-2.30.0',
+ 'frontend',
+ ],
+ [
+ '{TraceId=000000000000000071dc9b0a338729b4, SpanId=0f064e2af29e5e3d, RefType=CHILD_OF}',
+ ],
+ [
+ '{"name":"GetConn","timeUnixNano":1721304360033336000}',
+ '{"name":"GotConn","timeUnixNano":1721304360033345000}',
+ '{"name":"WroteHeaders","timeUnixNano":1721304360033369000}',
+ '{"name":"WroteRequest","timeUnixNano":1721304360033372000}',
+ '{"name":"GotFirstResponseByte","timeUnixNano":1721304360102925000}',
+ '{"name":"PutIdleConn","timeUnixNano":1721304360102965000}',
+ '{"name":"ClosedBody","timeUnixNano":1721304360102988000}',
+ ],
+ false,
+ '',
+ 'Unset',
+ 'Client',
+ ],
+ [
+ 1721304360033,
+ '0f064e2af29e5e3d',
+ '000000000000000071dc9b0a338729b4',
+ 'frontend',
+ 'HTTP GET: /route',
+ '0',
+ '69697000',
+ [
+ 'client-uuid',
+ 'host.name',
+ 'ip',
+ 'opencensus.exporterversion',
+ 'service.name',
+ 'signoz.collector.id',
+ ],
+ [
+ '6fb81b8ca91b2b4d',
+ '4f6ec470feea',
+ '172.25.0.2',
+ 'Jaeger-Go-2.30.0',
+ 'frontend',
+ '70d440fb-4875-4371-9a13-1bf5117c99e7',
+ ],
+ [
+ '{TraceId=000000000000000071dc9b0a338729b4, SpanId=71dc9b0a338729b4, RefType=CHILD_OF}',
+ ],
+ [],
+ false,
+ '',
+ 'Unset',
+ 'Unspecified',
+ ],
+ [
+ 1721304360054,
+ '1968d4e502b91ac4',
+ '000000000000000071dc9b0a338729b4',
+ 'frontend',
+ 'HTTP GET',
+ '3',
+ '54187000',
+ [
+ 'client-uuid',
+ 'component',
+ 'http.status_code',
+ 'net/http.was_idle',
+ 'opencensus.exporterversion',
+ 'signoz.collector.id',
+ 'host.name',
+ 'http.method',
+ 'http.url',
+ 'ip',
+ 'net/http.reused',
+ 'service.name',
+ ],
+ [
+ '6fb81b8ca91b2b4d',
+ 'net/http',
+ '200',
+ 'true',
+ 'Jaeger-Go-2.30.0',
+ '70d440fb-4875-4371-9a13-1bf5117c99e7',
+ '4f6ec470feea',
+ 'GET',
+ '0.0.0.0:8083',
+ '172.25.0.2',
+ 'true',
+ 'frontend',
+ ],
+ [
+ '{TraceId=000000000000000071dc9b0a338729b4, SpanId=4984e1953fd99760, RefType=CHILD_OF}',
+ ],
+ [
+ '{"name":"GetConn","timeUnixNano":1721304360054823000}',
+ '{"name":"GotConn","timeUnixNano":1721304360054831000}',
+ '{"name":"WroteHeaders","timeUnixNano":1721304360054855000}',
+ '{"name":"WroteRequest","timeUnixNano":1721304360054857000}',
+ '{"name":"GotFirstResponseByte","timeUnixNano":1721304360108921000}',
+ '{"name":"PutIdleConn","timeUnixNano":1721304360108961000}',
+ '{"name":"ClosedBody","timeUnixNano":1721304360108984000}',
+ ],
+ false,
+ '',
+ 'Unset',
+ 'Client',
+ ],
+ [
+ 1721304360054,
+ '4984e1953fd99760',
+ '000000000000000071dc9b0a338729b4',
+ 'frontend',
+ 'HTTP GET: /route',
+ '0',
+ '54200000',
+ [
+ 'client-uuid',
+ 'host.name',
+ 'ip',
+ 'opencensus.exporterversion',
+ 'service.name',
+ 'signoz.collector.id',
+ ],
+ [
+ '6fb81b8ca91b2b4d',
+ '4f6ec470feea',
+ '172.25.0.2',
+ 'Jaeger-Go-2.30.0',
+ 'frontend',
+ '70d440fb-4875-4371-9a13-1bf5117c99e7',
+ ],
+ [
+ '{TraceId=000000000000000071dc9b0a338729b4, SpanId=71dc9b0a338729b4, RefType=CHILD_OF}',
+ ],
+ [],
+ false,
+ '',
+ 'Unset',
+ 'Unspecified',
+ ],
+ [
+ 1721304360044,
+ '032263185bbbf38c',
+ '000000000000000071dc9b0a338729b4',
+ 'frontend',
+ 'HTTP GET',
+ '3',
+ '69252000',
+ [
+ 'host.name',
+ 'ip',
+ 'net/http.was_idle',
+ 'service.name',
+ 'client-uuid',
+ 'component',
+ 'http.method',
+ 'http.status_code',
+ 'http.url',
+ 'net/http.reused',
+ 'opencensus.exporterversion',
+ 'signoz.collector.id',
+ ],
+ [
+ '4f6ec470feea',
+ '172.25.0.2',
+ 'true',
+ 'frontend',
+ '6fb81b8ca91b2b4d',
+ 'net/http',
+ 'GET',
+ '200',
+ '0.0.0.0:8083',
+ 'true',
+ 'Jaeger-Go-2.30.0',
+ '70d440fb-4875-4371-9a13-1bf5117c99e7',
+ ],
+ [
+ '{TraceId=000000000000000071dc9b0a338729b4, SpanId=54965682749b13bf, RefType=CHILD_OF}',
+ ],
+ [
+ '{"name":"GetConn","timeUnixNano":1721304360044759000}',
+ '{"name":"GotConn","timeUnixNano":1721304360044768000}',
+ '{"name":"WroteHeaders","timeUnixNano":1721304360044793000}',
+ '{"name":"WroteRequest","timeUnixNano":1721304360044796000}',
+ '{"name":"GotFirstResponseByte","timeUnixNano":1721304360113908000}',
+ '{"name":"PutIdleConn","timeUnixNano":1721304360113948000}',
+ '{"name":"ClosedBody","timeUnixNano":1721304360113971000}',
+ ],
+ false,
+ '',
+ 'Unset',
+ 'Client',
+ ],
+ [
+ 1721304360044,
+ '54965682749b13bf',
+ '000000000000000071dc9b0a338729b4',
+ 'frontend',
+ 'HTTP GET: /route',
+ '0',
+ '69266000',
+ [
+ 'client-uuid',
+ 'host.name',
+ 'ip',
+ 'opencensus.exporterversion',
+ 'service.name',
+ 'signoz.collector.id',
+ ],
+ [
+ '6fb81b8ca91b2b4d',
+ '4f6ec470feea',
+ '172.25.0.2',
+ 'Jaeger-Go-2.30.0',
+ 'frontend',
+ '70d440fb-4875-4371-9a13-1bf5117c99e7',
+ ],
+ [
+ '{TraceId=000000000000000071dc9b0a338729b4, SpanId=71dc9b0a338729b4, RefType=CHILD_OF}',
+ ],
+ [],
+ false,
+ '',
+ 'Unset',
+ 'Unspecified',
+ ],
+ [
+ 1721304360109,
+ '255866d4d4b6ec08',
+ '000000000000000071dc9b0a338729b4',
+ 'frontend',
+ 'HTTP GET',
+ '3',
+ '41317000',
+ [
+ 'component',
+ 'host.name',
+ 'http.method',
+ 'http.status_code',
+ 'net/http.reused',
+ 'net/http.was_idle',
+ 'opencensus.exporterversion',
+ 'client-uuid',
+ 'http.url',
+ 'ip',
+ 'service.name',
+ 'signoz.collector.id',
+ ],
+ [
+ 'net/http',
+ '4f6ec470feea',
+ 'GET',
+ '200',
+ 'true',
+ 'true',
+ 'Jaeger-Go-2.30.0',
+ '6fb81b8ca91b2b4d',
+ '0.0.0.0:8083',
+ '172.25.0.2',
+ 'frontend',
+ '70d440fb-4875-4371-9a13-1bf5117c99e7',
+ ],
+ [
+ '{TraceId=000000000000000071dc9b0a338729b4, SpanId=690f0b793f302403, RefType=CHILD_OF}',
+ ],
+ [
+ '{"name":"GetConn","timeUnixNano":1721304360109790000}',
+ '{"name":"GotConn","timeUnixNano":1721304360109798000}',
+ '{"name":"WroteHeaders","timeUnixNano":1721304360109823000}',
+ '{"name":"WroteRequest","timeUnixNano":1721304360109826000}',
+ '{"name":"GotFirstResponseByte","timeUnixNano":1721304360151018000}',
+ '{"name":"PutIdleConn","timeUnixNano":1721304360151059000}',
+ '{"name":"ClosedBody","timeUnixNano":1721304360151081000}',
+ ],
+ false,
+ '',
+ 'Unset',
+ 'Client',
+ ],
+ [
+ 1721304360109,
+ '690f0b793f302403',
+ '000000000000000071dc9b0a338729b4',
+ 'frontend',
+ 'HTTP GET: /route',
+ '0',
+ '41332000',
+ [
+ 'service.name',
+ 'signoz.collector.id',
+ 'client-uuid',
+ 'host.name',
+ 'ip',
+ 'opencensus.exporterversion',
+ ],
+ [
+ 'frontend',
+ '70d440fb-4875-4371-9a13-1bf5117c99e7',
+ '6fb81b8ca91b2b4d',
+ '4f6ec470feea',
+ '172.25.0.2',
+ 'Jaeger-Go-2.30.0',
+ ],
+ [
+ '{TraceId=000000000000000071dc9b0a338729b4, SpanId=71dc9b0a338729b4, RefType=CHILD_OF}',
+ ],
+ [],
+ false,
+ '',
+ 'Unset',
+ 'Unspecified',
+ ],
+ [
+ 1721304360103,
+ '26fbd8f91831c199',
+ '000000000000000071dc9b0a338729b4',
+ 'frontend',
+ 'HTTP GET',
+ '3',
+ '48308000',
+ [
+ 'http.method',
+ 'ip',
+ 'opencensus.exporterversion',
+ 'service.name',
+ 'signoz.collector.id',
+ 'client-uuid',
+ 'component',
+ 'http.url',
+ 'net/http.reused',
+ 'net/http.was_idle',
+ 'host.name',
+ 'http.status_code',
+ ],
+ [
+ 'GET',
+ '172.25.0.2',
+ 'Jaeger-Go-2.30.0',
+ 'frontend',
+ '70d440fb-4875-4371-9a13-1bf5117c99e7',
+ '6fb81b8ca91b2b4d',
+ 'net/http',
+ '0.0.0.0:8083',
+ 'true',
+ 'true',
+ '4f6ec470feea',
+ '200',
+ ],
+ [
+ '{TraceId=000000000000000071dc9b0a338729b4, SpanId=55e1875d184a70fe, RefType=CHILD_OF}',
+ ],
+ [
+ '{"name":"GetConn","timeUnixNano":1721304360103810000}',
+ '{"name":"GotConn","timeUnixNano":1721304360103818000}',
+ '{"name":"WroteHeaders","timeUnixNano":1721304360103842000}',
+ '{"name":"WroteRequest","timeUnixNano":1721304360103844000}',
+ '{"name":"GotFirstResponseByte","timeUnixNano":1721304360152042000}',
+ '{"name":"PutIdleConn","timeUnixNano":1721304360152070000}',
+ '{"name":"ClosedBody","timeUnixNano":1721304360152091000}',
+ ],
+ false,
+ '',
+ 'Unset',
+ 'Client',
+ ],
+ [
+ 1721304360103,
+ '55e1875d184a70fe',
+ '000000000000000071dc9b0a338729b4',
+ 'frontend',
+ 'HTTP GET: /route',
+ '0',
+ '48325000',
+ [
+ 'client-uuid',
+ 'host.name',
+ 'ip',
+ 'opencensus.exporterversion',
+ 'service.name',
+ 'signoz.collector.id',
+ ],
+ [
+ '6fb81b8ca91b2b4d',
+ '4f6ec470feea',
+ '172.25.0.2',
+ 'Jaeger-Go-2.30.0',
+ 'frontend',
+ '70d440fb-4875-4371-9a13-1bf5117c99e7',
+ ],
+ [
+ '{TraceId=000000000000000071dc9b0a338729b4, SpanId=71dc9b0a338729b4, RefType=CHILD_OF}',
+ ],
+ [],
+ false,
+ '',
+ 'Unset',
+ 'Unspecified',
+ ],
+ [
+ 1721304360114,
+ '2903e6c8cbe5f8c6',
+ '000000000000000071dc9b0a338729b4',
+ 'frontend',
+ 'HTTP GET',
+ '3',
+ '65640000',
+ [
+ 'http.status_code',
+ 'ip',
+ 'signoz.collector.id',
+ 'client-uuid',
+ 'component',
+ 'http.method',
+ 'net/http.was_idle',
+ 'opencensus.exporterversion',
+ 'service.name',
+ 'host.name',
+ 'http.url',
+ 'net/http.reused',
+ ],
+ [
+ '200',
+ '172.25.0.2',
+ '70d440fb-4875-4371-9a13-1bf5117c99e7',
+ '6fb81b8ca91b2b4d',
+ 'net/http',
+ 'GET',
+ 'true',
+ 'Jaeger-Go-2.30.0',
+ 'frontend',
+ '4f6ec470feea',
+ '0.0.0.0:8083',
+ 'true',
+ ],
+ [
+ '{TraceId=000000000000000071dc9b0a338729b4, SpanId=5bcb6dfccf311afe, RefType=CHILD_OF}',
+ ],
+ [
+ '{"name":"GetConn","timeUnixNano":1721304360114775000}',
+ '{"name":"GotConn","timeUnixNano":1721304360114783000}',
+ '{"name":"WroteHeaders","timeUnixNano":1721304360114809000}',
+ '{"name":"WroteRequest","timeUnixNano":1721304360114812000}',
+ '{"name":"GotFirstResponseByte","timeUnixNano":1721304360180281000}',
+ '{"name":"PutIdleConn","timeUnixNano":1721304360180362000}',
+ '{"name":"ClosedBody","timeUnixNano":1721304360180389000}',
+ ],
+ false,
+ '',
+ 'Unset',
+ 'Client',
+ ],
+ [
+ 1721304360114,
+ '5bcb6dfccf311afe',
+ '000000000000000071dc9b0a338729b4',
+ 'frontend',
+ 'HTTP GET: /route',
+ '0',
+ '65664000',
+ [
+ 'client-uuid',
+ 'host.name',
+ 'ip',
+ 'opencensus.exporterversion',
+ 'service.name',
+ 'signoz.collector.id',
+ ],
+ [
+ '6fb81b8ca91b2b4d',
+ '4f6ec470feea',
+ '172.25.0.2',
+ 'Jaeger-Go-2.30.0',
+ 'frontend',
+ '70d440fb-4875-4371-9a13-1bf5117c99e7',
+ ],
+ [
+ '{TraceId=000000000000000071dc9b0a338729b4, SpanId=71dc9b0a338729b4, RefType=CHILD_OF}',
+ ],
+ [],
+ false,
+ '',
+ 'Unset',
+ 'Unspecified',
+ ],
+ [
+ 1721304360151,
+ '3ed0b66560a03e14',
+ '000000000000000071dc9b0a338729b4',
+ 'frontend',
+ 'HTTP GET',
+ '3',
+ '78546000',
+ [
+ 'http.status_code',
+ 'service.name',
+ 'signoz.collector.id',
+ 'client-uuid',
+ 'component',
+ 'host.name',
+ 'http.method',
+ 'http.url',
+ 'ip',
+ 'net/http.reused',
+ 'net/http.was_idle',
+ 'opencensus.exporterversion',
+ ],
+ [
+ '200',
+ 'frontend',
+ '70d440fb-4875-4371-9a13-1bf5117c99e7',
+ '6fb81b8ca91b2b4d',
+ 'net/http',
+ '4f6ec470feea',
+ 'GET',
+ '0.0.0.0:8083',
+ '172.25.0.2',
+ 'true',
+ 'true',
+ 'Jaeger-Go-2.30.0',
+ ],
+ [
+ '{TraceId=000000000000000071dc9b0a338729b4, SpanId=352ac0b61c8c826f, RefType=CHILD_OF}',
+ ],
+ [
+ '{"name":"GetConn","timeUnixNano":1721304360151933000}',
+ '{"name":"GotConn","timeUnixNano":1721304360151942000}',
+ '{"name":"WroteHeaders","timeUnixNano":1721304360151967000}',
+ '{"name":"WroteRequest","timeUnixNano":1721304360151969000}',
+ '{"name":"GotFirstResponseByte","timeUnixNano":1721304360230321000}',
+ '{"name":"PutIdleConn","timeUnixNano":1721304360230365000}',
+ '{"name":"ClosedBody","timeUnixNano":1721304360230449000}',
+ ],
+ false,
+ '',
+ 'Unset',
+ 'Client',
+ ],
+ [
+ 1721304360151,
+ '352ac0b61c8c826f',
+ '000000000000000071dc9b0a338729b4',
+ 'frontend',
+ 'HTTP GET: /route',
+ '0',
+ '78561000',
+ [
+ 'client-uuid',
+ 'host.name',
+ 'ip',
+ 'opencensus.exporterversion',
+ 'service.name',
+ 'signoz.collector.id',
+ ],
+ [
+ '6fb81b8ca91b2b4d',
+ '4f6ec470feea',
+ '172.25.0.2',
+ 'Jaeger-Go-2.30.0',
+ 'frontend',
+ '70d440fb-4875-4371-9a13-1bf5117c99e7',
+ ],
+ [
+ '{TraceId=000000000000000071dc9b0a338729b4, SpanId=71dc9b0a338729b4, RefType=CHILD_OF}',
+ ],
+ [],
+ false,
+ '',
+ 'Unset',
+ 'Unspecified',
+ ],
+ [
+ 1721304359453,
+ '71dc9b0a338729b4',
+ '000000000000000071dc9b0a338729b4',
+ 'frontend',
+ 'HTTP GET /dispatch',
+ '2',
+ '776756000',
+ [
+ 'http.status_code',
+ 'http.url',
+ 'opencensus.exporterversion',
+ 'sampler.param',
+ 'client-uuid',
+ 'component',
+ 'host.name',
+ 'http.method',
+ 'signoz.collector.id',
+ 'ip',
+ 'sampler.type',
+ 'service.name',
+ ],
+ [
+ '200',
+ '/dispatch?customer=731\u0026nonse=0.8022286220408668',
+ 'Jaeger-Go-2.30.0',
+ 'true',
+ '6fb81b8ca91b2b4d',
+ 'net/http',
+ '4f6ec470feea',
+ 'GET',
+ '70d440fb-4875-4371-9a13-1bf5117c99e7',
+ '172.25.0.2',
+ 'const',
+ 'frontend',
+ ],
+ ['{TraceId=000000000000000071dc9b0a338729b4, SpanId=, RefType=CHILD_OF}'],
+ [
+ '{"name":"HTTP request received","timeUnixNano":1721304359453904000,"attributeMap":{"level":"info","method":"GET","url":"/dispatch?customer=731\\u0026nonse=0.8022286220408668"}}',
+ '{"name":"Getting customer","timeUnixNano":1721304359453990000,"attributeMap":{"customer_id":"731","level":"info"}}',
+ '{"name":"Found customer","timeUnixNano":1721304359803486000,"attributeMap":{"level":"info"}}',
+ '{"name":"baggage","timeUnixNano":1721304359803546000,"attributeMap":{"key":"customer","value":"Japanese Desserts"}}',
+ '{"name":"Finding nearest drivers","timeUnixNano":1721304359803551000,"attributeMap":{"level":"info","location":"728,326"}}',
+ '{"name":"Found drivers","timeUnixNano":1721304359976695000,"attributeMap":{"level":"info"}}',
+ '{"name":"Finding route","timeUnixNano":1721304359977409000,"attributeMap":{"dropoff":"728,326","level":"info","pickup":"165,543"}}',
+ '{"name":"Finding route","timeUnixNano":1721304359977989000,"attributeMap":{"dropoff":"728,326","level":"info","pickup":"720,72"}}',
+ '{"name":"Finding route","timeUnixNano":1721304359978530000,"attributeMap":{"dropoff":"728,326","level":"info","pickup":"530,911"}}',
+ '{"name":"Finding route","timeUnixNano":1721304360032532000,"attributeMap":{"dropoff":"728,326","level":"info","pickup":"686,946"}}',
+ '{"name":"Finding route","timeUnixNano":1721304360043941000,"attributeMap":{"dropoff":"728,326","level":"info","pickup":"222,675"}}',
+ '{"name":"Finding route","timeUnixNano":1721304360054028000,"attributeMap":{"dropoff":"728,326","level":"info","pickup":"660,997"}}',
+ '{"name":"Finding route","timeUnixNano":1721304360103005000,"attributeMap":{"dropoff":"728,326","level":"info","pickup":"609,233"}}',
+ '{"name":"Finding route","timeUnixNano":1721304360109005000,"attributeMap":{"dropoff":"728,326","level":"info","pickup":"516,970"}}',
+ '{"name":"Finding route","timeUnixNano":1721304360113986000,"attributeMap":{"dropoff":"728,326","level":"info","pickup":"524,763"}}',
+ '{"name":"Finding route","timeUnixNano":1721304360151099000,"attributeMap":{"dropoff":"728,326","level":"info","pickup":"267,822"}}',
+ '{"name":"Found routes","timeUnixNano":1721304360230473000,"attributeMap":{"level":"info"}}',
+ '{"name":"Dispatch successful","timeUnixNano":1721304360230582000,"attributeMap":{"driver":"T718678C","eta":"2m0s","level":"info"}}',
+ ],
+ false,
+ '',
+ 'Unset',
+ 'Server',
+ ],
+ [
+ 1721304359980,
+ '472ffaa577ce6b0e',
+ '000000000000000071dc9b0a338729b4',
+ 'route',
+ 'HTTP GET /route',
+ '2',
+ '52268000',
+ [
+ 'component',
+ 'host.name',
+ 'http.url',
+ 'opencensus.exporterversion',
+ 'service.name',
+ 'client-uuid',
+ 'http.method',
+ 'http.status_code',
+ 'ip',
+ 'signoz.collector.id',
+ ],
+ [
+ 'net/http',
+ '4f6ec470feea',
+ '/route?dropoff=728%2C326\u0026pickup=720%2C72',
+ 'Jaeger-Go-2.30.0',
+ 'route',
+ '64a18ffd5f8adbfb',
+ 'GET',
+ '200',
+ '172.25.0.2',
+ '70d440fb-4875-4371-9a13-1bf5117c99e7',
+ ],
+ [
+ '{TraceId=000000000000000071dc9b0a338729b4, SpanId=3ed7b128c9d765bf, RefType=CHILD_OF}',
+ ],
+ [
+ '{"name":"HTTP request received","timeUnixNano":1721304359980063000,"attributeMap":{"level":"info","method":"GET","url":"/route?dropoff=728%2C326\\u0026pickup=720%2C72"}}',
+ ],
+ false,
+ '',
+ 'Unset',
+ 'Server',
+ ],
+ [
+ 1721304359979,
+ '2a835737138b4671',
+ '000000000000000071dc9b0a338729b4',
+ 'route',
+ 'HTTP GET /route',
+ '2',
+ '64209000',
+ [
+ 'service.name',
+ 'signoz.collector.id',
+ 'client-uuid',
+ 'component',
+ 'host.name',
+ 'http.url',
+ 'opencensus.exporterversion',
+ 'http.method',
+ 'http.status_code',
+ 'ip',
+ ],
+ [
+ 'route',
+ '70d440fb-4875-4371-9a13-1bf5117c99e7',
+ '64a18ffd5f8adbfb',
+ 'net/http',
+ '4f6ec470feea',
+ '/route?dropoff=728%2C326\u0026pickup=530%2C911',
+ 'Jaeger-Go-2.30.0',
+ 'GET',
+ '200',
+ '172.25.0.2',
+ ],
+ [
+ '{TraceId=000000000000000071dc9b0a338729b4, SpanId=2b837048c74fc169, RefType=CHILD_OF}',
+ ],
+ [
+ '{"name":"HTTP request received","timeUnixNano":1721304359979511000,"attributeMap":{"level":"info","method":"GET","url":"/route?dropoff=728%2C326\\u0026pickup=530%2C911"}}',
+ ],
+ false,
+ '',
+ 'Unset',
+ 'Server',
+ ],
+ [
+ 1721304359980,
+ '28a8a67365d0bd8b',
+ '000000000000000071dc9b0a338729b4',
+ 'route',
+ 'HTTP GET /route',
+ '2',
+ '73145000',
+ [
+ 'http.method',
+ 'http.status_code',
+ 'opencensus.exporterversion',
+ 'signoz.collector.id',
+ 'component',
+ 'host.name',
+ 'ip',
+ 'service.name',
+ 'client-uuid',
+ 'http.url',
+ ],
+ [
+ 'GET',
+ '200',
+ 'Jaeger-Go-2.30.0',
+ '70d440fb-4875-4371-9a13-1bf5117c99e7',
+ 'net/http',
+ '4f6ec470feea',
+ '172.25.0.2',
+ 'route',
+ '64a18ffd5f8adbfb',
+ '/route?dropoff=728%2C326\u0026pickup=165%2C543',
+ ],
+ [
+ '{TraceId=000000000000000071dc9b0a338729b4, SpanId=3d559df27da11f0f, RefType=CHILD_OF}',
+ ],
+ [
+ '{"name":"HTTP request received","timeUnixNano":1721304359980599000,"attributeMap":{"level":"info","method":"GET","url":"/route?dropoff=728%2C326\\u0026pickup=165%2C543"}}',
+ ],
+ false,
+ '',
+ 'Unset',
+ 'Server',
+ ],
+ [
+ 1721304360033,
+ '38de18f04671e5db',
+ '000000000000000071dc9b0a338729b4',
+ 'route',
+ 'HTTP GET /route',
+ '2',
+ '69230000',
+ [
+ 'http.status_code',
+ 'ip',
+ 'opencensus.exporterversion',
+ 'service.name',
+ 'signoz.collector.id',
+ 'client-uuid',
+ 'component',
+ 'http.method',
+ 'host.name',
+ 'http.url',
+ ],
+ [
+ '200',
+ '172.25.0.2',
+ 'Jaeger-Go-2.30.0',
+ 'route',
+ '70d440fb-4875-4371-9a13-1bf5117c99e7',
+ '64a18ffd5f8adbfb',
+ 'net/http',
+ 'GET',
+ '4f6ec470feea',
+ '/route?dropoff=728%2C326\u0026pickup=686%2C946',
+ ],
+ [
+ '{TraceId=000000000000000071dc9b0a338729b4, SpanId=4f50f3f099502699, RefType=CHILD_OF}',
+ ],
+ [
+ '{"name":"HTTP request received","timeUnixNano":1721304360033555000,"attributeMap":{"level":"info","method":"GET","url":"/route?dropoff=728%2C326\\u0026pickup=686%2C946"}}',
+ ],
+ false,
+ '',
+ 'Unset',
+ 'Server',
+ ],
+ [
+ 1721304360054,
+ '3420998a476237ce',
+ '000000000000000071dc9b0a338729b4',
+ 'route',
+ 'HTTP GET /route',
+ '2',
+ '53811000',
+ [
+ 'client-uuid',
+ 'host.name',
+ 'http.status_code',
+ 'http.url',
+ 'opencensus.exporterversion',
+ 'service.name',
+ 'component',
+ 'http.method',
+ 'ip',
+ 'signoz.collector.id',
+ ],
+ [
+ '64a18ffd5f8adbfb',
+ '4f6ec470feea',
+ '200',
+ '/route?dropoff=728%2C326\u0026pickup=660%2C997',
+ 'Jaeger-Go-2.30.0',
+ 'route',
+ 'net/http',
+ 'GET',
+ '172.25.0.2',
+ '70d440fb-4875-4371-9a13-1bf5117c99e7',
+ ],
+ [
+ '{TraceId=000000000000000071dc9b0a338729b4, SpanId=1968d4e502b91ac4, RefType=CHILD_OF}',
+ ],
+ [
+ '{"name":"HTTP request received","timeUnixNano":1721304360054989000,"attributeMap":{"level":"info","method":"GET","url":"/route?dropoff=728%2C326\\u0026pickup=660%2C997"}}',
+ ],
+ false,
+ '',
+ 'Unset',
+ 'Server',
+ ],
+ [
+ 1721304360044,
+ '0c5a7edd2e365047',
+ '000000000000000071dc9b0a338729b4',
+ 'route',
+ 'HTTP GET /route',
+ '2',
+ '68850000',
+ [
+ 'opencensus.exporterversion',
+ 'service.name',
+ 'signoz.collector.id',
+ 'client-uuid',
+ 'ip',
+ 'http.method',
+ 'http.status_code',
+ 'http.url',
+ 'component',
+ 'host.name',
+ ],
+ [
+ 'Jaeger-Go-2.30.0',
+ 'route',
+ '70d440fb-4875-4371-9a13-1bf5117c99e7',
+ '64a18ffd5f8adbfb',
+ '172.25.0.2',
+ 'GET',
+ '200',
+ '/route?dropoff=728%2C326\u0026pickup=222%2C675',
+ 'net/http',
+ '4f6ec470feea',
+ ],
+ [
+ '{TraceId=000000000000000071dc9b0a338729b4, SpanId=032263185bbbf38c, RefType=CHILD_OF}',
+ ],
+ [
+ '{"name":"HTTP request received","timeUnixNano":1721304360044934000,"attributeMap":{"level":"info","method":"GET","url":"/route?dropoff=728%2C326\\u0026pickup=222%2C675"}}',
+ ],
+ false,
+ '',
+ 'Unset',
+ 'Server',
+ ],
+ [
+ 1721304360103,
+ '538b56106b402474',
+ '000000000000000071dc9b0a338729b4',
+ 'route',
+ 'HTTP GET /route',
+ '2',
+ '46813000',
+ [
+ 'http.url',
+ 'opencensus.exporterversion',
+ 'client-uuid',
+ 'component',
+ 'host.name',
+ 'http.method',
+ 'http.status_code',
+ 'ip',
+ 'service.name',
+ 'signoz.collector.id',
+ ],
+ [
+ '/route?dropoff=728%2C326\u0026pickup=609%2C233',
+ 'Jaeger-Go-2.30.0',
+ '64a18ffd5f8adbfb',
+ 'net/http',
+ '4f6ec470feea',
+ 'GET',
+ '200',
+ '172.25.0.2',
+ 'route',
+ '70d440fb-4875-4371-9a13-1bf5117c99e7',
+ ],
+ [
+ '{TraceId=000000000000000071dc9b0a338729b4, SpanId=26fbd8f91831c199, RefType=CHILD_OF}',
+ ],
+ [
+ '{"name":"HTTP request received","timeUnixNano":1721304360103976000,"attributeMap":{"level":"info","method":"GET","url":"/route?dropoff=728%2C326\\u0026pickup=609%2C233"}}',
+ ],
+ false,
+ '',
+ 'Unset',
+ 'Server',
+ ],
+ [
+ 1721304360109,
+ '668e5fc06e78796b',
+ '000000000000000071dc9b0a338729b4',
+ 'route',
+ 'HTTP GET /route',
+ '2',
+ '41012000',
+ [
+ 'component',
+ 'http.method',
+ 'service.name',
+ 'signoz.collector.id',
+ 'client-uuid',
+ 'host.name',
+ 'http.status_code',
+ 'http.url',
+ 'ip',
+ 'opencensus.exporterversion',
+ ],
+ [
+ 'net/http',
+ 'GET',
+ 'route',
+ '70d440fb-4875-4371-9a13-1bf5117c99e7',
+ '64a18ffd5f8adbfb',
+ '4f6ec470feea',
+ '200',
+ '/route?dropoff=728%2C326\u0026pickup=516%2C970',
+ '172.25.0.2',
+ 'Jaeger-Go-2.30.0',
+ ],
+ [
+ '{TraceId=000000000000000071dc9b0a338729b4, SpanId=255866d4d4b6ec08, RefType=CHILD_OF}',
+ ],
+ [
+ '{"name":"HTTP request received","timeUnixNano":1721304360109961000,"attributeMap":{"level":"info","method":"GET","url":"/route?dropoff=728%2C326\\u0026pickup=516%2C970"}}',
+ ],
+ false,
+ '',
+ 'Unset',
+ 'Server',
+ ],
+ [
+ 1721304360114,
+ '7eda7467eedf3b92',
+ '000000000000000071dc9b0a338729b4',
+ 'route',
+ 'HTTP GET /route',
+ '2',
+ '65157000',
+ [
+ 'host.name',
+ 'ip',
+ 'service.name',
+ 'http.status_code',
+ 'http.url',
+ 'opencensus.exporterversion',
+ 'signoz.collector.id',
+ 'client-uuid',
+ 'component',
+ 'http.method',
+ ],
+ [
+ '4f6ec470feea',
+ '172.25.0.2',
+ 'route',
+ '200',
+ '/route?dropoff=728%2C326\u0026pickup=524%2C763',
+ 'Jaeger-Go-2.30.0',
+ '70d440fb-4875-4371-9a13-1bf5117c99e7',
+ '64a18ffd5f8adbfb',
+ 'net/http',
+ 'GET',
+ ],
+ [
+ '{TraceId=000000000000000071dc9b0a338729b4, SpanId=2903e6c8cbe5f8c6, RefType=CHILD_OF}',
+ ],
+ [
+ '{"name":"HTTP request received","timeUnixNano":1721304360114939000,"attributeMap":{"level":"info","method":"GET","url":"/route?dropoff=728%2C326\\u0026pickup=524%2C763"}}',
+ ],
+ false,
+ '',
+ 'Unset',
+ 'Server',
+ ],
+ [
+ 1721304360152,
+ '231d5099ef1d826f',
+ '000000000000000071dc9b0a338729b4',
+ 'route',
+ 'HTTP GET /route',
+ '2',
+ '77985000',
+ [
+ 'host.name',
+ 'http.method',
+ 'http.status_code',
+ 'component',
+ 'http.url',
+ 'ip',
+ 'opencensus.exporterversion',
+ 'service.name',
+ 'signoz.collector.id',
+ 'client-uuid',
+ ],
+ [
+ '4f6ec470feea',
+ 'GET',
+ '200',
+ 'net/http',
+ '/route?dropoff=728%2C326\u0026pickup=267%2C822',
+ '172.25.0.2',
+ 'Jaeger-Go-2.30.0',
+ 'route',
+ '70d440fb-4875-4371-9a13-1bf5117c99e7',
+ '64a18ffd5f8adbfb',
+ ],
+ [
+ '{TraceId=000000000000000071dc9b0a338729b4, SpanId=3ed0b66560a03e14, RefType=CHILD_OF}',
+ ],
+ [
+ '{"name":"HTTP request received","timeUnixNano":1721304360152182000,"attributeMap":{"level":"info","method":"GET","url":"/route?dropoff=728%2C326\\u0026pickup=267%2C822"}}',
+ ],
+ false,
+ '',
+ 'Unset',
+ 'Server',
+ ],
+ ],
+ isSubTree: false,
+ },
+];
diff --git a/frontend/src/mocks-server/handlers.ts b/frontend/src/mocks-server/handlers.ts
index 22978717a5..55b5842612 100644
--- a/frontend/src/mocks-server/handlers.ts
+++ b/frontend/src/mocks-server/handlers.ts
@@ -13,6 +13,7 @@ import { membersResponse } from './__mockdata__/members';
import { queryRangeSuccessResponse } from './__mockdata__/query_range';
import { serviceSuccessResponse } from './__mockdata__/services';
import { topLevelOperationSuccessResponse } from './__mockdata__/top_level_operations';
+import { traceDetailResponse } from './__mockdata__/tracedetail';
export const handlers = [
rest.post('http://localhost/api/v3/query_range', (req, res, ctx) =>
@@ -230,6 +231,12 @@ export const handlers = [
}),
),
),
+
+ rest.get(
+ 'http://localhost/api/v1/traces/000000000000000071dc9b0a338729b4',
+ (req, res, ctx) => res(ctx.status(200), ctx.json(traceDetailResponse)),
+ ),
+
rest.post('http://localhost/api/v1//channels', (_, res, ctx) =>
res(ctx.status(200), ctx.json(allAlertChannels)),
),
diff --git a/frontend/src/pages/TraceDetail/__test__/TraceDetail.test.tsx b/frontend/src/pages/TraceDetail/__test__/TraceDetail.test.tsx
new file mode 100644
index 0000000000..b16bb6c735
--- /dev/null
+++ b/frontend/src/pages/TraceDetail/__test__/TraceDetail.test.tsx
@@ -0,0 +1,214 @@
+/* eslint-disable sonarjs/no-duplicate-string */
+/* eslint-disable @typescript-eslint/explicit-function-return-type */
+import ROUTES from 'constants/routes';
+import { MemoryRouter, Route } from 'react-router-dom';
+import { fireEvent, render, screen } from 'tests/test-utils';
+
+import TraceDetail from '..';
+
+window.HTMLElement.prototype.scrollIntoView = jest.fn();
+
+jest.mock('react-router-dom', () => ({
+ ...jest.requireActual('react-router-dom'),
+ useLocation: (): { pathname: string; search: string } => ({
+ pathname: `${process.env.FRONTEND_API_ENDPOINT}${ROUTES.TRACE_DETAIL}`,
+ search: '?spanId=28a8a67365d0bd8b&levelUp=0&levelDown=0',
+ }),
+
+ useParams: jest.fn().mockReturnValue({
+ id: '000000000000000071dc9b0a338729b4',
+ }),
+}));
+
+jest.mock('container/TraceFlameGraph/index.tsx', () => ({
+ __esModule: true,
+ default: (): JSX.Element => TraceFlameGraph
,
+}));
+
+describe('TraceDetail', () => {
+ it('should render tracedetail', async () => {
+ const { findByText, getByText, getAllByText, getByPlaceholderText } = render(
+
+
+
+
+ ,
+ ,
+ );
+ expect(await findByText('Trace Details')).toBeInTheDocument();
+
+ // as we have an active spanId, it should scroll to the selected span
+ expect(window.HTMLElement.prototype.scrollIntoView).toHaveBeenCalled();
+
+ // assertions
+ expect(getByText('TraceFlameGraph')).toBeInTheDocument();
+ expect(getByText('Focus on selected span')).toBeInTheDocument();
+
+ // span action buttons
+ expect(getByText('Reset Focus')).toBeInTheDocument();
+ expect(getByText('50 Spans')).toBeInTheDocument();
+
+ // trace span detail - parent -> child
+ expect(getAllByText('frontend')[0]).toBeInTheDocument();
+ expect(getByText('776.76 ms')).toBeInTheDocument();
+ [
+ { trace: 'HTTP GET /dispatch', duration: '776.76 ms', count: '50' },
+ { trace: 'HTTP GET: /customer', duration: '349.44 ms', count: '4' },
+ {
+ trace: '/driver.DriverService/FindNearest',
+ duration: '173.10 ms',
+ count: '15',
+ },
+ // and so on ...
+ ].forEach((traceDetail) => {
+ expect(getByText(traceDetail.trace)).toBeInTheDocument();
+ expect(getByText(traceDetail.duration)).toBeInTheDocument();
+ expect(getByText(traceDetail.count)).toBeInTheDocument();
+ });
+
+ // Details for selected Span
+ expect(getByText('Details for selected Span')).toBeInTheDocument();
+ ['Service', 'Operation', 'SpanKind', 'StatusCodeString'].forEach((detail) => {
+ expect(getByText(detail)).toBeInTheDocument();
+ });
+
+ // go to related logs button
+ const goToRelatedLogsButton = getByText('Go to Related logs');
+ expect(goToRelatedLogsButton).toBeInTheDocument();
+
+ // Tag and Event tabs
+ expect(getByText('Tags')).toBeInTheDocument();
+ expect(getByText('Events')).toBeInTheDocument();
+ expect(getByPlaceholderText('traceDetails:search_tags')).toBeInTheDocument();
+
+ // Tag details
+ [
+ { title: 'client-uuid', value: '64a18ffd5f8adbfb' },
+ { title: 'component', value: 'net/http' },
+ { title: 'host.name', value: '4f6ec470feea' },
+ { title: 'http.method', value: 'GET' },
+ { title: 'http.url', value: '/route?dropoff=728%2C326&pickup=165%2C543' },
+ { title: 'http.status_code', value: '200' },
+ { title: 'ip', value: '172.25.0.2' },
+ { title: 'opencensus.exporterversion', value: 'Jaeger-Go-2.30.0' },
+ ].forEach((tag) => {
+ expect(getByText(tag.title)).toBeInTheDocument();
+ expect(getByText(tag.value)).toBeInTheDocument();
+ });
+
+ // see full value
+ expect(getAllByText('View full value')[0]).toBeInTheDocument();
+ });
+
+ it('should render tracedetail events tab', async () => {
+ const { findByText, getByText } = render(
+
+
+
+
+ ,
+ ,
+ );
+ expect(await findByText('Trace Details')).toBeInTheDocument();
+
+ fireEvent.click(getByText('Events'));
+
+ expect(await screen.findByText('HTTP request received')).toBeInTheDocument();
+
+ // event details
+ [
+ { title: 'Event Start Time', value: '527.60 ms' },
+ { title: 'level', value: 'info' },
+ ].forEach((tag) => {
+ expect(getByText(tag.title)).toBeInTheDocument();
+ expect(getByText(tag.value)).toBeInTheDocument();
+ });
+
+ expect(getByText('View full log event message')).toBeInTheDocument();
+ });
+
+ it('should toggle slider - selected span details', async () => {
+ const { findByTestId, queryByText } = render(
+
+
+
+
+ ,
+ ,
+ );
+ const slider = await findByTestId('span-details-sider');
+ expect(slider).toBeInTheDocument();
+
+ fireEvent.click(
+ slider.querySelector('.ant-layout-sider-trigger') as HTMLElement,
+ );
+
+ expect(queryByText('Details for selected Span')).not.toBeInTheDocument();
+ });
+
+ it('should be able to selected another span and see its detail', async () => {
+ const { getByText } = render(
+
+
+
+
+ ,
+ ,
+ );
+
+ expect(await screen.findByText('Trace Details')).toBeInTheDocument();
+
+ const spanTitle = getByText('/driver.DriverService/FindNearest');
+ expect(spanTitle).toBeInTheDocument();
+ fireEvent.click(spanTitle);
+
+ // Tag details
+ [
+ { title: 'client-uuid', value: '6fb81b8ca91b2b4d' },
+ { title: 'component', value: 'gRPC' },
+ { title: 'host.name', value: '4f6ec470feea' },
+ ].forEach((tag) => {
+ expect(getByText(tag.title)).toBeInTheDocument();
+ expect(getByText(tag.value)).toBeInTheDocument();
+ });
+ });
+
+ it('focus on selected span and reset focus action', async () => {
+ const { getByText, getAllByText } = render(
+
+
+
+
+ ,
+ ,
+ );
+
+ expect(await screen.findByText('Trace Details')).toBeInTheDocument();
+
+ const spanTitle = getByText('/driver.DriverService/FindNearest');
+ expect(spanTitle).toBeInTheDocument();
+ fireEvent.click(spanTitle);
+
+ expect(await screen.findByText('6fb81b8ca91b2b4d')).toBeInTheDocument();
+
+ // focus on selected span
+ const focusButton = getByText('Focus on selected span');
+ expect(focusButton).toBeInTheDocument();
+ fireEvent.click(focusButton);
+
+ // assert selected span
+ expect(getByText('15 Spans')).toBeInTheDocument();
+ expect(getAllByText('/driver.DriverService/FindNearest')).toHaveLength(3);
+ expect(getByText('173.10 ms')).toBeInTheDocument();
+
+ // reset focus
+ expect(screen.queryByText('HTTP GET /dispatch')).not.toBeInTheDocument();
+
+ const resetFocusButton = getByText('Reset Focus');
+ expect(resetFocusButton).toBeInTheDocument();
+ fireEvent.click(resetFocusButton);
+
+ expect(window.HTMLElement.prototype.scrollIntoView).toHaveBeenCalled();
+ expect(screen.queryByText('HTTP GET /dispatch')).toBeInTheDocument();
+ });
+});