当前位置: 首页 > 后端技术 > Java

Skywalking-10:Skywalking查询协议-GraphQL

时间:2023-04-01 23:19:33 Java

GraphQLGraphQL基础可以参考文章GettingstartedwithGraphQLJavaandSpringBootPS:可以使用brewinstall--caskgraphql-playground安装mac客户端的graphql。IDEA如何调试GraphQL应用安装JSGraphQL插件点击JSGraphQL安装插件GraphQLdefineschema.graphqlstypeQuery{bookById(id:ID):Book}typeBook{id:IDname:StringpageCount:Intauthor:Author}typeAuthor{id:IDfirstName:StringlastName:String}GraphQL配置文件.graphqlconfig{"name":"book-details","schemaPath":"schema.graphqls","extensions":{"endpoints":{"DefaultGraphQLEndpoint":{"url":"http://localhost:8080/graphql",//请求路径"headers":{"user-agent":"JSGraphQL"},"introspect":false}}}}创建一个查询文件query.graphql#{"id":"book-1"}queryqueryData($id:ID){bookById(id:$id){idnamepageCountauthor{idfirstNamelastName}}}GraphQL脚本目录结构资源├──.graphqlconfig#配置文件├──query.graphql#查询文件└──schema.graphqls#定义文件执行结果GraphQL应用程序graphql协议文件路径在Skywalking中:oap-server/server-query-plugin/query-graphql-plugin/src/main/resources/query-protocolGraphQL配置file.graphqlconfig{"name":"skywalking","schemaPath":"schema.graphql","extensions":{"endpoints":{"DefaultGraphQLEndpoint":{"url":"http://localhost:8080/graphql","headers":{"user-agent":"JSGraphQL"},"introspect":true}}}}创建查询文件query.graphqlqueryqueryData{readMetricsValues(duration:{start:"2021-07-031400”,结束:“2021-07-031401”,步骤:分钟},条件:{名称:“instance_jvm_thread_runnable_thread_count”,实体:{范围:ServiceInstance,serviceName:“business-zone::projectA”,serviceInstanceName:“e8cf34a1d54a4058a8c98505877770e2@192.168.50.113”,正常:真}}){labelvalues{values{idvalue}}}}执行结果{"data":{"readMetricsValues":{"values":{"values":[{"id":"202107031400_YnVzaW5lc3Mtem9uZTo6cHJvamVjdEE=.1_ZThjZjM0YTFkNTRhNDA1OGE4Yzk4NTA1ODc3NzcwZTJAMTkyLjE2OC41MC4xMTM=","value":22},{"id":"202107031401_YnVzaW5lc3Mtem9uZTo6cHJvamVjdEE=.1_ZThjZjM0YTFkNTRhNDA1OGE4Yzk4NTA1ODc3NzcwZTJAMTkyLjE2OC41MC4xMTM=","value":22}]}}}}参考文档QueryProtocolGraphQL官网GettingstartedwithGraphQLJavaandSpringBootgraphql-java/tutorials/book-detailsgraphql-playgroundJSGraphQL分享和记录你学到的东西