https://github.com/apache/incubator-skywalking


kyWalking: 针对分布式系统的APM(应用性能监控)系统,特别针对微服务、cloud native和容器化(Docker, Kubernetes, Mesos)架构, 其核心是个分布式追踪系统。

GitHub stars Twitter Follow

Build Status Join the chat at https://gitter.im/openskywalking/Lobby OpenTracing-1.x Badge

Document

EN doc cn doc

5.x Architecture

code of conduct

This project adheres to the Contributor Covenant code of conduct. By participating, you are expected to uphold this code. Please report unacceptable behavior to wusheng@apache.org.

Live Demo

Screenshots

  • 全局总揽

  • 拓扑图自动发现

  • 应用视图

  • 应用服务器视图

  • 服务视图

  • 调用链

  • 告警

Test reports


============================


java分布式链路追踪&jvm应用监控-skywalking


当企业应用进入分布式微服务时代,应用服务依赖会越来越多,skywalking可以很好的解决服务调用链路追踪的问题,而且基于java探针技术,基本对应用零侵入零耦合。

skywalking是什么,有什么用?

Skywalking 是一个APM系统,即应用性能监控系统,为微服务架构和云原生架构系统设计。它通过探针自动收集所需的指标,并进行分布式追踪。通过这些调用链路以及指标,Skywalking APM会感知应用间关系和服务间关系,并进行相应的指标统计。目前支持链路追踪和监控应用组件如下,基本涵盖主流框架和容器,如国产PRC Dubbo和motan等,国际化的spring boot,spring cloud都支持了

skywalaking总体架构分为三部分

skywalking-collector:链路数据归集器,数据可以落地ElasticSearch,单机也可以落地H2,不推荐,H2仅作为临时演示用

skywalking-web:web可视化平台,用来展示落地的数据

skywalking-agent:探针,用来收集和发送数据到归集器

如何快速开始?

第一步:进入官方release地址https://github.com/OpenSkywalking/skywalking/releases,分别下载skywalking-collector,skywalking-web,skywalking-agent,解压后,归集器和web应用都会有一个bin目录,单机模式下,不需要改配置,直接执行对应的脚本即可

第二步:配置需要监控的应用的agent探针

拷贝skywalking-agent目录到所需位置,探针包含整个目录,请不要改变目录结构,可修改agent.config配置agent.application_code=xxl-job为自己的应用名

增加JVM启动参数,-javaagent:/path/to/skywalking-agent/skywalking-agent.jar。参数值为skywalking-agent.jar的绝对路径。

第三步:打开web页面,查看拓扑信息,端口默认8080,所以一般没问题,打开localhost:8080就会看到如下的系统图例了

系统使用图例

系统主页各应用的拓扑图

系统实例,一个应用一个实例

系统jvm和cpu使用率等监控信息

服务调用的span详细信息

服务依赖树

服务调用链路

其他

1.除了可以使用自动探针上报数据外,还可以使用注解,用埋点的方式手动上传业务数据

2.还可以将traceId。集成到主流的日志框架中输出,如log4j,logback等




Logo

开源、云原生的融合云平台

更多推荐