当前位置: 代码迷 >> 综合 >> Skywalking--简单搭建
  详细解决方案

Skywalking--简单搭建

热度:25   发布时间:2023-12-24 10:47:01.0

文章目录

  • 1、前置
  • 2、部署OAP和UI
  • 3、下载agent
  • 4、配置方式
  • 5、简单的贴一下图:
  • 6、解释一下追踪:
  • 7、性能剖析:
  • 8、启用skywalking自监控(SelfObservability):
  • 8:杂谈


1、前置

1、oap和UI采用docker部署

2、数据采用的是Java

3、配的的是H2

2、部署OAP和UI

OAP: 
docker pull apache/skywalking-oap-server:8.2.0-es7
docker run --name skywalking -d -p 1234:1234 -p 11800:11800 -p 12800:12800 --restart always apache/skywalking-oap-server:8.2.0-es7UI:
docker pull apache/skywalking-ui:8.2.0
docker run --name skywalking-ui -d -p 8080:8080 --link skywalking:skywalking -e SW_OAP_ADDRESS=skywalking:12800 --restart always apache/skywalking-ui:8.2.0

访问地址:
http://0.0.0.0:8080/

3、下载agent

点击下载
在这里插入图片描述

4、配置方式

Windows方式: -javaagent:E:\apache-skywalking-apm-bin\agent\skywalking-agent.jar -Dskywalking.agent.service_name=testkapp -Dskywalking.collector.backend_service=100.1.2.4:11800

IDEA方式:
在这里插入图片描述




也可以采用下面的方式:
修改:E:\apache-skywalking-apm-bin\agent\config\agent.config

在这里插入图片描述

在这里插入图片描述

然后只需要指定skywalking-agent.jar的位置就可以了

-javaagent:E:\apache-skywalking-apm-bin\agent\skywalking-agent.jar



效果图:
在这里插入图片描述

5、简单的贴一下图:

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

6、解释一下追踪:

如上图这个方法: /api/baidu/bankcard
这个方法对应内容是, 一个简单的service, 里面调用百度的银行卡识别接口, 假如我发现该请求很慢, 但是调用的是百度封装的方法, 从代码来看不是太好发现是哪里出现的问题, 但是从上面的截图发现什么都看不出来. 这个时候我们需要将 :
E:\apache-skywalking-apm-bin\agent\optional-plugins里面的包复制到E:\apache-skywalking-apm-bin\agent\plugins
E:\apache-skywalking-apm-bin\agent\bootstrap-plugins里面的包复制到E:\apache-skywalking-apm-bin\agent\plugins

然后重新启动一下服务, 看如下截图:
在这里插入图片描述

7、性能剖析:

从第6点的追踪来看, 我们还是发现不了调用的方法里面, 是哪里耗时了, 这个时候我们配置一下性能剖析, 进一步的分析
在这里插入图片描述
然后多请求几次这个方法:
在这里插入图片描述

8、启用skywalking自监控(SelfObservability):

先下载两个文件:

docker cp skywalking:/skywalking/config/fetcher-prom-rules/self.yaml /rootdocker cp skywalking:/skywalking/config/application.yml /root

修改:application.yml

prometheus-fetcher:selector: ${
    SW_PROMETHEUS_FETCHER:default}default:active: ${
    SW_PROMETHEUS_FETCHER_ACTIVE:true}telemetry:selector: ${
    SW_TELEMETRY:prometheus}none:prometheus:host: ${
    SW_TELEMETRY_PROMETHEUS_HOST:0.0.0.0}port: ${
    SW_TELEMETRY_PROMETHEUS_PORT:1234}sslEnabled: ${
    SW_TELEMETRY_PROMETHEUS_SSL_ENABLED:false}sslKeyPath: ${
    SW_TELEMETRY_PROMETHEUS_SSL_KEY_PATH:""}sslCertChainPath: ${
    SW_TELEMETRY_PROMETHEUS_SSL_CERT_CHAIN_PATH:""}

在这里插入图片描述
在这里插入图片描述

修改:self.yaml(这个文件可以不用修改)

staticConfig:# targets will be labeled as "instance"targets:- url: http://内网IP:1234sslCaFilePath:

在这里插入图片描述
从新运行OAP:

如果修改了self.yaml, 就挂载它,
docker run --name skywalking -d -p 1234:1234 -p 11800:11800 -p 12800:12800 -v /root/application.yml:/skywalking/config/application.yml -v /root/self.yaml:/skywalking/config/fetcher-prom-rules/self.yaml --restart always apache/skywalking-oap-server:8.2.0-es7

刷新页面:
在这里插入图片描述

8:杂谈

1、官网提供的案列: http://122.112.182.72:8080/

2、这个只是简单的单服务, 搭建一个简单的玩玩

3、然里面有很多地方, 我也不是太明白, 具体也得自己在研究一下

4、性能剖析感觉有点不是太方便, 详细的参数完全看不见, 还不知道有什么方法可以处理, 后面知道了在补充吧




提供一个群:807770565,欢迎各位进来尬聊 (人不多, 进了就不要退了, 要不就不进, 跪求留一点人, 人多了就活跃了, 跪谢)
在这里插入图片描述