SpringBoot集成Skywalking实现分布式链路追踪

这篇具有很好参考价值的文章主要介绍了SpringBoot集成Skywalking实现分布式链路追踪。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

  • 官方网址: Apache SkyWalking
  • 官方文档: SkyWalking 极简入门 | Apache SkyWalking
  • 下载地址:Downloads | Apache SkyWalking 

Agent:以探针的方式进行请求链路的数据采集,并向管理服务上报;

OAP-Service:接收数据,完成数据的存储和展示;

Storage:数据的存储层,支持ElasticSearch、Mysql、H2多种方式;

        skywalking在之前的旧版本中,apm与agent是在一个包中的,在9.0以后的版本中是需要分开下载的;agent包下载解压之后,也将其放到apm包下面维护

  • apache-skywalking-apm-9.2.0.tar.gz

  • apache-skywalking-java-agent-8.12.0.tgz

SpringBoot集成Skywalking实现分布式链路追踪,SpringBoot,skywalking,分布式

将agent包下载解压之后,也将其放到apm包下面:

SpringBoot集成Skywalking实现分布式链路追踪,SpringBoot,skywalking,分布式

端口号修改:默认8080,这里修改为8081

SpringBoot集成Skywalking实现分布式链路追踪,SpringBoot,skywalking,分布式

启动:Windows 直接点击bin/startup.bat

SpringBoot集成Skywalking实现分布式链路追踪,SpringBoot,skywalking,分布式

会启动两个服务:

SpringBoot集成Skywalking实现分布式链路追踪,SpringBoot,skywalking,分布式

SpringBoot集成Skywalking实现分布式链路追踪,SpringBoot,skywalking,分布式

        在服务启动类中添加agent配置,如果在生产环境中,通常会统一在脚本中设置,由于在本地环境演示,基于IDEA工具进行管理:

SpringBoot集成Skywalking实现分布式链路追踪,SpringBoot,skywalking,分布式

SpringBoot集成Skywalking实现分布式链路追踪,SpringBoot,skywalking,分布式

-javaagent:G:\skywalking\apache-skywalking-apm-bin\skywalking-agent\skywalking-agent.jar
-Dskywalking.agent.service_name=skywalking-demo
-Dskywalking.collector.backend_service=127.0.0.1:11800

保存后启动项目并访问任意接口:

SpringBoot集成Skywalking实现分布式链路追踪,SpringBoot,skywalking,分布式

SpringBoot集成Skywalking实现分布式链路追踪,SpringBoot,skywalking,分布式


SkyWalking数据持久化

SkyWalking 默认是将数据存入在内存中,如果重启SkyWalking 数据则都会丢失。

我们可以选择将数据持久化存放在mysql、es中等。

1.数据可以持久化在mysql、es中等。

修改config下的application.yml

SpringBoot集成Skywalking实现分布式链路追踪,SpringBoot,skywalking,分布式

SpringBoot集成Skywalking实现分布式链路追踪,SpringBoot,skywalking,分布式

selector: ${SW_STORAGE:mysql}

SpringBoot集成Skywalking实现分布式链路追踪,SpringBoot,skywalking,分布式

mysql:
   properties:
     jdbcUrl: ${SW_JDBC_URL:"jdbc:mysql://localhost:3306/skywalking?serverTimezone=UTC&characterEncoding=utf-8&useSSL=false"}
     dataSource.user: ${SW_DATA_SOURCE_USER:root}
     dataSource.password: ${SW_DATA_SOURCE_PASSWORD:123456}
     dataSource.cachePrepStmts: ${SW_DATA_SOURCE_CACHE_PREP_STMTS:true}
     dataSource.prepStmtCacheSize: ${SW_DATA_SOURCE_PREP_STMT_CACHE_SQL_SIZE:250}
     dataSource.prepStmtCacheSqlLimit: ${SW_DATA_SOURCE_PREP_STMT_CACHE_SQL_LIMIT:2048}
     dataSource.useServerPrepStmts: ${SW_DATA_SOURCE_USE_SERVER_PREP_STMTS:true}
   metadataQueryMaxSize: ${SW_STORAGE_MYSQL_QUERY_MAX_SIZE:5000}

修改完毕创建skywalking数据库

 2.需要在oap-libs/ 放入 mysql-connector-java-8.0.16.jar

SpringBoot集成Skywalking实现分布式链路追踪,SpringBoot,skywalking,分布式

 3.重启SkyWalking

查看数据库会自动创建表

SpringBoot集成Skywalking实现分布式链路追踪,SpringBoot,skywalking,分布式文章来源地址https://www.toymoban.com/news/detail-779991.html

