天天看点

Skywalking 调用链安装配置应用:Docker方式

目标

将应用的运行时资源信息、性能指标、调用链信息,使用非侵入字节码注入方式发送到skywalking的12800默认端口,以拓扑图方式展示调用关系。默认使用H2 DateBase数据库存储数据(可根据需求改用ES或Mysql)

源码下载

$ wget http://mirrors.tuna.tsinghua.edu.cn/apache/skywalking/6.4.0/apache-skywalking-apm-6.4.0.tar.gz
           

解压出配置文件:

  • agent/skywalking-agent.jar
  • agent/config/agent.config

    部分配置:

    agent.namespace: 跨进程链路中的header,不同的namespace会导致跨进程的链路中断

    agent.service_name:一个服务(项目)的唯一标识,这个字段决定了在sw的UI上的关于service的展示名称

    agent.sample_n_per_3_secs: 客户端采样率,默认是-1代表全采样

    agent.authentication: 与collector进行通信的安全认证,需要同collector中配置相同

    agent.ignore_suffix: 忽略特定请求后缀的trace

    collecttor.backend_service: agent需要同collector进行数据传输的IP和端口

    logging.level: agent记录日志级别

镜像拉取:

$ docker pull apache/skywalking-oap-server
$ docker pull apache/skywalking-ui
           

启动脚本

  • oap-server
    #!/bin/bash
    docker stop oap
    docker rm oap
    docker run --name oap \
        -p 11800:11800 \
        -p 12800:12800 \
        -e TZ=Asia/Shanghai \
        --restart always -d apache/skywalking-oap-server \
        sh -c 'ln -snf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo "Asia/Shanghai" > /etc/timezone '
    echo 'Done!'
               
  • oap-ui
    #!/bin/bash
    docker stop oap-ui
    docker rm oap-ui
    docker rm oap-ui
    docker run -p 8080:8080 --name oap-ui --restart always -d -e \
        SW_OAP_ADDRESS=oap:12800 \
        -e TZ=Asia/Shanghai \
        apache/skywalking-ui \
        sh -c 'ln -snf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo "Asia/Shanghai" > /etc/timezone '
    echo 'Done!'
               

启动应用配置:

1. IDE intellj

VM options:

-javaagent:/Users/xxx/demoCode/apache-skywalking-apm-bin-2/agent/skywalking-agent.jar

Override parameters:

SW_AGENT_NAME=myapp

2. jar启动

java -javaagent:/Users/xxx/demoCode/apache-skywalking-apm-bin-2/agent/skywalking-agent.jar -Dskywalking.agent.service_name=myapp -jar yourApp.jar

注意:-javaagent 必须在 -jar之前; -Dskywalking.agent.service_name配置会覆盖agent.config 中的SW_AGENT_NAME配置。

浏览器访问UI界面

默认8080端口:localhost:8080

Skywalking 调用链安装配置应用:Docker方式

附:Skywalking开源地址