skywalking 快速入门

一、skywalking简介

1、skywalking介绍

Skywalking是一个国产的开源框架,2015年有吴晟个人开源,2017年加入Apache孵化器,国人开源的产品,主要开发人员来自于华为,2019年4月17日Apache董事会批准SkyWalking成为顶级项目,支持Java、.Net、NodeJs等探针,数据存储支持Mysql、Elasticsearch等,跟Pinpoint一样采用字节码注入的方式实现代码的无侵入,探针采集数据粒度粗,但性能表现优秀,且对云原生支持,目前增长势头强劲,社区活跃。
Skywalking是分布式系统的应用程序性能监视工具,专为微服务,云原生架构和基于容器(Docker,K8S,Mesos)架构而设计,它是一款优秀的APM(Application Performance Management)工具,包括了分布式追踪,性能指标分析和服务依赖分析等。

2、skywalking特点

1、多语言自动探针,支持 Java、.NET Code 等多种语言。
2、为多种开源项目提供了插件,为 Tomcat、 HttpClient、Spring、RabbitMQ、MySQL 等常见基础设施和组件提供了自动探针。
3、微内核 + 插件的架构,存储、集群管理、使用插件集合都可以进行自由选择。
4、优秀的可视化效果。

3、skywalking架构图

在这里插入图片描述
1、Agent(探针)
Agent 运行在各个服务实例中,负责采集服务实例的 Trace 、Metrics 等数据,然后通过 gRPC 方式上报给 SkyWalking 后端。
2、opa
负责接收 Agent 发送的 Tracing 和Metric的数据信息,然后进行分析(Analysis Core) ,存储到外部存储器( Storage ),最终提供查询( Query )功能。
3、ui
负责提供web控制台,查看链路,查看各种指标,性能等等。
4、storage
负责数据的存储,支持多种存储类型。

2、skywalking简单使用

1、官网下载依赖

下载地址:https://skywalking.apache.org/downloads/ 。skywalking在8.8.0版本以后将agent单独拆分了出来,所以若要使用8.8.0版本以后的,需要下载apm和agent两个压缩包。下载完成后解压到自己本地目录。
在这里插入图片描述
在这里插入图片描述

2、skywalking配置与启动

1、修改服务端口以防冲突
解压后的apm目录中的webapp/webapp.yml 中修改为自己所用端口号 。
在这里插入图片描述
2、配置文件介绍
在解压后的apache-skywalking-apm-bin目录下config/application.yml,选择对应的注册中心及修改注册中心配置。
在这里插入图片描述
3、选择对应的存储方式
可以为elasticsearch或mysql存储,使用mysql连接时,需要mysql驱动包,下载mysql数据库驱动包,添加到oap-libs目录中,同时修改mysql的配置信息。

在这里插入图片描述
4、在启动服务apache-skywalking-apm-bin目录下的bin目录下启动startup.bat为windows下服务,startup.sh为linux下服务,启动后访问配置好的端口localhost:对应端口,访问成功即可查看UI界面。
在这里插入图片描述

3、客户端的搭建与配置

1、配置启动参数,本地测试可在idea的VM中配置如下参数
-javaagent:D:\skywalking\skywalking-agent\skywalking-agent.jar
-Dskywalking.agent.service_name=skywalking-product-service
-Dskywalking.collector.backend_service=192.168.0.103:11800
参数说明:
-javaagent:指定skywalking中的agent中的skywalking-agent.jar的路径
-Dskywalking.agent.service_name:指定在skywalking中的服务名称,一般是微服务的spring.application.name
-Dskywalking.collector.backend_service:指定oap服务绑定的地址,并且oap服务默认的端口是11800,因此只需要配置为IP:11800
在这里插入图片描述
2、配置日志跟踪
添加依: 配置logback-spring.xml 日志文件及日志打印格式,可以看到控制台打印的TID。

        <!--Logback-skywalking的依赖-->
        <dependency>
            <groupId>org.apache.skywalking</groupId>
            <artifactId>apm-toolkit-logback-1.x</artifactId>
            <version>8.7.0</version>
        </dependency>

在这里插入图片描述

在这里插入图片描述
3、配置完成后启动服务,可以在UI界面查看到服务信息。
在这里插入图片描述
4、访问服务其中的接口后,点击对应的服务可以看到服务面板,面板中包括服务的成功率,服务的接口耗时,平均耗时,每分钟请求等信息。
在这里插入图片描述
5、topology代表服务之间的依赖关系,可以看出图中依赖为skywalking-order和skywalking-product两个服务的依赖和对数据库的依赖关系。
在这里插入图片描述
6、Trace表示请求的接口链路信息。左侧为请求的接口路径以及接口耗时,右边表示该接口访问的整个链路信息。可根据对应的traceId查询,可快速定位到接口链路信息,方便排查问题。
在这里插入图片描述
点击链路详细信息可查看日志详细信息。下图为详细SQL及服务调用接口信息。
在这里插入图片描述
在这里插入图片描述
7、log表示服务的请求日志信息,每次的请求都会在log中展示。
在这里插入图片描述

  • 9
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值