GraphQL
GraphQL
根底
参照Getting started with GraphQL Java and Spring Boot这篇文章学习即可
PS:能够应用 brew install --cask graphql-playground
装置 graphql for mac
客户端。
IDEA
怎么调试 GraphQL
利用
装置 JS GraphQL
插件
点击JS GraphQL装置插件
GraphQL
定义
schema.graphqls
type Query { bookById(id: ID): Book}type Book { id: ID name: String pageCount: Int author: Author}type Author { id: ID firstName: String lastName: String}
GraphQL
配置文件
.graphqlconfig
{ "name": "book-details", "schemaPath": "schema.graphqls", "extensions": { "endpoints": { "Default GraphQL Endpoint": { "url": "http://localhost:8080/graphql", // 申请门路 "headers": { "user-agent": "JS GraphQL" }, "introspect": false } } }}
创立一个查问文件
query.graphql
# {"id": "book-1"}query queryData($id: ID) { bookById(id: $id) { id name pageCount author { id firstName lastName } }}
GraphQL
脚本目录构造
resources├── .graphqlconfig # 配置文件├── query.graphql # 查问文件└── schema.graphqls # 定义文件
执行后果
GraphQL
在 Skywalking
中的利用
graphql
协定文件门路: oap-server/server-query-plugin/query-graphql-plugin/src/main/resources/query-protocol
GraphQL
配置文件
.graphqlconfig
{ "name": "skywalking", "schemaPath": "schema.graphql", "extensions": { "endpoints": { "Default GraphQL Endpoint": { "url": "http://localhost:8080/graphql", "headers": { "user-agent": "JS GraphQL" }, "introspect": true } } }}
创立一个查问文件
query.graphql
query queryData { readMetricsValues( duration: {start: "2021-07-03 1400",end: "2021-07-03 1401", step: MINUTE}, condition: { name: "instance_jvm_thread_runnable_thread_count", entity: { scope: ServiceInstance, serviceName: "business-zone::projectA", serviceInstanceName: "e8cf34a1d54a4058a8c98505877770e2@192.168.50.113", normal: true } } ) { label values{ values{ id value }} }}
执行后果
{ "data": { "readMetricsValues": { "values": { "values": [ { "id": "202107031400_YnVzaW5lc3Mtem9uZTo6cHJvamVjdEE=.1_ZThjZjM0YTFkNTRhNDA1OGE4Yzk4NTA1ODc3NzcwZTJAMTkyLjE2OC41MC4xMTM=", "value": 22 }, { "id": "202107031401_YnVzaW5lc3Mtem9uZTo6cHJvamVjdEE=.1_ZThjZjM0YTFkNTRhNDA1OGE4Yzk4NTA1ODc3NzcwZTJAMTkyLjE2OC41MC4xMTM=", "value": 22 } ] } } }}
参考文档
- Query Protocol
- GraphQL官网
- Getting started with GraphQL Java and Spring Boot
- graphql-java/tutorials/book-details
- graphql-playground
JS GraphQL
分享并记录所学所见