龙空技术网

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

小陈博主 6390

前言:

今天朋友们对“java可视化”大概比较关注,大家都想要学习一些“java可视化”的相关资讯。那么小编在网摘上网罗了一些有关“java可视化””的相关内容,希望我们能喜欢,小伙伴们快快来学习一下吧!

前言碎语

当企业应用进入分布式微服务时代,应用服务依赖会越来越多,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地址,分别下载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等

标签: #java可视化