背景
Jeecg Boot 3.8.2 微服务
SkyWalking 用于请求的链路跟踪,Elasticsearch 用于数据存储。
环境准备
- Java版本要求大于11
- Java配置环境变量 JAVA_HOME,JAVA_HOME 只需要放到目录级别即可,例如:D:\jdk
工具下载
Elasticsearch 版本不能高于8.x SkyWalking 不兼容,当前选择版本 v8.19.4
历史版本下载地址: www.elastic.co/downloads/p...
SkyWalking 由两部分组成, Foundations 和 Agents
- Foundations 选择SkyWalking APM 版本为 v10.2.0
- Agents 选择 Java Agent 版本为 v9.5.0
下载地址: skywalking.apache.org/downloads/
端口占用
Elasticsearch 占用端口为 9200
SkyWalking 的端口占用为 8080(UI界面)、11800(Service端数据接受端口)、12800(Service端数据查询端口)
若上述默认端口存在占用,则需进行修改后才能启动,最好不要动端口号。
sh
# Windows中检查端口号是否占用的CMD命令
netstat -ano | findstr "查询的端口号"
Elasticsearch 端口号更改
Windows 版本,解压缩之后,进入工具目录,打开 config 目录,打开 elasticsearch.yml 配置文件,找到下列配置,没有则新增配置,重启Elasticsearch即可。
yaml
http.port: 9200
注意事项
若更改 Elasticsearch 端口号后,在 SkyWalking 中也要对应修改监听的端口号,因为 SkyWalking 默认监听的存储端口是9200。
SkyWalking 端口号更改
Windows版本, SkyWalking 的端口号修改在两个配置文件中,分别为:
- config/application.yml 用于Service端的配置
- webapp/application.yml 用于UI界面的配置
config/application.yml 中,搜索11800和12800就能找到对应的配置,按需求修改即可,若更改了Elasticsearch的端口,此时也应搜索9200,将其修改为对应的端口
webapp/application.yml 中,直接搜索8080,按需修改即可。
工具启动
Elasticsearch
Windows版本,运行在bin/elasticsearch.bat 的脚本即可运行,运行成功后访问地址:https://localhost:9200
账户名:elastic
密码:通过 bin\elasticsearch-reset-password -u elastic -a -s 可查询用户密码,据说可从日志中获取,但我并未查询到
注意事项
Elasticsearch 默认只支持 HTTPS 协议,为方便起见,可在 config/elasticsearch.yml 将 xpack.security.enabled 设为false 允许使用HTTP协议,若无此配置则追加,建议开发环境如此操作,不然 SkyWalking 中需配置相应证书才能访问,SkyWalking 默认是HTTP协议。
SkyWalking
首先要配置存储数据的类型,在config/application.yml中配置 storage 中的 selector 的默认值为 elasticsearch
Windows版本,运行在bin/startup.bat 的脚本即可运行,运行成功后访问地址:https://localhost:8080
之后在IDEA中配置 SkyWalking 的Agent,在项目中的根目录新建空白目录,名称命名为jeecg-skywarking,将下载下来的Agent解压后放进去
最后在IDEA中配置网关服务的启动选项,追加JVM虚拟机选项,添加下列内容
sh
-javaagent:D:\JAVA\cloud\jeecg-yanshi\jeecg-skywarking\agent\skywalking-agent.jar
-Dskywalking.agent.service_name=jeecg-ys-gateway
-Dskywalking.collector.backend_service=localhost:11800
路径修改为自己的路径位置,端口号如发生更改,也同步修改即可。
结束
全部运行起来后,启动项目,多访问几次接口,在localhost:8080就能看到面板数据了,请求数量要多。