JeecgBoot SkyWalking 分布式链路跟踪配置

背景

Jeecg Boot 3.8.2 微服务

SkyWalking 用于请求的链路跟踪,Elasticsearch 用于数据存储。

环境准备

  1. Java版本要求大于11
  2. 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 的端口号修改在两个配置文件中,分别为:

  1. config/application.yml 用于Service端的配置
  2. 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就能看到面板数据了,请求数量要多。

相关推荐
用户4973573379817 小时前
MySQL/Redis等6大数据库,在7种Java业务中的选型与调优
后端
逻极17 小时前
Rust流程控制(上):if_else与match模式匹配
开发语言·后端·rust
小雨下雨的雨17 小时前
Rust专项——其他集合类型详解:BTreeMap、VecDeque、BinaryHeap
开发语言·后端·rust
88Ra17 小时前
Spring Boot 3.3新特性全解析
java·spring boot·后端
好学且牛逼的马18 小时前
【SSM框架 | day24 spring IOC 与 DI】
java·后端·spring
朝新_18 小时前
【SpringBoot】配置文件
java·spring boot·笔记·后端·spring·javaee
掘金码甲哥18 小时前
新来的外包,限流算法用的这么6
后端
叹雪飞花18 小时前
借助Github Action实现通过 HTTP 请求触发邮件通知
后端·开源·github
曾经的三心草18 小时前
springCloud二-SkyWalking3-性能剖析-⽇志上传-告警管理-接入飞书
后端·spring·spring cloud