核心特性:
做事、做事实例、端点指标剖析;运行时root cause剖析;做事拓扑图剖析;做事、做事实例、端点依赖剖析;慢做事、端点检测;性能优化剖析;分布式trace跟踪和context跨进程传播;数据库指标剖析,慢sql检测;预警提醒;浏览器端性能监控;根本举动步伐指标(vm虚拟机、网络、磁盘等)监控;架构上图是skywalking的逻辑架构,支持多种探针/代理和多平台措辞sdk。
系统架构是client-server模型,事情流程如下:

本文以java运用监控为例,先容skywalking 的做事安装。
做事端安装通过下面地址,选择对应程序版本。这里以apache-skywalking-apm-es7-8.5.0.tar.gz为例。
https://skywalking.apache.org/downloads/
下载完成,解压文件到某个目录。
apache-skywalking-apm-bin-es7下紧张目录先容:
agent:代理工具。agent/skywalking-agent.jar是默认java代理程序,在后面监控运用启动参数中会利用。skywalking-agent.jar利用java instrument机制实现运用的无侵入监控。其他措辞,如go、nodejs代理需参考官网自行下载。bin:skywalking做事端实行脚本。config:skywalking做事真个配置文件。webapp:skywalking web UI程序,springboot实现。实行bin/startup.bat脚本(Linux下bin/startup.sh),该程序会同时启动skywalking的backend和web UI两个程序。
backend默认以H2内存数据库作为存储介质。backend默认监听0.0.0.0/11800 为gRPC APIs,监听0.0.0.0/12800为http rest APIs。web UI默认监听8080为界面访问端口,要求127.0.0.1/12800向backend实行GraphQL查询。
做事器启动成功,要求http://localhost:8080/地址访问web界面。
客户端监控
skywalking利用java instrument机制,在vm虚拟机层通过动态拦截来实现监控做事及端点信息的数据上报。以是被监控的项目系统无需代码改造,只要在系统启动时添加干系agent参数即可。这里以一个springboot项目app.jar作为测试。实行以下命令,启动程序。
java \ -javaagent:d:\working\workspace\opensource\apache-skywalking-apm-bin-es7\agent\skywalking-agent.jar \ -Dskywalking.agent.service_name=consumer \ -Dskywalking.collector.backend_service=127.0.0.1:11800 -jar app.jar
参数解释:
javaagent:指定skywalking代理/探针client程序,这里是做事端安装下载包根目录agent/skywalking-agent.jar文件路径。skywalking.agent.service_name:被监控的运用做事名称。skywalking.collector.backend_service:数据上报backend端地址。运用启动成功,访问任意一个api。
刷新skywalking web ui,点击头部 仪表盘-APM菜单。将会呈现对应的运用监控数据。
点击 '拓扑图' 菜单,显示要求对应的运用拓扑调用关系图。
skywalking web UI中追踪、性能阐发、日志、告警等功能请参考官方文档,自行探索。
附录https://skywalking.apache.org/docs/https://skywalking.apache.org/docs/main/v8.5.0/readme/https://skywalking.apache.org/docs/main/v8.5.0/en/setup/service-agent/java-agent/readme/
小结
本文对skywalking分布式链路调用监控系统进行了入门先容,包含了skywalking的核心特性,系统架构,做事端安装,java客户端集成和大略web UI界面功能利用。
末了,希望本文对大家有所帮助和参考,若有其他建议,欢迎留言谈论。