You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@skywalking.apache.org by ha...@apache.org on 2018/09/28 08:05:32 UTC
[incubator-skywalking-ui] branch 6.0.0/dev updated (ad2dcf2 ->
a32cb5a)
This is an automated email from the ASF dual-hosted git repository.
hanahmily pushed a change to branch 6.0.0/dev
in repository https://gitbox.apache.org/repos/asf/incubator-skywalking-ui.git.
from ad2dcf2 Fix metric name with oal
new bdda9fc Fix heatmap no data issues
new a885a71 Update service page with new query protocol
new a32cb5a Update trace data with new protocol
The 3 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.
Summary of changes:
.roadhogrc.mock.js | 4 ++-
mock/aggregation.js | 6 +++-
mock/trace.js | 16 +++++------
query-protocol | 2 +-
src/components/Charts/HeatMap/index.js | 1 +
src/components/Trace/TraceList/index.js | 6 ++--
src/components/TraceStack/index.js | 2 +-
src/models/endpoint.js | 4 +--
src/models/service.js | 51 +++++++++++++++++----------------
src/models/trace.js | 4 +--
src/routes/Endpoint/Endpoint.js | 2 +-
src/routes/Trace/TraceSearch.js | 8 +++---
12 files changed, 57 insertions(+), 49 deletions(-)
[incubator-skywalking-ui] 01/03: Fix heatmap no data issues
Posted by ha...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
hanahmily pushed a commit to branch 6.0.0/dev
in repository https://gitbox.apache.org/repos/asf/incubator-skywalking-ui.git
commit bdda9fcb07d5e8fd1543fc204700fbcd4644e81f
Author: Gao Hongtao <ha...@gmail.com>
AuthorDate: Fri Sep 28 13:25:30 2018 +0800
Fix heatmap no data issues
---
src/components/Charts/HeatMap/index.js | 1 +
1 file changed, 1 insertion(+)
diff --git a/src/components/Charts/HeatMap/index.js b/src/components/Charts/HeatMap/index.js
index 07ac208..e36e716 100644
--- a/src/components/Charts/HeatMap/index.js
+++ b/src/components/Charts/HeatMap/index.js
@@ -127,6 +127,7 @@ class HeatMap extends Component {
}ms`
);
}
+ mergeSource.push(...source);
}
const cols = {
datetime: {
[incubator-skywalking-ui] 02/03: Update service page with new query
protocol
Posted by ha...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
hanahmily pushed a commit to branch 6.0.0/dev
in repository https://gitbox.apache.org/repos/asf/incubator-skywalking-ui.git
commit a885a71abfcf0ad430fb5d5d823a2f5987c75750
Author: Gao Hongtao <ha...@gmail.com>
AuthorDate: Fri Sep 28 15:49:11 2018 +0800
Update service page with new query protocol
---
.roadhogrc.mock.js | 4 +++-
mock/aggregation.js | 6 +++++-
query-protocol | 2 +-
src/models/service.js | 51 ++++++++++++++++++++++++++-------------------------
4 files changed, 35 insertions(+), 28 deletions(-)
diff --git a/.roadhogrc.mock.js b/.roadhogrc.mock.js
index 1d4608c..703c841 100644
--- a/.roadhogrc.mock.js
+++ b/.roadhogrc.mock.js
@@ -7,7 +7,7 @@ import { makeExecutableSchema, addMockFunctionsToSchema } from 'graphql-tools';
import { graphql } from 'graphql';
import { ClusterBrief, getServiceInstances, getAllServices, searchEndpoint } from './mock/metadata';
import { IntValues, Thermodynamic } from './mock/metric';
-import { getServiceTopN, getAllEndpointTopN } from './mock/aggregation';
+import { getServiceTopN, getAllEndpointTopN, getServiceInstanceTopN, getEndpointTopN } from './mock/aggregation';
const noMock = process.env.NO_MOCK === 'true';
@@ -20,6 +20,8 @@ const resolvers = {
getGlobalTopology,
getServiceTopology,
searchEndpoint,
+ getEndpointTopN,
+ getServiceInstanceTopN,
}
}
diff --git a/mock/aggregation.js b/mock/aggregation.js
index c76fa65..62c96fc 100644
--- a/mock/aggregation.js
+++ b/mock/aggregation.js
@@ -22,7 +22,11 @@ export default {
const data = mockjs.mock({ 'array|10': [{ 'id|+1': 1, name: '@name', 'value|100-10000': 1 }]});
return data.array;
},
- getAllServiceInstanceTopN: () => {
+ getServiceInstanceTopN: () => {
+ const data = mockjs.mock({ 'array|10': [{ 'id|+1': 1, name: '@name', 'value|100-10000': 1 }]});
+ return data.array;
+ },
+ getEndpointTopN: () => {
const data = mockjs.mock({ 'array|10': [{ 'id|+1': 1, name: '@name', 'value|100-10000': 1 }]});
return data.array;
},
diff --git a/query-protocol b/query-protocol
index acffe13..f5de93a 160000
--- a/query-protocol
+++ b/query-protocol
@@ -1 +1 @@
-Subproject commit acffe1341e6bcefcdd3e2a6ebfb0c00db6e9af35
+Subproject commit f5de93a2b0b5ab6dbf2a39d671560f285ab67675
diff --git a/src/models/service.js b/src/models/service.js
index 6cb391b..cedea41 100644
--- a/src/models/service.js
+++ b/src/models/service.js
@@ -30,29 +30,29 @@ const optionsQuery = `
const dataQuery = `
query Service($serviceId: ID!, $duration: Duration!) {
- getSlowEndpoint: getTopN(duration: $duration, condition: {
- name: "slowEndpoint",
+ getSlowEndpoint: getEndpointTopN(
+ serviceId: $serviceId
+ duration: $duration
+ name: "endpoint_avg",
topN: 10,
- order: DES,
- filterScope: ENDPOINT,
- filterId: $serviceId
- }) {
+ order: DES
+ ) {
key: id
label: name
value
}
- getServiceInstanceThroughput: getTopN(duration: $duration, condition: {
- name: "serviceInstanceThroughtput",
+ getServiceInstanceThroughput: getServiceInstanceTopN(
+ serviceId: $serviceId
+ duration: $duration
+ name: "service_instance_cpm",
topN: 10,
- order: DES,
- filterScope: SERVICE_INSTANCE,
- filterId: $serviceId
- }) {
+ order: DES
+ ) {
key: id
label: name
value
}
- getServiceInstances(duration: $duration, id: $serviceId) {
+ getServiceInstances(duration: $duration, serviceId: $serviceId) {
key: id
name
attributes {
@@ -69,10 +69,11 @@ const dataQuery = `
isReal
}
calls {
+ id
source
target
callType
- cpm
+ detectPoint
}
}
}
@@ -81,7 +82,7 @@ const dataQuery = `
const serviceInstanceQuery = `
query ServiceInstance($serviceInstanceId: ID!, $duration: Duration!) {
getServiceInstanceResponseTimeTrend: getLinearIntValues(metric: {
- name: "serviceInstanceResponseTimeTrend"
+ name: "service_instance_resp_time"
id: $serviceInstanceId
}, duration: $duration) {
values {
@@ -89,7 +90,7 @@ query ServiceInstance($serviceInstanceId: ID!, $duration: Duration!) {
}
}
getServiceInstanceThroughputTrend: getLinearIntValues(metric: {
- name: "serviceInstanceThroughputTrend"
+ name: "service_instance_cpm"
id: $serviceInstanceId
}, duration: $duration) {
values {
@@ -97,7 +98,7 @@ query ServiceInstance($serviceInstanceId: ID!, $duration: Duration!) {
}
}
getCPUTrend: getLinearIntValues(metric: {
- name: "CPUTrend"
+ name: "instance_jvm_cpu"
id: $serviceInstanceId
}, duration: $duration) {
values {
@@ -105,7 +106,7 @@ query ServiceInstance($serviceInstanceId: ID!, $duration: Duration!) {
}
}
youngGCCount: getLinearIntValues(metric: {
- name: "youngGCCount"
+ name: "instance_jvm_young_gc_count"
id: $serviceInstanceId
}, duration: $duration) {
values {
@@ -113,7 +114,7 @@ query ServiceInstance($serviceInstanceId: ID!, $duration: Duration!) {
}
}
oldGCCount: getLinearIntValues(metric: {
- name: "oldGCCount"
+ name: "instance_jvm_old_gc_count"
id: $serviceInstanceId
}, duration: $duration) {
values {
@@ -121,7 +122,7 @@ query ServiceInstance($serviceInstanceId: ID!, $duration: Duration!) {
}
}
youngGCTime: getLinearIntValues(metric: {
- name: "youngGCTime"
+ name: "instance_jvm_young_gc_time"
id: $serviceInstanceId
}, duration: $duration) {
values {
@@ -129,7 +130,7 @@ query ServiceInstance($serviceInstanceId: ID!, $duration: Duration!) {
}
}
oldGCTime: getLinearIntValues(metric: {
- name: "oldGCTime"
+ name: "instance_jvm_old_gc_time"
id: $serviceInstanceId
}, duration: $duration) {
values {
@@ -137,7 +138,7 @@ query ServiceInstance($serviceInstanceId: ID!, $duration: Duration!) {
}
}
heap: getLinearIntValues(metric: {
- name: "heap"
+ name: "instance_jvm_memory_heap"
id: $serviceInstanceId
}, duration: $duration) {
values {
@@ -145,7 +146,7 @@ query ServiceInstance($serviceInstanceId: ID!, $duration: Duration!) {
}
}
maxHeap: getLinearIntValues(metric: {
- name: "maxHeap"
+ name: "instance_jvm_memory_max_heap"
id: $serviceInstanceId
}, duration: $duration) {
values {
@@ -153,7 +154,7 @@ query ServiceInstance($serviceInstanceId: ID!, $duration: Duration!) {
}
}
noheap: getLinearIntValues(metric: {
- name: "noheap"
+ name: "instance_jvm_memory_noheap"
id: $serviceInstanceId
}, duration: $duration) {
values {
@@ -161,7 +162,7 @@ query ServiceInstance($serviceInstanceId: ID!, $duration: Duration!) {
}
}
maxNoheap: getLinearIntValues(metric: {
- name: "maxNoheap"
+ name: "instance_jvm_memory_max_noheap"
id: $serviceInstanceId
}, duration: $duration) {
values {
[incubator-skywalking-ui] 03/03: Update trace data with new protocol
Posted by ha...@apache.org.
This is an automated email from the ASF dual-hosted git repository.
hanahmily pushed a commit to branch 6.0.0/dev
in repository https://gitbox.apache.org/repos/asf/incubator-skywalking-ui.git
commit a32cb5a06413e72c94149fb68776842c0f9f154d
Author: Gao Hongtao <ha...@gmail.com>
AuthorDate: Fri Sep 28 16:05:03 2018 +0800
Update trace data with new protocol
---
mock/trace.js | 16 ++++++++--------
query-protocol | 2 +-
src/components/Trace/TraceList/index.js | 6 +++---
src/components/TraceStack/index.js | 2 +-
src/models/endpoint.js | 4 ++--
src/models/trace.js | 4 ++--
src/routes/Endpoint/Endpoint.js | 2 +-
src/routes/Trace/TraceSearch.js | 8 ++++----
8 files changed, 22 insertions(+), 22 deletions(-)
diff --git a/mock/trace.js b/mock/trace.js
index 3922bcf..93867b0 100644
--- a/mock/trace.js
+++ b/mock/trace.js
@@ -24,7 +24,7 @@ export default {
return mockjs.mock({
'traces|20': [{
segmentId: '@id',
- 'operationNames|1-2': ['@word(100)'],
+ 'endpointNames|1-2': ['@word(100)'],
duration: '@natural(100, 5000)',
start: function() { // eslint-disable-line
offset = offset + 3600000; // eslint-disable-line
@@ -45,7 +45,7 @@ export default {
startTime: 1516151345000,
serviceCode: 'xx',
endTime: 1516151355000,
- operationName: '/user/tt',
+ endpointName: '/user/tt',
'type|1': ['Local', 'Entry', 'Exit'],
'component|1': ['MySQL', 'H2', 'Spring'],
peer: '@ip',
@@ -64,7 +64,7 @@ export default {
serviceCode: 'yy',
startTime: 1516151348000,
endTime: 1516151351000,
- operationName: '/sql/qq',
+ endpointName: '/sql/qq',
'type|1': ['Local', 'Entry', 'Exit'],
'component|1': ['MySQL', 'H2', 'Spring'],
peer: '@ip',
@@ -78,7 +78,7 @@ export default {
serviceCode: 'yy',
startTime: 1516151349312,
endTime: 1516151350728,
- operationName: '/sql/qq/xxxxxxxfdfdfdfdf().xxxxx/jjjjjj',
+ endpointName: '/sql/qq/xxxxxxxfdfdfdfdf().xxxxx/jjjjjj',
'type|1': ['Local', 'Entry', 'Exit'],
'component|1': ['MySQL', 'H2', 'Spring'],
peer: '@ip',
@@ -92,7 +92,7 @@ export default {
serviceCode: 'zz',
startTime: 1516151351000,
endTime: 1516151354000,
- operationName: '/sql/qq',
+ endpointName: '/sql/qq',
'type|1': ['Local', 'Entry', 'Exit'],
'component|1': ['MySQL', 'H2', 'Spring'],
peer: '@ip',
@@ -106,7 +106,7 @@ export default {
serviceCode: 'zz',
startTime: 1516151351000,
endTime: 1516151354000,
- operationName: '/mq/producer',
+ endpointName: '/mq/producer',
'type|1': ['Exit'],
'component|1': ['RockerMQ'],
peer: '@ip',
@@ -119,7 +119,7 @@ export default {
serviceCode: 'kk',
startTime: 1516151355000,
endTime: 1516151360000,
- operationName: '/mq/consumer',
+ endpointName: '/mq/consumer',
'type|1': ['Entry'],
'component|1': ['RockerMQ'],
peer: '@ip',
@@ -138,7 +138,7 @@ export default {
serviceCode: 'kk',
startTime: 1516151355000,
endTime: 1516151360000,
- operationName: '/mq/consumer',
+ endpointName: '/mq/consumer',
'type|1': ['Entry'],
'component|1': ['Kafka'],
peer: '@ip',
diff --git a/query-protocol b/query-protocol
index f5de93a..9762145 160000
--- a/query-protocol
+++ b/query-protocol
@@ -1 +1 @@
-Subproject commit f5de93a2b0b5ab6dbf2a39d671560f285ab67675
+Subproject commit 9762145c89ba6b70b48cc4cb0c886d7b9de18ec5
diff --git a/src/components/Trace/TraceList/index.js b/src/components/Trace/TraceList/index.js
index dfdc24d..88931e9 100644
--- a/src/components/Trace/TraceList/index.js
+++ b/src/components/Trace/TraceList/index.js
@@ -22,7 +22,7 @@ import Ellipsis from 'ant-design-pro/lib/Ellipsis';
import styles from './index.less';
class TraceList extends PureComponent {
- renderOperationName = (opName, duration, isError, maxDuration) => {
+ renderEndpointName = (opName, duration, isError, maxDuration) => {
return (
<div className={styles.progressWrap}>
<div
@@ -89,8 +89,8 @@ class TraceList extends PureComponent {
icon={item.isError ? 'close' : 'check'}
/>
}
- title={this.renderOperationName(
- item.operationNames,
+ title={this.renderEndpointName(
+ item.endpointNames,
item.duration,
item.isError,
maxDuration
diff --git a/src/components/TraceStack/index.js b/src/components/TraceStack/index.js
index a469bd6..c751188 100644
--- a/src/components/TraceStack/index.js
+++ b/src/components/TraceStack/index.js
@@ -84,7 +84,7 @@ class TraceStack extends PureComponent {
node.startTime = span.startTime;
node.endTime = span.endTime;
node.duration = span.endTime - span.startTime;
- node.content = span.operationName;
+ node.content = span.endpointName;
node.spanSegId = this.id(span.segmentId, span.spanId);
node.parentSpanSegId = this.findParent(span);
node.refs = span.refs;
diff --git a/src/models/endpoint.js b/src/models/endpoint.js
index 662546a..8209902 100644
--- a/src/models/endpoint.js
+++ b/src/models/endpoint.js
@@ -57,7 +57,7 @@ const dataQuery = `
queryBasicTraces(condition: $traceCondition) {
traces {
key: segmentId
- operationNames
+ endpointNames
duration
start
isError
@@ -85,7 +85,7 @@ const spanQuery = `query Spans($traceId: ID!) {
serviceCode
startTime
endTime
- operationName
+ endpointName
type
peer
component
diff --git a/src/models/trace.js b/src/models/trace.js
index 9f99ebe..b5974f6 100644
--- a/src/models/trace.js
+++ b/src/models/trace.js
@@ -34,7 +34,7 @@ const dataQuery = `
queryBasicTraces(condition: $condition) {
traces {
key: segmentId
- operationNames
+ endpointNames
duration
start
isError
@@ -61,7 +61,7 @@ const spanQuery = `query Spans($traceId: ID!) {
serviceCode
startTime
endTime
- operationName
+ endpointName
type
peer
component
diff --git a/src/routes/Endpoint/Endpoint.js b/src/routes/Endpoint/Endpoint.js
index d6add80..f4c6e01 100644
--- a/src/routes/Endpoint/Endpoint.js
+++ b/src/routes/Endpoint/Endpoint.js
@@ -114,7 +114,7 @@ export default class Endpoint extends PureComponent {
duration,
traceCondition: {
endpointId: parseInt(values.endpointId, 10),
- operationName: endpointName,
+ endpointName: endpointName,
queryDuration: duration,
traceState: 'ALL',
queryOrder: 'BY_DURATION',
diff --git a/src/routes/Trace/TraceSearch.js b/src/routes/Trace/TraceSearch.js
index 712caaa..dddeb35 100644
--- a/src/routes/Trace/TraceSearch.js
+++ b/src/routes/Trace/TraceSearch.js
@@ -198,9 +198,9 @@ export default class Trace extends PureComponent {
opacity={0.65}
shape="circle"
size={4}
- tooltip={['operationName*startTime*duration', (operationName, startTime, duration) => {
+ tooltip={['endpointName*startTime*duration', (endpointName, startTime, duration) => {
return {
- name: operationName,
+ name: endpointName,
value: `
${startTime}
${duration}ms
@@ -260,8 +260,8 @@ export default class Trace extends PureComponent {
</Select>
)}
</FormItem>
- <FormItem label="OperationName">
- {getFieldDecorator('operationName')(
+ <FormItem label="EndpointName">
+ {getFieldDecorator('endpointName')(
<Input placeholder="eg Kafka/Trace-topic-1/Consumer" />
)}
</FormItem>