背景:
刚开始的时候gateway没有出现,后来百度说添加插件的jar包,
apm-spring-cloud-gateway-2.1.x-plugin-8.15.0.jar
apm-spring-webflux-5.x-plugin-8.15.0.jar
然后解决了gateway节点出来了,
但是:拓扑图却是User指向gateway,User指向OrderService。
可是实现的效果应该是User指向gateway,由网关(gateway)指向其他微服务
告诉你们一下,我是怎么解决的。
我去官网下载了Agent,然后把optional-plugins文件里面的两个jar包
apm-spring-cloud-gateway-3.x-plugin-8.15.0.jar
apm-spring-webflux-5.x-plugin-8.15.0.jar
复制到plugins文件夹里面
https://skywalking.apache.org/downloads/
声明一下我这里使用的版本号
skywalking 8.8.0,不要使用8.5.0的,因为里面的gateway插件只有2.0和2.1的,没有3.x的,我就是这里踩坑了。。。
看一下自己的微服务项目中的gateway使用的是哪个版本的,就选择gateway插件的几版本
https://archive.apache.org/dist/skywalking/
然后重启skywalking、微服务项目,重新发一下请求接口,再去刷新
idea添加vm参数
多个微服务接入skywalking,每个微服务都需要添加jvm 启动参数
网关gatewey、seata-order、seata-stock都需要添加启动参数
-javaagent:D:\env\skywalking\apache-skywalking-apm-bin\skywalking-agent\skywalking-agent.jar
-Dskywalking.agent.service_name=bulv-gateway
-Dskywalking.collector.backend_service=127.0.0.1:11800
添加环境变量
SW_AGENT_COLLECTOR_BACKEND_SERVICES=127.0.0.1:11800
启动微服务项目,测试,完结!!!
这里我把gateway的配置文件也粘贴一下,不知道你们有没有用处
server:port: 8088
spring:application:name: api-gatewaycloud:gateway:routes:- id: order-service # 路由的唯一标识,路由到orderuri: lb://order-seata-global #lb:使用nacos中的本地负载均衡策略# 配置断言 用于路由规则的匹配predicates:- Path=/order/**nacos:discovery:server-addr: 127.0.0.1:8848username: nacospassword: nacos
#sentinelsentinel:transport:dashboard: 127.0.0.1:8858