鏈路追蹤框架
官網(wǎng):http://skywalking.apache.org/
下載:http://skywalking.apache.org/downloads/
Github:https://github.com/apache/skywalking
文檔:https://skywalking.apache.org/docs/main/v9.4.0/readme/
中文文檔: https://skyapm.github.io/document-cn-translation-of-skywalking/
1. 下載
SkyWalking OAP 服務(wù)、SkyWalking UI 服務(wù)
官網(wǎng)下載:
https://skywalking.apache.org/downloads/
在線下載:
wget https://dlcdn.apache.org/skywalking/9.4.0/apache-skywalking-apm-9.4.0.tar.gz
下載 Agents
在線下載:
wget https://dlcdn.apache.org/skywalking/java-agent/8.15.0/apache-skywalking-java-agent-8.15.0.tgz
2. 解壓
習(xí)慣放到local路徑下
cd /usr/local/
tar -zxvf apache-skywalking-apm-9.4.0.tar.gz -C /usr/local
tar -zxvf apache-skywalking-java-agent-8.15.0.tgz -C /usr/local
3. 配置SkyWalking OAP
避免端口沖突,更換 SkyWalking UI界面默認8080端口:
cd apache-skywalking-apm-bin
查看目錄
ll
編輯yml文件,以8100端口為例:
vi webapp/application.yml
默認內(nèi)存模式,更改為MySQL連接
vi config/application.yml
:set number 可查看行號
大概133 行 修改h2為mysql
storage:
selector: ${SW_STORAGE:mysql}
大概183-194行,確認MySQL連接信息(地址、賬號、密碼),記得新建數(shù)據(jù)庫。
mysql:
properties:
jdbcUrl: ${SW_JDBC_URL:"jdbc:mysql://localhost:3306/swtest?rewriteBatchedStatements=true"}
dataSource.user: ${SW_DATA_SOURCE_USER:root}
dataSource.password: ${SW_DATA_SOURCE_PASSWORD:123456}
ESC :wq 保存并退出
下載MySQL驅(qū)動jar包到 /oap-libs
目錄下wget -P /usr/local/apache-skywalking-apm-bin/oap-libs https://repo1.maven.org/maven2/com/mysql/mysql-connector-j/8.0.32/mysql-connector-j-8.0.32.jar
然后新建數(shù)據(jù)庫 swtest
4. 啟動 SkyWalking OAP 服務(wù)
sh bin/oapService.sh
查看啟動日志:tail -f logs/skywalking-oap-server.log
最后一句為
50 [main] INFO [] - Version of OAP: 9.4.0-520d531
skywalking-oap-server服務(wù)啟動后會暴露11800 和 12800 兩個端口,記得放開端口。
端口開放:
開放指定端口
firewall-cmd --zone=public --add-port=11800/tcp --permanent
firewall-cmd --zone=public --add-port=12800/tcp --permanent
--zone #作用域
--add-port=11800/tcp #添加端口,格式為:端口/通訊協(xié)議
--permanent #永久生效,沒有此參數(shù)重啟后失效
5. 啟動 SkyWalking UI 服務(wù)
sh bin/webappService.sh
默認是8080端口,上面更換了
訪問:
http://192.168.20.128:8100/
官方提供了兩個腳本一起啟動的腳本,這次啟動無誤后,下次可直接
sh bin/startup.sh
服務(wù)開機自啟配置,參考8
6. Java 程序接入SkyWalking
6.1在linux中 通過jar包方式接入
寫一個shell腳本,通過 -javaagent 參數(shù)進行 配置SkyWalking Agent來跟蹤微服務(wù)
vi SkyWalking-Test-startup.sh
添加內(nèi)容:
#!/bin/sh
# SkyWalking Agent 配置
# 配置Agent名字為項目的 `spring.application.name`
export SW_AGENT_NAME=SkyWalking-Test
# 配置 Collector 地址
export SW_AGENT_COLLECTOR_BACKEND_SERVICES=127.0.0.1:11800
#配置鏈路的最大Span數(shù)量,默認為 300
export SW_AGENT_SPAN_LIMIT=2000
# SkyWalking Agent jar 地址
export JAVA_AGENT=-javaagent:/usr/local/skywalking-agent/skywalking-agent.jar
# jar 啟動
java -jar $JAVA_AGENT -jar SkyWalking-Test-0.01-SNAPSHOT.jar
賦權(quán):
chmod u+x SkyWalking-Test-startup.sh
等同于:
java ‐javaagent:usr/local/skywalking-agent/skywalking-agent.jar ‐DSW_AGENT_COLLECTOR_BACKEND_SERVICES=127.0.0.1:11800 ‐DSW_AGENT_NAME=SkyWalking-Test ‐jar SkyWalking-Test-0.01-SNAPSHOT.jar
6.2 在Windows中
IDEA中配置JVM參數(shù),編輯VM Options,如果應(yīng)用程序和SkyWalking部署在同一機器,backend_service可以不寫
# skywalking‐agent.jar的本地磁盤的路徑
-javaagent:F:\Apache\skywalking-agent\skywalking-agent.jar
# 在skywalking上顯示的服務(wù)名
-Dskywalking.agent.service_name=SkyWalking-Test
# skywalking的collector服務(wù)的IP及端口
-Dskywalking.collector.backend_service=192.168.20.128:11800
-DSW_AGENT_COLLECTOR_BACKEND_SERVICES
可以指定遠程地址,但-javaagent必須綁定本地路徑的 skywalking- agent.jar
IDEA新版添加JVM參數(shù):
7.SkyWalking 自定義鏈路追蹤
<!-- Skywalking 工具類-->
<dependency>
<groupId>org.apache.skywalking</groupId>
<artifactId>apm-toolkit-trace</artifactId>
<version>8.15.0</version>
</dependency>
只需要在業(yè)務(wù)方法上加上@Trace注解
在方法上增加@Tag或者@Tags。
@Tag 注解中 key = 方法名 ; value = returnedObj 返回值 arg[0] 參數(shù)
然后啟動項目,再去刷新下項目,就有記錄了
8.設(shè)置SkyWalking OAP 服務(wù)、SkyWalking UI 服務(wù)開機自啟
準備設(shè)置一個.service,開機執(zhí)行這個腳本文件,以此實現(xiàn)自啟效果
系統(tǒng)啟動腳本目錄 /etc/systemd/system/
新建服務(wù)文件
vi /etc/systemd/system/skyWalking.service
添加:
[Unit]
Description=skyWalking
After=network.target remote-fs.target nss-lookup.target mysql8.service zookeeper.service kafka.service nacos-cluster.service
[Service]
Type=forking
ExecStart=sh /usr/local/apache-skywalking-apm-bin/bin/startup.sh start
PrivateTmp=true
[Install]
WantedBy=multi-user.target
按ESC :wq保存并退出
賦權(quán):
chmod 754 /etc/systemd/system/skyWalking.service
設(shè)置開機自啟:
systemctl enable skyWalking.service
重載配置
systemctl daemon-reload
可重啟嘗試腳本可行性(reboot)文章來源:http://www.zghlxwxcb.cn/news/detail-413568.html
查看狀態(tài)
systemctl status skyWalking.service
暫時到這,感謝閱覽~
END文章來源地址http://www.zghlxwxcb.cn/news/detail-413568.html
到了這里,關(guān)于Linux / Centos Stream 9安裝 Skywalking 9.4.0 記錄的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!