到了这里,关于SpringBoot集成Skywalking实现分布式链路追踪的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 基于Spring Cloud Alibaba+Skywalking的分布式链路追踪设计

    胡弦,视频号2023年度优秀创作者,互联网大厂P8技术专家,Spring Cloud Alibaba微服务架构实战派(上下册)和RocketMQ消息中间件实战派(上下册)的作者,资深架构师,技术负责人,极客时间训练营讲师,四维口袋KVP最具价值技术专家,技术领域专家团成员,2021电子工业出版社年度优

    2024年04月22日
    浏览(40)
  • 分布式链路追踪--SkyWalking7.0.0+es7.0.0

    ​ 微服务的出现,的确解决了一些业务 痛点 ,但是也造成了新的问题比如随着调用链的拉长,如果想要知道请求为什么这么慢,这个请求到底经历了哪些环节,又依赖了哪些东西,在微服务架构中定位这些问题并且解决是比较麻烦的。 ​ 什么是调用链呢? ​ A服务调用B服

    2024年02月07日
    浏览(42)
  • 2.Zookeeper集成springboot操作节点,事件监听,分布式锁实现

    1.Springboot项目中添加zookeeper 已经对应的客户端依赖 ,pom.xml文件如下 2.application.yml 文件中配置zookeeper连接的相关配置信息 3.java配置的方式添加zookeeper相关的配置 4.Zookeeper基础操作服务和分布式锁服务编码 5.watcher机制事件处理抽象封装 6.基本操作的单元测试代码

    2024年03月10日
    浏览(49)
  • springboot dubbo seata nacos集成 分布式事务seata实现

    官网:http://seata.io/zh-cn/docs/overview/what-is-seata.html Seata 是一款开源的分布式事务解决方案,致力于提供高性能和简单易用的分布式事务服务。Seata 将为用户提供了 AT、TCC、SAGA 和 XA 事务模式,为用户打造一站式的分布式解决方案。 官网;https://cn.dubbo.apache.org/zh-cn/overview/what/

    2024年02月13日
    浏览(47)
  • 【SpringBoot应用篇】SpringBoot集成atomikos实现多数据源配置和分布式事务管理

    讨论分布式事务之前我们分清两个概念: 本地事务 、 分布式事务 ; 本地事务是解决 单个数据源 上的数据操作的 一致性 问题的话,而分布式事务则是为了解决 跨越多个数据源 上数据操作的 一致性 问题。 百度官方对分布式事务的定义是指事务的参与者、支持事务的服务

    2024年02月16日
    浏览(50)
  • 全面掌握 Jaeger 分布式调用链路跟踪理论和实战,Go 为所有使用 go-resty 库发起 HTTP 请求集成链路跟踪 jaeger(附源码)

    全面掌握 Jaeger 分布式调用链路跟踪理论和实战,Go 为所有使用 go-resty 库发起 HTTP 请求集成链路跟踪 jaeger(附源码)。 介绍一个开源的分布式跟踪系统 Jaeger,首先从理论基础知识开始学习,将学习如何在 HTTP 请求中集成链路跟踪,以及如何在 GORM 框架实现,最后学习 go-ze

    2024年02月13日
    浏览(50)
  • Golang链路追踪:实现高效可靠的分布式系统监控

    在当今互联网应用的架构中,分布式系统已经成为主流。分布式系统的优势在于能够提供高可用性、高并发性和可扩展性。然而,随着系统规模和复杂性的增加,系统的监控和调试变得越来越困难。为了解决这个问题,链路追踪技术应运而生。 本文将介绍链路追踪的概念和原

    2024年02月08日
    浏览(41)
  • Spring Cloud Alibaba 最新版本(基于Spring Boot 3.1.0)整合完整使用及与各中间件集成 Sleuth+Zipkin集成分布式链路追踪

    目录 前言 源码地址 官方中文文档 使用版本 spring Spring Boot 3.1.0 中间件 使用到的组件与功能 环境安装 虚拟机 nexus nacos 集成过程 工程搭建 父工程搭建 子工程 服务集成 nacos集成 配置文件 服务注册与发现-discovery 服务注册 启动 服务发现 测试 配置管理-config 新增配置  测试

    2024年02月12日
    浏览(48)
  • 分布式id生成方案及springboot进行集成

    UUID(Universally Unique Identifier) 即通用唯一识别码,是一种由网络软件使用的标识符,它是由IP地址、当前时间戳、随机数、节点等多个部分组成,具有唯一性。但是,UUID方案的缺点是,生成的id较长,不便于存储和使用。 Snowflake算法 它是Twitter公司开源的一个分布式唯一ID生成器

    2023年04月08日
    浏览(40)
  • 分布式系统中的分布式链路追踪与分布式调用链路

    本文分享自天翼云开发者社区《分布式系统中的分布式链路追踪与分布式调用链路》,作者:c****w 在分布式系统中,由于服务间的调用关系复杂,需要实现分布式链路追踪来跟踪请求在各个服务中的调用路径和时间消耗。这对问题排查和性能监控都很重要。 常用的分布式链

    2024年01月19日
    浏览(59)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包