Skywalking初体验

安装

image-20201122184542389

https://skywalking.apache.org/downloads/

这两个包,一个支持es,一个不支持es存储,看个人需要,我先用上面那个作为演示,后面换成es作为存储介质。

image-20201122182026497

下载速度还算是挺快的,因为apache额外提供了国内镜像站。

tar -zxvf apache-skywalking-apm-8.2.0.tar.gz
cd apache-skywalking-apm-bin
##默认情况下,使用h2数据库存储,无需修改相关配置,也能启动
cd bin
./startup.sh

启动成功:进入192.168.1.47:8080(webUI端口8080)

image-20201122183526057

启动日志文件:在安装目录的logs目录下。

如果无法进入web页面,报错信息主要可以观察skywalking-oap-server.log和webapp.log这两个日志文件。

image-20201122183457782

整合微服务(jar包启动)

在启动项目的shell脚本上,通过-javaagent参数进行配置Skywalking agent。

准备一个springboot程序,打成可执行jar包,写一个shell脚本。(重点

vi bootShell.sh
#!/bin/sh
# SkyWalking Agent配置
export SW_AGENT_NAME=boot-micrometer #Agent名字,一般使用`spring.application.name`
export SW_AGENT_COLLECTOR_BACKEND_SERVICES=127.0.0.1:11800 #配置 Collector 地址。
export SW_AGENT_SPAN_LIMIT=2000 #配置链路的最大Span数量,默认为 300。
export JAVA_AGENT=-javaagent:/opt/apache-skywalking-apm-bin/agent/skywalking-agent.jar
java $JAVA_AGENT -jar boot-micrometer-0.0.1-SNAPSHOT.jar #jar启动

执行:

chmod 777 bootShell.sh
nohup ./bootShell.sh &

执行完成后,我们可以看到多出来一个服务实例。

image-20201122213156980

点击右下角,切换时间为最近三十分钟(如果你访问服务的端口,就可以看到数据啦)

页面也是十分炫酷的,比zipkin要好看一点。

image-20201122213405180

服务详细信息:

image-20201122214524979

拓扑图:

image-20201122213645458

链路追踪:

image-20201122213813276

还有一堆功能,自己多点点,页面上功能应该也都能发现出来。

tomcat部署

修改:apache-tomcat-xxxx/bin/catalina.sh文件

在#!/bin/sh下一行加上:

CATALINA_OPTS="$CATALINA_OPTS -javaagent:/opt/apache-skywalking-apm-bin/agent/skywalking-agent.jar";
export CATALINA_OPTS;

然后启动tomcat,注意tomcat可能会和skywalking ui端口冲突,二者改其一。

idea中开发使用Skywalking

在运行的程序配置jvm参数和环境变量参数,如下图所示:

image-20201122220452878

image-20201122220159587

-javaagent:E:/devSoft/apache-skywalking-apm-bin/agent/skywalking-agent.jar
SW_AGENT_COLLECTOR_BACKEND_SERVICES=192.168.1.47:11800;SW_AGENT_NAME=gulimall-product

配置好后,然后启动服务。刚才注册的gulimall-product服务也被发现了,包括redis,mysql。

image-20201122221211364

原文地址:https://www.cnblogs.com/wwjj4811/p/14021695.html