java微服务项目整合skywalking链路追踪框架

skywalking官网网址:Apache SkyWalking

目录

1、安装skywalking

2、微服务接入skywalking

3、skywalking数据持久化


1、安装skywalking

下载skywalking,本篇文章使用的skywalking版本是8.5.0

Index of /dist/skywalkinghttps://archive.apache.org/dist/skywalking/

点击上方链接进入skywalking下载页面

选择对应的版本

下载对应的tar包,注意不要下载错了,-src后缀的是源代码。

下载完成后,把下载下来的压缩包解压到D盘,然后进入bin目录下,双击startup的windows运行文件。

这时候会弹出两个窗口,正常情况下,只要两个窗口不会自动关闭,就是启动成功了。

然后在浏览器地址栏输入localhost:8080访问skywalking

如果能看到这个页面, skywalking的安装就到了尾声。

2、微服务接入skywalking

接下来在微服务中接入并使用skywalking,只需要添加微服务启动时的jvm参数

需要配置的JVM参数:-javaagent:后面的路径需要修改为对应skywalking的agent目录下的skywalking-agent.jar的绝对路径。

-javaagent:D:\program\apache-skywalking-apm-bin\agent\skywalking-agent.jar
-DSW_AGENT_NAME=skywalking
-DSW_AGENT_COLLECTOR_BACKEND_SERVICES=127.0.0.1:11800

这样,当我们的微服务发起请求的时候,就能在skywalking的ui界面看到相关的调用链路了。

3、skywalking数据持久化

skywalking默认通过H2数据库保存数据,数据存在内存中,每次重启skywalking都会导致数据丢失。如果有持久化保存的需求,可以修改成其他数据库存储,这篇文章就介绍怎么修改为mysql存储。

只需要修改配置文件config/application.yml,找到storage的配置,修改selector后面的数据库类型为mysql

然后鼠标往下滚动,找到mysql,修改对应的连接信息:数据名、用户名、密码,这里的数据库需要自己手动创建。

修改完成后,保存配置文件,重新启动skywalking。这时候会发现启动时有一个窗口自动关闭了,因为启动失败,找到logs目录下的日志文件,打开查看详情。

在文件末尾会看到下面的异常信息,获取不到mysql驱动,这是因为少了mysql的驱动包,在项目中找到对应jar包。

然后把这个jar包复制到/oap-libs/目录下,如图,然后重新启动skywalking

启动完成后,skywalking数据库下会创建很多表

好了,这篇文章就分享到这里了~

相关推荐
2401_8574396944 分钟前
SpringBoot框架在资产管理中的应用
java·spring boot·后端
怀旧6661 小时前
spring boot 项目配置https服务
java·spring boot·后端·学习·个人开发·1024程序员节
阿华的代码王国1 小时前
【SpringMVC】——Cookie和Session机制
java·后端·spring·cookie·session·会话
哎呦没4 小时前
SpringBoot框架下的资产管理自动化
java·spring boot·后端
2401_857600954 小时前
SpringBoot框架的企业资产管理自动化
spring boot·后端·自动化
NiNg_1_2348 小时前
SpringBoot整合SpringSecurity实现密码加密解密、登录认证退出功能
java·spring boot·后端
种树人202408198 小时前
如何在 Spring Boot 中启用定时任务
spring boot
苹果醋311 小时前
Java8->Java19的初步探索
java·运维·spring boot·mysql·nginx
Wx-bishekaifayuan11 小时前
django电商易购系统-计算机设计毕业源码61059
java·spring boot·spring·spring cloud·django·sqlite·guava
customer0811 小时前
【开源免费】基于SpringBoot+Vue.JS周边产品销售网站(JAVA毕业设计)
java·vue.js·spring boot·后端·spring cloud·java-ee·开源