当企业应用进入分布式微服务时代,应用服务依赖会越来越多,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:探针,用来收集和发送数据到归集器
skywalaking 下载地址
1、下载地址
官方地址 https://github.com/OpenSkywalking/skywalking/releases 分别下载skywalking-collector.zip,skywalking-web.zip,skywalking-agent.zip
2、配置需要监控的应用的agent探针
实例windows为例。解压下载的skywalking-agent.zip文件,探针包含整个目录,请不要改变目录结构,可修改agent.config配置agent.application_code=xxl-job为自己的应用名。
# The application name in UI
agent.application_code=my_job
# The number of sampled traces per 3 seconds
# Negative number means sample traces as many as possible, most likely 100%
# agent.sample_n_per_3_secs=-1
# The max amount of spans in a single segment.
# Through this config item, skywalking keep your application memory cost estimated.
# agent.span_limit_per_segment=300
# Ignore the segments if their operation names start with these suffix.
# agent.ignore_suffix=.jpg,.jpeg,.js,.css,.png,.bmp,.gif,.ico,.mp3,.mp4,.html,.svg
# If true, skywalking agent will save all instrumented classes files in `/debugging` folder.
# Skywalking team may ask for these files in order to resolve compatible problem.
# agent.is_open_debugging_class = true
# Server addresses.
# Mapping to `agent_server/jetty/port` in `config/application.yml` of Collector.
# Examples:
# Single collector:SERVERS="127.0.0.1:8080"
# Collector cluster:SERVERS="10.2.45.126:8080,10.2.45.127:7600"
collector.servers=127.0.0.1:10800
# Logging level
logging.level=DEBUG
配置参数到需要监控的应用,比如监控一个tomcat,先修改tomcat配置文件,打开 catalina.bat,在首行添加 set JAVA_OPTS=-javaagent:[you path]\skywalking-agent\skywalking-agent.jar
setlocal
set JAVA_OPTS=-javaagent:F:\newwork\skywalking-agent\skywalking-agent.jar
配置完成可以直接启动tomcat应用,输入相应的地址tomcat正常运行,启动日志中共有agent相应信息则配置成功
3、配置skywalking-collector
打开bin中starup.bat即可,注意agent.config 中配置指向此服务即可,下图为agent.config默认指向
collector.servers=127.0.0.1:10800
正常启动打开浏览器可以看到
4、配置skywalking-web
application.properties指定了此应用运行端口,注意不要和别的重复。也是点击startup启动,启动后可以看到界面
自此一个简单的apm就完成了
可以查看到调用信息
gc信息