目录

SkyWalking 简介

SkyWalking 是一款优秀的 APM 工具(Application Performance Monitoring,应用性能监控),专为微服务、云原生架构和基于容器(Docker、K8S、Mesos)的架构而设计,包含了分布式追踪、性能指标分析和服务依赖分析等功能。

更详细介绍

SkyWalking 搭建

平台后端(Backend)

官方:How to use the Docker images

docker run --name oap -d -p 1234:1234 -p 11800:11800 -p 12800:12800 apache/skywalking-oap-server

如下表示搭建成功:

平台前端(UI)

官方:UI(旧版)

# 新版 UI(Booster UI)暂无 docker 镜像,因此以旧版为示例
docker run --name oap-ui -d -p 10800:8080 --link oap:oap -e SW_OAP_ADDRESS=http://oap:12800 apache/skywalking-ui

如下表示搭建成功:

Java Agent(Java 应用监控)

Java Agent 下载

官方:Setup java agent

curl -LO https://dlcdn.apache.org/skywalking/java-agent/8.11.0/apache-skywalking-java-agent-8.11.0.tgz

Java 演练项目

演练项目: https://github.com/spring-projects/spring-petclinic

  • 至少需要 Java11
[root@localhost skywalking]# cd spring-petclinic-main/
[root@localhost spring-petclinic-main]# ls
build.gradle        gradle   gradlew.bat  mvnw      pom.xml    settings.gradle
docker-compose.yml  gradlew  LICENSE.txt  mvnw.cmd  readme.md  src
[root@localhost spring-petclinic-main]# mvn clean package

启动项目并监控:

[root@localhost spring-petclinic-main]# pwd
/root/skywalking/spring-petclinic-main
[root@localhost spring-petclinic-main]# java -javaagent:/root/skywalking/skywalking-agent/skywalking-agent.jar -DSW_AGENT_NAME=petclinic_demo -DSW_AGENT_COLLECTOR_BACKEND_SERVICES=192.168.3.222:11800 -jar target/spring-petclinic-2.7.0-SNAPSHOT.jar

访问演练项目:

SkyWalking 监控

成功加载应用监控数据:

应用监控概览:

应用使用的链路追踪:

应用使用的相关 SQL: