SkyWalking是什么
SkyWalking是一个在分布式系统环境下的系统性能监控和链路追踪方案,入门教程参考:SkyWalking 极简入门。可用于多种场景下的链路追踪,如:HTTP,Dubbo,JDBC,Redis,MQ,甚至还可以实现自定义追踪方法,集成到日志输出中,功能非常全面而且灵活。
SkyWalking不与任何业务系统产生耦合,本质上可以看作是一个监控中心,业务系统只需要按规则接入即可,对业务系统本身不产生任何的入侵。
SkyWalking主要包含4个部分:
- Agent:用于收集数据,这个Agent就是SkyWalking安装包解压后的agent目录,在运行业务系统时指定
- SkyWalking OAP:负责接收Agent发送的Tracing数据信息,然后进行分析(Analysis Core) ,存储到外部存储器(Storage),最终提供查询(Query)功能
- Storage:数据存储,支持ElasticSearch、MySQL、TiDB、H2多种存储器
- SkyWalking UI:负责提供控台,查看链路等等
如何使用SkyWalking
前面已经说过,SkyWalking本质上是一个监控系统,它的服务端(包含SkyWalking OAP,Storage,SkyWalking UI)是独立部署的。
因此,在将业务系统接入到SkyWalking之前,需要先部署SkyWalking。
在这里下载SkyWalking安装包。
关于SkyWalking单机环境或集群环境的搭建,可以参考搭建-skywalking-单机环境和搭建 SkyWalking 集群环境。
在部署完SkyWalking服务端之后,通过Web控制台可以查看接入的组件信息。
在业务系统这一端,接入SKyWalking很简单,通常只需要设置如下启动参数即可:
1 | SkyWalking Agent配置 |
当然,针对SkyWalking的一些特殊用法(如:将TraceId输出到logback日志信息中,集成Opentracing等),可能还需要集成一些JDK,可以参考芋道 Spring Boot 链路追踪 SkyWalking 入门中的示例。
【参考】
javaAgent 参数
javaagent使用指南
SkyWalking官网
SkyWalking 极简入门
芋道 Spring Boot 链路追踪 SkyWalking 入门
SkyWalking 文档中文版
全网最详细的Skywalking分布式链路追踪
SkyWalking线上问题排查定位