Hi, everyone,
I think 5.0.0 beta2 features prvovided and bugs fixed. Now, please start integration test for our next release. This will be the last feature provided version before 5.0.0 GA.
Let's stable our release for GA. @ascrutae @candyleer @liuhaoyang
Thanks everyone contributes to the community.
The process of test case as following: portal service receive key from http request, and it call the cache query service and query the key on the mysql service. finally update the cache by the new key. BTW, there are three layer on cache service: Redis, embed h2 database and mongo DB. The call graph as following:

Portal Server: Entry of test case. Portal Server run in tomcat container.
Cache Server: Cache service provide query and update cache. and it run in motan.
NOTE: It will start H2 database when the server start
Persistence Server: Persistence service provide query data from mysql, and it initial data when persistence service start. it run in Dubbo with rest protocol.
the prefix description of Issue:
|prefix|description|
|:---|:---|
|[AGENT] | This prefix represent that this issue is an agent issue|
|[COLLECTOR]| This prefix represent that this issue is a collector issue|
|[UI]| This prefix represent that this issue is an UI issue|
|[UNKNOWN]| This prefix represent that everyone should pay attention to this issue|
|[APP_STANDBY]| This prefix represent that this issue happened after server started|
|[APP_SERVICE_PROVIDED]|This prefix represent that this issue happened after call service|
192.168.5.38:20880 node and 192.168.5.38:18002 node don't display in topology.
api: /api/topology
request:
{"variables":{"duration":{"start":"2018-06-27 1247","end":"2018-06-27 1302","step":"MINUTE"}},"query":"\n query Topology($duration: Duration!) {\n getClusterTopology(duration: $duration) {\n nodes {\n id\n name\n type\n ... on ApplicationNode {\n sla\n cpm\n avgResponseTime\n apdex\n isAlarm\n numOfServer\n numOfServerAlarm\n numOfServiceAlarm\n }\n }\n calls {\n source\n target\n isAlert\n callType\n cpm\n avgResponseTime\n }\n }\n }\n "}
response:
{"data":{"getClusterTopology":{"nodes":[{"id":"-5","name":"localhost:27017","type":"mongodb-driver","sla":100,"cpm":2,"avgResponseTime":5,"apdex":100,"isAlarm":false,"numOfServer":0,"numOfServerAlarm":0,"numOfServiceAlarm":0},{"id":"-4","name":"192.168.5.38:18002","type":"Motan","sla":100,"cpm":4,"avgResponseTime":246,"apdex":100,"isAlarm":false,"numOfServer":0,"numOfServerAlarm":0,"numOfServiceAlarm":0},{"id":"-3","name":"127.0.0.1:6379","type":"Jedis","sla":100,"cpm":3,"avgResponseTime":1,"apdex":100,"isAlarm":false,"numOfServer":0,"numOfServerAlarm":0,"numOfServiceAlarm":0},{"id":"-2","name":"localhost:-1","type":"h2-jdbc-driver","sla":100,"cpm":6,"avgResponseTime":1,"apdex":100,"isAlarm":false,"numOfServer":0,"numOfServerAlarm":0,"numOfServiceAlarm":0},{"id":"-1","name":"persistence-service","type":"Dubbo","sla":100,"cpm":0,"avgResponseTime":10894,"apdex":50,"isAlarm":false,"numOfServer":1,"numOfServerAlarm":0,"numOfServiceAlarm":0},{"id":"2","name":"cache-service","type":"Motan","sla":100,"cpm":0,"avgResponseTime":77,"apdex":100,"isAlarm":false,"numOfServer":1,"numOfServerAlarm":0,"numOfServiceAlarm":0},{"id":"3","name":"portal-service","type":"SpringMVC","sla":40,"cpm":0,"avgResponseTime":5956,"apdex":75,"isAlarm":false,"numOfServer":1,"numOfServerAlarm":0,"numOfServiceAlarm":0},{"id":"4","name":"127.0.0.1:3307","type":"mysql-connector-java","sla":100,"cpm":4,"avgResponseTime":2,"apdex":100,"isAlarm":false,"numOfServer":0,"numOfServerAlarm":0,"numOfServiceAlarm":0},{"id":"5","name":"192.168.5.38:20880","type":"Dubbo","sla":100,"cpm":2,"avgResponseTime":11532,"apdex":0,"isAlarm":false,"numOfServer":0,"numOfServerAlarm":0,"numOfServiceAlarm":0},{"id":"-5","name":"localhost:27017","type":"MongoDB"},{"id":"-3","name":"127.0.0.1:6379","type":"Redis"},{"id":"-2","name":"localhost:-1","type":"H2"},{"id":"4","name":"127.0.0.1:3307","type":"Mysql"},{"id":"1","name":"User","type":"Unknown","sla":100,"cpm":0,"avgResponseTime":0,"apdex":100,"isAlarm":false,"numOfServer":0,"numOfServerAlarm":0,"numOfServiceAlarm":0},{"id":"1","name":"User","type":"USER"}],"calls":[{"source":"3","target":"2","isAlert":false,"callType":"Motan","cpm":0,"avgResponseTime":246},{"source":"3","target":"-1","isAlert":false,"callType":"Dubbo","cpm":0,"avgResponseTime":10894},{"source":"3","target":"2","isAlert":false,"callType":"Motan","cpm":0,"avgResponseTime":77},{"source":"3","target":"-1","isAlert":false,"callType":"Dubbo","cpm":0,"avgResponseTime":11532},{"source":"2","target":"-5","isAlert":false,"callType":"mongodb-driver","cpm":0,"avgResponseTime":5},{"source":"2","target":"-3","isAlert":false,"callType":"Jedis","cpm":0,"avgResponseTime":1},{"source":"2","target":"-2","isAlert":false,"callType":"h2-jdbc-driver","cpm":0,"avgResponseTime":1},{"source":"-1","target":"4","isAlert":false,"callType":"mysql-connector-java","cpm":0,"avgResponseTime":2},{"source":"1","target":"3","isAlert":false,"callType":"SpringMVC","cpm":5,"avgResponseTime":5956},{"source":"1","target":"3","isAlert":false,"callType":"","cpm":0,"avgResponseTime":5956}]}}}
~### Service~
~* [COLLECTOR] [UI] Some trouble with the protocol between UI and collector.~
~api: /api/service/search~
~request:~
~{"variables":{"keyword":""},"query":"\n query SearchService($keyword: String!) {\n searchService(keyword: $keyword, topN: 10) {\n key: id\n label: name\n }\n }\n "}~
~response:~
~{"errors":[{"message":"Validation error of type MissingFieldArgument: Missing field argument applicationId"}]}~
screen snapshot:

