文章目录
- 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,欢迎各位进来尬聊 (人不多, 进了就不要退了, 要不就不进, 跪求留一点人, 人多了就活跃了, 跪谢)