You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@skywalking.apache.org by wu...@apache.org on 2018/07/30 07:08:57 UTC

[incubator-skywalking] 03/03: Finish GraphQL protocol document.

This is an automated email from the ASF dual-hosted git repository.

wusheng pushed a commit to branch 6.0
in repository https://gitbox.apache.org/repos/asf/incubator-skywalking.git

commit 1a197c22212377790758a32d733c4d53d8537f8e
Author: Wu Sheng <wu...@foxmail.com>
AuthorDate: Mon Jul 30 15:08:49 2018 +0800

    Finish GraphQL protocol document.
---
 docs/en/protocols/README.md | 23 ++++++++++++++++++++---
 1 file changed, 20 insertions(+), 3 deletions(-)

diff --git a/docs/en/protocols/README.md b/docs/en/protocols/README.md
index 3677d39..69413b0 100644
--- a/docs/en/protocols/README.md
+++ b/docs/en/protocols/README.md
@@ -1,9 +1,9 @@
 # Protocols
 There are two types of protocols list here. 
 
-- **Probe Protocol**. Include the descriptions and definitions about how agent send collected metric data and traces, also the formats of each entities.
+- [**Probe Protocol**](#probe-protocols). Include the descriptions and definitions about how agent send collected metric data and traces, also the formats of each entities.
 
-- **Query Protocol**. The backend provide query capability to SkyWalking own UI and others. These queries are based on GraphQL.
+- [**Query Protocol**](#query-protocol). The backend provide query capability to SkyWalking own UI and others. These queries are based on GraphQL.
 
 ## Probe Protocols
 They also related to the probe group, for understand that, look [Concepts and Designs](../concepts-and-designs/README.md) document.
@@ -35,4 +35,21 @@ the following key info:
 3rd-party instrument protocols are not defined by SkyWalking. They are just protocols/formats, which SkyWalking is compatible and
 could receive from their existed libraries. SkyWalking starts with supporting Zipkin v1, v2 data formats.
 
-Backend is based on modulization principle, so very easy to extend a new receiver to support new protocol/format.
\ No newline at end of file
+Backend is based on modulization principle, so very easy to extend a new receiver to support new protocol/format.
+
+## Query Protocol
+Query protocol follows GraphQL grammar, provides data query capabilities, which depends on your analysis metrics.
+
+There are 5 dimensionality data is provided.
+1. Metadata. Metadata includes the brief info of the whole under monitoring services and their instances, endpoints, etc.
+Use multiple ways to query this meta data.
+1. Metric. Metric query targets all the objects defined in [OAL script](../concepts-and-designs/oal.md). You could get the 
+metric data in linear or thermodynamic matrix formats based on the aggregation functions in script. 
+1. Aggregation. Aggregation query means the metric data need a secondary aggregation in query stage, which makes the query 
+interfaces have some different arguments. Such as, `TopN` list of services is a very typical aggregation query, 
+metric stream aggregation just calculates the metric values of each service, but the expected list needs ordering metric data
+by the values.
+1. Trace. Query distributed traces by this.
+1. Alarm. Through alarm query, you can have alarm trend and details.
+
+The actual query GraphQL scrips could be found in [here](../../../apm-protocol/apm-ui-protocol/src/main/resources/ui-graphql-v6).  
\ No newline at end of file