介绍
官网
https://skywalking.apache.org/
官方推荐B站视频:https://space.bilibili.com/390683219
组成
- Agent(探针):Agent运行在各个服务实例中,负责采集服务实例的Trace、Metrics等数据,然后通过gRPC方式上报给SkyWalking后端。
- 后端服务:后端服务负责接收Agent上报的数据,进行存储、分析和聚合,提供查询接口。
- 前端界面:前端界面负责展示SkyWalking收集的数据和分析结果,以图形化的方式展示分布式系统的运行情况
概念介绍
总体介绍:https://skyapm.github.io/document-cn-translation-of-skywalking/
探针agent
- 介绍 https://skyapm.github.io/document-cn-translation-of-skywalking/zh/8.0.0/concepts-and-designs/probe-introduction.html
- 安装包下载: https://archive.apache.org/dist/skywalking/java-agent
- 安装 :https://skyapm.github.io/document-cn-translation-of-skywalking/zh/8.0.0/setup/service-agent/java-agent/
agent配置文件的介绍
- agent.span_limit_per_segment:用于限制单个Segment中的Span数量。通过合理配置该参数,可以在保证数据完整性的同时,优化内存使用,避免在高负载环境下出现内存溢出等问题
agent的配置文件的介绍
- SW_AGENT_SPAN_LIMIT
后台服务
- 介绍:
- 安装包下载: https://archive.apache.org/dist/skywalking
- 安装注意:如果数据库用mysql,需要将mysql的驱动复制到oap-libs目录下,并创建库swtest,表不用创建,启动后台服务时会自动创建
后台配置文件的介绍
cluster:
selector: ${SW_CLUSTER:standalone}
selector: ${SW_CLUSTER:standalone}
:是选择,SW_CLUSTER是环境变量,如果有配置则优先使用环境变量的值,如果没有则使用后面的standalone的值,如果是${SW_CLUSTER:-}
则为不启动此模块,但是有些模块是必须的,如果设置为了-
会启动报错
使用
启动服务器时配置上启动skywalking的agent
jar包启动服务时
的配置agent启动的方式
如果是sh启动文件可以使用一下配置
SKY_AGENT=/skywalking/skywalking-agent/skywalking-agent.jar
SKY_SERVER_ADDAR="127.0.0.1:11800" #服务端oap地址
SKY_AGENT_NAMESPACE="namespace" #命名空间
SKY_AGENT_SERVER_NAME="service_name" #Java服务名称
SKY_AGENT_CONFIG="-Dskywalking.agent.namespace=$SKY_AGENT_NAMESPACE -Dskywalking.agent.service_name=$SKY_AGENT_SERVER_NAME -Dskywalking.collector.backend_service=$SKY_SERVER_ADDAR"
#JVM参数
JVM_OPTS="-javaagent:${SKY_AGENT} ${SKY_AGENT_CONFIG} -Dname=$AppName -Duser.timezone=Asia/Shanghai -Xms512M -Xmx512M -XX:PermSize=256M -XX:MaxPermSize=256M -XX:+HeapDumpOnOutOfMemoryError -XX:+PrintGCDateStamps -XX:+PrintGCDetails -XX:NewRatio=1 -XX:SurvivorRatio=30 -XX:+UseParallelGC -XX:+UseParallelOldGC -Dspring.profiles.active=dev"
nohup java $JVM_OPTS -jar jar包 &
tomca启动时的配置agent启动的方式
在tomcat的bin目录中创建setenv.sh文件并编辑下相对应的配置信息保存并重启tomcat
JAVA_OPTS="$JAVA_OPTS -javaagent:/skywalking/skywalking-agent-9.2.0/skywalking-agent.jar -DSW_AGENT_COLLECTOR_BACKEND_SERVICES=127.0.0.1:11800 -DSW_AGENT_NAMESPACE=namespace -DSW_AGENT_NAME=代理名称"
后台界面
官方后台UI:https://skyapm.github.io/document-cn-translation-of-skywalking/zh/8.0.0/ui/
查询异常接口
如果异常并且查看异常信息
查看访问量
global
- Services Load ( CPM / PPM ) :每分钟请求数
- Slow Services(ms) :(慢服务)通常指的是那些响应时间较长、性能表现不佳的服务
- Un-Health Services (Apdex):服务的不健康值,0-1,值越大越健康
- Slow Endpoints( ms ) :(慢端点)是指那些响应时间超过了一定阈值的端点
Service
- Service Avg Response Time:服务的平均响应时长
- Service Response Time Percentile:服务响应时间百分比
- Successful Rate ( % ) :成功率
遇到的问题
- 版本8.9.1,启动oap时报
no provider found for module storage
,是因为skywalking的application.yml文件的storage:节点的selector: ${SW_STORAGE:h2}的问题,需要把selector: ${SW_STORAGE:h2}注释掉或者把后面的h2改为要使用的数据库