• APM工具寻找了一圈,发现SkyWalking才是我的真爱


    点击上方☝码农小胖哥,轻松关注!
    及时获取有趣有料的技术文章

    640?wx_fmt=png

    ▶ 概述

    SkyWalking 是一个开源的 APM 系统,核心功能如下:

    • 服务、服务实例、端点指标分析

    • 根本原因分析

    • 服务拓扑图分析

    • 服务、服务实例和端点依赖性分析

    • 慢服务和端点检测

    • 性能优化

    • 分布式跟踪和上下文传播

    • 数据库访问指标,慢 SQL 检测(包括 SQL 语句)

    • 报警

    ▶ SkyWalking 架构图

    640?wx_fmt=png

    SkyWalking 支持多种来源和多种格式的 traces / metrics 数据,包括:

    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 & UI

    ▶ 示例:Spring Boot & SkyWalking Java Agent

    1、获取 Java Agent 库

    参考 Docker 镜像 - 构建 SkyWalking OAP & UI ,编译后,Java Agent 即为 skywalking-agent/skywalking-agent.jar, agent 配置文件为 skywalking-agent/config/agent.config

    2、启动 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.
    .........
    

    3、任意访问 Spring Boot 服务的地址,即可自动采集信息

    • http://localhost:8080/

    > SkyWalking UI Dashboard

    640?wx_fmt=png

    仪表盘

    640?wx_fmt=png

    拓扑图

    640?wx_fmt=png

    640?wx_fmt=png

    640?wx_fmt=gif

  • 相关阅读:
    MSSQL 2012 密钥
    同台同时多开DELPHI2007的解决办法
    DELPHI快捷键
    Delphi编码规范
    解决Delphi 2010启动时卡死并报“displayNotification: 堆栈溢出”错误
    Test
    sched python 定时任务
    springboot2.x 整合redis
    springboot 忽略null属性值,不传递
    logback.xml 配置使用
  • 原文地址:https://www.cnblogs.com/felordcn/p/12142529.html
Copyright © 2020-2023  润新知