APM工具尋找了一圈,發現SkyWalking纔是個人真愛

▶ 概述java

SkyWalking 是一個開源的 APM 系統,核心功能以下:面試

  • 服務、服務實例、端點指標分析
  • 根本緣由分析
  • 服務拓撲圖分析
  • 服務、服務實例和端點依賴性分析
  • 慢服務和端點檢測
  • 性能優化
  • 分佈式跟蹤和上下文傳播
  • 數據庫訪問指標,慢 SQL 檢測(包括 SQL 語句)
  • 報警

▶ SkyWalking 架構圖spring

SkyWalking 支持多種來源和多種格式的 traces / metrics 數據,包括:docker

  1. Java, .NET Core, NodeJS and PHP auto-instrument agents in SkyWalking format
  2. Istio telemetry format
  3. Zipkin v1/v2 format
  4. Jaeger gRPC format.
  5. Envoy metrics format (the metric entries itself is prometheus client metric family)

▶ 部署 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 服務的地址,便可自動採集信息

  • http://localhost:8080/

SkyWalking UI Dashboard

儀表盤

拓撲圖

往期推薦

Spring Boot 注入外部配置到應用內部的靜態變量

將 HTML 轉化爲 PDF新姿式

Java 使用 UnixSocket 調用 Docker API

Fastjson致命缺陷

Service Mesh - gRPC 本地聯調遠程服務

使用 Thymeleaf 動態渲染 HTML

Fastjson致命缺陷

Spring Boot 2 集成log4j2日誌框架

Java面試通關要點彙總集之核心篇參考答案

Java面試通關要點彙總集之框架篇參考答案

Spring Security 實戰乾貨:如何保護用戶密碼

Spring Boot RabbitMQ - 優先級隊列

本文由博客一文多發平臺 OpenWrite 發佈!

相關文章
相關標籤/搜索