你有真正了解过国产开源框架APM工具——SkyWalking技术有多牛吗

SkyWalking技术

SkyWalking是国内一个开源并提交到Apache孵化器的产品,是用于收集、分析、聚合、可视化来自不同服务和本地基础服务的数据的可视化的平台。SkyWalking提供了一个可以对分布式系统甚至是跨云服务有清晰了解的简单方法。SkyWalking符合OpenTracing规范,同时提供更加现代化、炫酷的UI,可以更加直观地监控应用。SkyWalking的官方架构如下图所示。

你有真正了解过国产开源框架APM工具——SkyWalking技术有多牛吗_第1张图片

整个系统分为三部分。

  • Agent:采集Tracing(调用链数据)和Metrics(指标)信息并上报。

  • OAP:收集Tracing和Metrics信息通过Analysis Core模块将数据放入持久化容器中(内存数据库H2、MySQL等),并进行二次统计和监控告警。

  • Webapp:前后端分离,前端负责呈现,并将查询请求封装为GraphQL提交给后端;后端通过Ribbon做负载均衡转发给OAP集群,再将查询结果渲染展示。

SkyWalking符合OpenTracing规范,调用链采集数据格式如下。

你有真正了解过国产开源框架APM工具——SkyWalking技术有多牛吗_第2张图片

SkyWalking接入介绍

Idea本地启动:

使用jar方式启动:

SkyWalking的TraceID与日志组件(Log4j、Logback、ELK等)的集成:

你有真正了解过国产开源框架APM工具——SkyWalking技术有多牛吗_第3张图片

SkyWalking的页面展示,以及整体服务调用情况统计DashBoard,如下图所示。

你有真正了解过国产开源框架APM工具——SkyWalking技术有多牛吗_第4张图片

调用链详细信息展示,如下图所示。

你有真正了解过国产开源框架APM工具——SkyWalking技术有多牛吗_第5张图片

监 控 系 统 按 照 原 理 和 作 用 大 致 可 以 分 为 三 类 :度 量 类(Metrics)、日志类(Log)、调用链类(Tracing)。对于不同的监控对象和监控数据类型,需要采用对应的技术栈和监控手段。对于Spring Boot微服务架构,除了开发框架自带的生产就绪组件能够支持服务的健康状态指标查询,我们还需要引入第三方ELK框架作为日志监控组件,与Zipkin和SkyWalking等组件共同实现调用链监控。

你可能感兴趣的:(开源,skywalking,java)