▶ 概述java
SkyWalking 是一个开源的 APM 系统,核心功能以下:面试
▶ SkyWalking 架构图spring
SkyWalking 支持多种来源和多种格式的 traces / metrics 数据,包括:docker
▶ 部署 SkyWalking OAP & SkyWalking UI数据库
参考文档:Docker 部署 SkyWalking OAP & UIapache
▶ 示例:Spring Boot & SkyWalking Java Agentjson
一、获取 Java Agent 库性能优化
参考 Docker 镜像 - 构建 SkyWalking OAP & UI ,编译后,Java Agent 即为 skywalking-agent/skywalking-agent.jar, agent 配置文件为 skywalking-agent/config/agent.config架构
二、启动 Spring Boot 应用框架
以 spring-boot-demos/hello spring boot 项目做为示例,使用 maven 打包后,经过以下命令启动服务:
java \
-javaagent:/<skywalking-project-path>/skywalking-agent/skywalking-agent.jar \
-DSW_AGENT_COLLECTOR_BACKEND_SERVICES=127.0.0.1:11800 \
-DSW_AGENT_NAME=spring-boot \
-jar hello-world-1.0-SNAPSHOT.jar复制代码
输出日志相似以下表明 Agent 启动成功:
DEBUG 2019-05-08 11:58:52:399 main AgentPackagePath : The beacon class location is jar:file:/Users/admin/docker/skywalking/apache-skywalking-apm-6.1.0/skywalking-agent/skywalking-agent.jar!/org/apache/skywalking/apm/agent/core/boot/AgentPackagePath.class.
INFO 2019-05-08 11:58:52:401 main SnifferConfigInitializer : Config file found in /Users/admin/docker/skywalking/apache-skywalking-apm-6.1.0/skywalking-agent/config/agent.config.
.........复制代码
三、任意访问 Spring Boot 服务的地址,便可自动采集信息
SkyWalking UI Dashboard
仪表盘
拓扑图
往期推荐
● Spring Boot 注入外部配置到应用内部的静态变量
● Java 使用 UnixSocket 调用 Docker API
● Service Mesh - gRPC 本地联调远程服务
● Spring Security 实战干货:如何保护用户密码
● Spring Boot RabbitMQ - 优先级队列
本文由博客一文多发平台 OpenWrite 发布!