api: /api/application
request:
{"variables":{"duration":{"start":"2018-06-27 1254","end":"2018-06-27 1309","step":"MINUTE"},"applicationId":"2"},"query":"\n query Application($applicationId: ID!, $duration: Duration!) {\n getSlowService(applicationId: $applicationId, duration: $duration, topN: 10) {\n key: id\n label: name\n value: avgResponseTime\n }\n getServerThroughput(applicationId: $applicationId, duration: $duration, topN: 999999) {\n key: id\n osName\n host\n pid\n ipv4\n value: cpm\n }\n getApplicationTopology(applicationId: $applicationId, duration: $duration) {\n nodes {\n id\n name\n type\n ... on ApplicationNode {\n sla\n cpm\n avgResponseTime\n apdex\n isAlarm\n numOfServer\n numOfServerAlarm\n numOfServiceAlarm\n }\n }\n calls {\n source\n target\n isAlert\n callType\n cpm\n avgResponseTime\n }\n }\n }\n"}
response:
{"data":{"getSlowService":[{"key":"4","label":"com.a.eye.skywalking.test.cache.CacheService.findCache(java.lang.String)","value":101},{"key":"9","label":"com.a.eye.skywalking.test.cache.CacheService.updateCache(java.lang.String,java.lang.String)","value":35}],"getServerThroughput":[{"key":"3","osName":"Mac OS X","host":"ascrutae","pid":59787,"ipv4":["192.168.5.38","172.16.2.88"],"value":0}],"getApplicationTopology":{"nodes":[{"id":"-5","name":"localhost:27017","type":"mongodb-driver","sla":100,"cpm":4,"avgResponseTime":5,"apdex":100,"isAlarm":false,"numOfServer":0,"numOfServerAlarm":0,"numOfServiceAlarm":0},{"id":"-3","name":"127.0.0.1:6379","type":"Jedis","sla":100,"cpm":5,"avgResponseTime":1,"apdex":100,"isAlarm":false,"numOfServer":0,"numOfServerAlarm":0,"numOfServiceAlarm":0},{"id":"-2","name":"localhost:-1","type":"h2-jdbc-driver","sla":100,"cpm":10,"avgResponseTime":1,"apdex":100,"isAlarm":false,"numOfServer":0,"numOfServerAlarm":0,"numOfServiceAlarm":0},{"id":"-1","name":"persistence-service","type":"Dubbo","sla":100,"cpm":0,"avgResponseTime":7265,"apdex":66,"isAlarm":false,"numOfServer":1,"numOfServerAlarm":0,"numOfServiceAlarm":0},{"id":"2","name":"cache-service","type":"Motan","sla":100,"cpm":0,"avgResponseTime":54,"apdex":100,"isAlarm":false,"numOfServer":1,"numOfServerAlarm":0,"numOfServiceAlarm":0},{"id":"3","name":"portal-service","type":"Tomcat","sla":50,"cpm":0,"avgResponseTime":5310,"apdex":75,"isAlarm":false,"numOfServer":1,"numOfServerAlarm":0,"numOfServiceAlarm":0},{"id":"4","name":"127.0.0.1:3307","type":"mysql-connector-java","sla":100,"cpm":6,"avgResponseTime":2,"apdex":100,"isAlarm":false,"numOfServer":0,"numOfServerAlarm":0,"numOfServiceAlarm":0},{"id":"-5","name":"localhost:27017","type":"MongoDB"},{"id":"-3","name":"127.0.0.1:6379","type":"Redis"},{"id":"-2","name":"localhost:-1","type":"H2"},{"id":"4","name":"127.0.0.1:3307","type":"Mysql"},{"id":"1","name":"User","type":"Unknown","sla":100,"cpm":0,"avgResponseTime":0,"apdex":100,"isAlarm":false,"numOfServer":0,"numOfServerAlarm":0,"numOfServiceAlarm":0},{"id":"1","name":"User","type":"USER"}],"calls":[{"source":"3","target":"2","isAlert":false,"callType":"Motan","cpm":0,"avgResponseTime":171},{"source":"3","target":"-1","isAlert":false,"callType":"Dubbo","cpm":0,"avgResponseTime":7265},{"source":"3","target":"2","isAlert":false,"callType":"Motan","cpm":0,"avgResponseTime":54},{"source":"3","target":"-1","isAlert":false,"callType":"Dubbo","cpm":0,"avgResponseTime":7697},{"source":"2","target":"-5","isAlert":false,"callType":"mongodb-driver","cpm":0,"avgResponseTime":5},{"source":"2","target":"-3","isAlert":false,"callType":"Jedis","cpm":0,"avgResponseTime":1},{"source":"2","target":"-2","isAlert":false,"callType":"h2-jdbc-driver","cpm":0,"avgResponseTime":1},{"source":"-1","target":"4","isAlert":false,"callType":"mysql-connector-java","cpm":0,"avgResponseTime":2},{"source":"1","target":"3","isAlert":false,"callType":"Tomcat","cpm":-6,"avgResponseTime":5310},{"source":"1","target":"3","isAlert":false,"callType":"","cpm":0,"avgResponseTime":5310}]}}}
api: /api/trace
request:
{"variables":{"condition":{"traceState":"ALL","queryOrder":"BY_START_TIME","paging":{"pageNum":1,"pageSize":20,"needTotal":true},"queryDuration":{"start":"2018-06-27 1258","end":"2018-06-27 1313","step":"MINUTE"}}},"query":"\n query BasicTraces($condition: TraceQueryCondition) {\n queryBasicTraces(condition: $condition) {\n traces {\n key: segmentId\n operationName\n duration\n start\n isError\n traceIds\n }\n total\n }\n }\n"}
response:
{"errors":[{"message":"Validation error of type FieldUndefined: Field 'operationName' in type 'BasicTrace' is undefined"}]}
NOTE: Here is the ES Data
The issues in Trace and Service belong to UI.
@ascrutae You didn't update submodule skywalking-ui, causing graphql schema of Service didn't be synchronized.
Sorry, this is my mistake. @hanahmily
But after I updated the latest code, The issue about the Trace page still happened, The issue about Service page don't happened but an new issue about Service page is coming, Here is the information about this issue.
/api/servicerequest:
{"variables":{"serviceId":"-4","traceCondition":{"applicationId":"-2","operationName":"/cache/{key}","queryDuration":{"start":"2018-06-27 2014","end":"2018-06-27 2029","step":"MINUTE"},"paging":{"pageNum":1,"pageSize":20,"needTotal":false}}},"query":"\n query Service($serviceId: ID!, $duration: Duration!, $traceCondition: TraceQueryCondition!) {\n getServiceResponseTimeTrend(serviceId: $serviceId, duration: $duration) {\n trendList\n }\n getServiceThroughputTrend(serviceId: $serviceId, duration: $duration) {\n trendList\n }\n getServiceSLATrend(serviceId: $serviceId, duration: $duration) {\n trendList\n }\n getTrace(condition: $traceCondition) {\n traces {\n key: segmentId\n operationName\n duration\n start\n isError\n traceIds\n }\n total\n }\n getServiceTopology(serviceId: $serviceId, duration: $duration) {\n nodes {\n id\n name\n type\n ... on ServiceNode {\n sla\n calls\n numOfServiceAlarm\n }\n }\n calls {\n source\n target\n isAlert\n callType\n cpm\n avgResponseTime\n }\n }\n }\n"}
Response:
{"errors":[{"message":"Validation error of type FieldUndefined: Field 'getTrace' in type 'Query' is undefined"},{"message":"Validation error of type VariableTypeMismatch: Variable type doesn't match"}]}
API: /api/service
Request:
{"variables":{"serviceId":"5","traceCondition":{"applicationId":"-2","operationName":"/cache/{key}","queryDuration":{"start":"2018-06-28 1244","end":"2018-06-28 1259","step":"MINUTE"},"traceState":"ALL","queryOrder":"BY_DURATION","paging":{"pageNum":1,"pageSize":20,"needTotal":false}}},"query":"\n query Service($serviceId: ID!, $duration: Duration!, $traceCondition: TraceQueryCondition!) {\n getServiceResponseTimeTrend(serviceId: $serviceId, duration: $duration) {\n trendList\n }\n getServiceThroughputTrend(serviceId: $serviceId, duration: $duration) {\n trendList\n }\n getServiceSLATrend(serviceId: $serviceId, duration: $duration) {\n trendList\n }\n queryBasicTraces(condition: $traceCondition) {\n traces {\n key: segmentId\n operationName\n duration\n start\n isError\n traceIds\n }\n total\n }\n getServiceTopology(serviceId: $serviceId, duration: $duration) {\n nodes {\n id\n name\n type\n ... on ServiceNode {\n sla\n calls\n numOfServiceAlarm\n }\n }\n calls {\n source\n target\n isAlert\n callType\n cpm\n avgResponseTime\n }\n }\n }\n"}
Response:
{"errors":[{"message":"Validation error of type FieldUndefined: Field 'operationName' in type 'BasicTrace' is undefined"}]}
/api/trace* Error Log*:
2018-06-28 13:04:58,489 - graphql.execution.SimpleDataFetcherExceptionHandler -527885 [qtp942217109-159] WARN [] - Exception while fetching data (/queryBasicTraces) : java.util.ArrayList cannot be cast to java.lang.String
java.lang.ClassCastException: java.util.ArrayList cannot be cast to java.lang.String
at org.apache.skywalking.apm.collector.storage.es.dao.ui.SegmentDurationEsUIDAO.loadTop(SegmentDurationEsUIDAO.java:109) ~[collector-storage-es-provider-5.0.0-beta2-SNAPSHOT.jar:5.0.0-beta2-SNAPSHOT]
at org.apache.skywalking.apm.collector.ui.service.SegmentTopService.loadTop(SegmentTopService.java:60) ~[collector-ui-jetty-provider-5.0.0-beta2-SNAPSHOT.jar:5.0.0-beta2-SNAPSHOT]
at org.apache.skywalking.apm.collector.ui.query.TraceQuery.queryBasicTraces(TraceQuery.java:80) ~[collector-ui-jetty-provider-5.0.0-beta2-SNAPSHOT.jar:5.0.0-beta2-SNAPSHOT]
at org.apache.skywalking.apm.collector.ui.query.TraceQueryMethodAccess.invoke(Unknown Source) ~[reflectasm-1.11.3.jar:5.0.0-beta2-SNAPSHOT]
at com.coxautodev.graphql.tools.MethodFieldResolverDataFetcher.get(MethodFieldResolver.kt:132) ~[graphql-java-tools-4.3.0.jar:?]
at graphql.execution.ExecutionStrategy.fetchField(ExecutionStrategy.java:219) [graphql-java-6.0.jar:?]
at graphql.execution.ExecutionStrategy.resolveField(ExecutionStrategy.java:165) [graphql-java-6.0.jar:?]
at graphql.execution.AsyncExecutionStrategy.execute(AsyncExecutionStrategy.java:55) [graphql-java-6.0.jar:?]
at graphql.execution.Execution.executeOperation(Execution.java:154) [graphql-java-6.0.jar:?]
at graphql.execution.Execution.execute(Execution.java:98) [graphql-java-6.0.jar:?]
at graphql.GraphQL.execute(GraphQL.java:546) [graphql-java-6.0.jar:?]
at graphql.GraphQL.parseValidateAndExecute(GraphQL.java:488) [graphql-java-6.0.jar:?]
at graphql.GraphQL.executeAsync(GraphQL.java:463) [graphql-java-6.0.jar:?]
at graphql.GraphQL.execute(GraphQL.java:394) [graphql-java-6.0.jar:?]
at org.apache.skywalking.apm.collector.ui.jetty.handler.GraphQLHandler.execute(GraphQLHandler.java:100) [collector-ui-jetty-provider-5.0.0-beta2-SNAPSHOT.jar:5.0.0-beta2-SNAPSHOT]
at org.apache.skywalking.apm.collector.ui.jetty.handler.GraphQLHandler.doPost(GraphQLHandler.java:93) [collector-ui-jetty-provider-5.0.0-beta2-SNAPSHOT.jar:5.0.0-beta2-SNAPSHOT]
at org.apache.skywalking.apm.collector.server.jetty.JettyJsonHandler.doPost(JettyJsonHandler.java:61) [server-component-5.0.0-beta2-SNAPSHOT.jar:5.0.0-beta2-SNAPSHOT]
at javax.servlet.http.HttpServlet.service(HttpServlet.java:707) [javax.servlet-api-3.1.0.jar:3.1.0]
at org.apache.skywalking.apm.collector.server.jetty.JettyJsonHandler.service(JettyJsonHandler.java:108) [server-component-5.0.0-beta2-SNAPSHOT.jar:5.0.0-beta2-SNAPSHOT]
at javax.servlet.http.HttpServlet.service(HttpServlet.java:790) [javax.servlet-api-3.1.0.jar:3.1.0]
at org.apache.skywalking.apm.collector.server.jetty.JettyJsonHandler.service(JettyJsonHandler.java:112) [server-component-5.0.0-beta2-SNAPSHOT.jar:5.0.0-beta2-SNAPSHOT]
at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:841) [jetty-servlet-9.4.2.v20170220.jar:9.4.2.v20170220]
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:543) [jetty-servlet-9.4.2.v20170220.jar:9.4.2.v20170220]
at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:188) [jetty-server-9.4.2.v20170220.jar:9.4.2.v20170220]
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1239) [jetty-server-9.4.2.v20170220.jar:9.4.2.v20170220]
at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:168) [jetty-server-9.4.2.v20170220.jar:9.4.2.v20170220]
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:481) [jetty-servlet-9.4.2.v20170220.jar:9.4.2.v20170220]
at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:166) [jetty-server-9.4.2.v20170220.jar:9.4.2.v20170220]
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1141) [jetty-server-9.4.2.v20170220.jar:9.4.2.v20170220]
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) [jetty-server-9.4.2.v20170220.jar:9.4.2.v20170220]
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:132) [jetty-server-9.4.2.v20170220.jar:9.4.2.v20170220]
at org.eclipse.jetty.server.Server.handle(Server.java:564) [jetty-server-9.4.2.v20170220.jar:9.4.2.v20170220]
at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:320) [jetty-server-9.4.2.v20170220.jar:9.4.2.v20170220]
at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:251) [jetty-server-9.4.2.v20170220.jar:9.4.2.v20170220]
at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:279) [jetty-io-9.4.2.v20170220.jar:9.4.2.v20170220]
at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:110) [jetty-io-9.4.2.v20170220.jar:9.4.2.v20170220]
at org.eclipse.jetty.io.ChannelEndPoint$2.run(ChannelEndPoint.java:124) [jetty-io-9.4.2.v20170220.jar:9.4.2.v20170220]
at org.eclipse.jetty.util.thread.Invocable.invokePreferred(Invocable.java:122) [jetty-util-9.4.2.v20170220.jar:9.4.2.v20170220]
at org.eclipse.jetty.util.thread.strategy.ExecutingExecutionStrategy.invoke(ExecutingExecutionStrategy.java:58) [jetty-util-9.4.2.v20170220.jar:9.4.2.v20170220]
at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.produceConsume(ExecuteProduceConsume.java:201) [jetty-util-9.4.2.v20170220.jar:9.4.2.v20170220]
at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.run(ExecuteProduceConsume.java:133) [jetty-util-9.4.2.v20170220.jar:9.4.2.v20170220]
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:672) [jetty-util-9.4.2.v20170220.jar:9.4.2.v20170220]
at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:590) [jetty-util-9.4.2.v20170220.jar:9.4.2.v20170220]
at java.lang.Thread.run(Thread.java:745) [?:1.8.0_152-ea]
Request:
{"variables":{"condition":{"traceState":"ALL","queryOrder":"BY_START_TIME","queryDuration":{"start":"2018-06-28 1247","end":"2018-06-28 1302","step":"MINUTE"},"paging":{"pageNum":1,"pageSize":20,"needTotal":true}}},"query":"\n query BasicTraces($condition: TraceQueryCondition) {\n queryBasicTraces(condition: $condition) {\n traces {\n key: segmentId\n operationNames\n duration\n start\n isError\n traceIds\n }\n total\n }\n }\n"}
Response:
{"data":{},"errors":[{"message":"Exception while fetching data (/queryBasicTraces) : java.util.ArrayList cannot be cast to java.lang.String"}]}
/api/serviceRequest:
{"variables":{"serviceId":"9","traceCondition":{"applicationId":"-1","operationName":"com.a.eye.skywalking.test.cache.CacheService.updateCache(java.lang.String,java.lang.String)","queryDuration":{"start":"2018-06-28 1859","end":"2018-06-28 1914","step":"MINUTE"},"traceState":"ALL","queryOrder":"BY_DURATION","paging":{"pageNum":1,"pageSize":20,"needTotal":false}}},"query":"\n query Service($serviceId: ID!, $duration: Duration!, $traceCondition: TraceQueryCondition!) {\n getServiceResponseTimeTrend(serviceId: $serviceId, duration: $duration) {\n trendList\n }\n getServiceThroughputTrend(serviceId: $serviceId, duration: $duration) {\n trendList\n }\n getServiceSLATrend(serviceId: $serviceId, duration: $duration) {\n trendList\n }\n queryBasicTraces(condition: $traceCondition) {\n traces {\n key: segmentId\n operationNames\n duration\n start\n isError\n traceIds\n }\n total\n }\n getServiceTopology(serviceId: $serviceId, duration: $duration) {\n nodes {\n id\n name\n type\n ... on ServiceNode {\n sla\n calls\n numOfServiceAlarm\n }\n }\n calls {\n source\n target\n isAlert\n callType\n cpm\n avgResponseTime\n }\n }\n }\n"}
Response:
{"errors":[{"message":"Variable 'duration' has coerced Null value for NonNull type 'Duration!'"}]}
NOTE: Here is the ES
All test had passed, and all issue had been fixed. I think that the 5.0.0-beta2 is ready for release.
http://49.4.12.44:8080/#/monitor/dashboard has been updated. And let's wait one or two days, for giving @liuhaoyang @candyleer some time to test before release.
I have done the test, and the .NET Core Agent works well with the collector.
I have checked online service on http://49.4.12.44:8080/, seems all components working great.
Most helpful comment
All test had passed, and all issue had been fixed. I think that the 5.0.0-beta2 is ready for release.