Skywalking初體驗


1.tomcat整合skywalking的使用

先修改apache-skywalking-apm-bin/agent/config下的agent.config,給tomcat一個名字

image-20200805094251018

在tomcat的catalina.sh中首行添加

CATALINA_OPTS="$CATALINA_OPTS -javaagent:/wgr/apache-skywalking-apm-bin/agent/skywalking-agent.jar"; export CATALINA_OPTS

然后在把war包丟進tomcat,進行調用

接口的代碼如下:

image-20200805094512318

效果圖如下:

image-20200805090518714

image-20200805090605956

2.springboot整合skywalking使用

復制一份agent,修改名字

[root@cicd apache-skywalking-apm-bin]# cp -r agent agent_boot
[root@cicd apache-skywalking-apm-bin]# vim agent_boot/config/agent.config

啟動jar包

[root@cicd wgr]# java -javaagent:/wgr/apache-skywalking-apm-bin/agent_boot/skywalking-agent.jar -Dserver.port=8082 -jar skywalking_springboot.jar &
[1] 28360
[root@cicd wgr]# DEBUG 2020-08-04 21:23:40:465 main AgentPackagePath : The beacon class location is jar:file:/wgr/apache-skywalking-apm-bin/agent_boot/skywalking-agent.jar!/org/apache/skywalking/apm/agent/core/boot/AgentPackagePath.class.
INFO 2020-08-04 21:23:40:469 main SnifferConfigInitializer : Config file found in /wgr/apache-skywalking-apm-bin/agent_boot/config/agent.config.

  .   ____          _            __ _ _
 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::       (v2.1.10.RELEASE)

2020-08-04 21:23:57.564  INFO 28360 --- [           main] c.i.s.SkywalkingSpringbootApplication    : Starting SkywalkingSpringbootApplication v0.0.1-SNAPSHOT on cicd with PID 28360 (/wgr/skywalking_springboot.jar started by root in /wgr)
2020-08-04 21:23:57.585  INFO 28360 --- [           main] c.i.s.SkywalkingSpringbootApplication    : No active profile set, falling back to default profiles: default
2020-08-04 21:24:01.650  INFO 28360 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat initialized with port(s): 8082 (http)
2020-08-04 21:24:01.762  INFO 28360 --- [           main] o.apache.catalina.core.StandardService   : Starting service [Tomcat]
2020-08-04 21:24:01.762  INFO 28360 --- [           main] org.apache.catalina.core.StandardEngine  : Starting Servlet engine: [Apache Tomcat/9.0.27]
2020-08-04 21:24:01.935  INFO 28360 --- [           main] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring embedded WebApplicationContext
2020-08-04 21:24:01.935  INFO 28360 --- [           main] o.s.web.context.ContextLoader            : Root WebApplicationContext: initialization completed in 4091 ms
2020-08-04 21:24:02.505  INFO 28360 --- [           main] o.s.s.concurrent.ThreadPoolTaskExecutor  : Initializing ExecutorService 'applicationTaskExecutor'
2020-08-04 21:24:02.943  INFO 28360 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat started on port(s): 8082 (http) with context path ''
2020-08-04 21:24:02.951  INFO 28360 --- [           main] c.i.s.SkywalkingSpringbootApplication    : Started SkywalkingSpringbootApplication in 8.399 seconds (JVM running for 22.94)
2020-08-04 21:24:37.924  INFO 28360 --- [nio-8082-exec-1] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring DispatcherServlet 'dispatcherServlet'
2020-08-04 21:24:37.933  INFO 28360 --- [nio-8082-exec-1] o.s.web.servlet.DispatcherServlet        : Initializing Servlet 'dispatcherServlet'
2020-08-04 21:24:38.041  INFO 28360 --- [nio-8082-exec-1] o.s.web.servlet.DispatcherServlet        : Completed initialization in 107 ms

image-20200805094918709

3.頁面簡單介紹

1 儀表盤
打開RocketBot默認會出現儀表盤頁面:

image-20200805095017884

儀表盤頁面分為兩大塊:
1. 服務儀表盤,展示服務的調用情況
2.數據庫儀表盤,展示數據庫的響應時間等數據
選中服務儀表盤,有四個維度的統計數據可以進行查看:
1. 全局,查看全局接口的調用,包括全局響應時長的百分比,最慢的端點,服務的吞吐量等
2.服務,顯示服務的響應時長、 SLA、吞吐量等信息
3.端點,顯示端點的響應時長、 SLA、吞吐量等信息
4.實例,顯示實例的響應時長、 SLA、吞吐量等信息,還可以查看實例的JVM的GC信息、CPU信息、內存信息

2 拓撲圖
Skywalking提供拓撲圖,直觀的查看服務之間的調用關系:

image-20200805095047794

User 代表用戶應用,目前案例中其實是瀏覽器
圖中Skywalking_boot應用被User調用,同時顯示它是一個Spring MVC的應用。后續案例中會出現多個
應用調用,使用拓撲圖就能清楚的分析其調用關系了。

3 追蹤
在Skywalking中,每一次用戶發起一條請求,就可以視為一條追蹤數據,每條追蹤數據攜帶有一個ID值。追蹤數據在追蹤頁面中可以進行查詢:

image-20200805095223825

左側是追蹤列表,也可以通過上方的追蹤 ID來進行查詢。點擊追蹤列表某一條記錄之后,右側會顯示出
此條追蹤的詳細信息。有三種顯示效果:
1.列表
2.樹結構
3.表格
可以很好的展現此條追蹤的調用鏈情況而鏈路上每個節點,可以通過左鍵點擊節點查看詳細信息:

image-20200805095303036

當前的接口是 HTTP的GET請求,相對比較簡單,后續的示例中出現異常情況或者數據庫訪問,可以打印出異常信息、堆棧甚至詳細的SQL語句。

4 告警
Skywalking中的告警功能相對比較簡單,在達到告警閾值之后會生成一條告警記錄,在告警頁面上進行
展示。后面在詳細的研究一下。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM