Skywalking簡單介紹
Skywalking是一個應用性能管理(APM)系統,具有服務器性能監測,應用程序間調用關系及性能監測等功能,Skywalking分為服務端、管理界面、以及嵌入到程序中的探針部分,由程序中的探針采集各類調用數據發送給服務端保存,在管理界面上可以查看各類性能數據。本文介紹服務端及管理界面的安裝。
Docker 安裝
需要安裝ES、SkyWalking服務端、SkyWalking ui。
安裝ES
修改系統參數
vim /etc/security/limits.conf
調整參數
vm.max_map_count=262144
刷新參數
sysctl -p
docker run -d --name=es7 \ -p 9200:9200 -p 9300:9300 \ -e ES_JAVA_OPTS="-Xms128m -Xmx512m" \ -e "discovery.type=single-node" elasticsearch:7.5.1
安裝oap
注意:等待elasticsearch完全啟動之后,再啟動oap
docker run --name oap --restart always -d \ --restart=always \ -e TZ=Asia/Shanghai \ -p 12800:12800 \ -p 11800:11800 \ --link es7:es7 \ -e SW_STORAGE=elasticsearch \ -e SW_STORAGE_ES_CLUSTER_NODES=es7:9200 \ apache/skywalking-oap-server:6.6.0-es7 說明:這里指定elasticsearch 來存儲數據
安裝ui
docker run -d --name skywalking-ui \ --restart=always \ -e TZ=Asia/Shanghai \ -p 8088:8080 \ --link oap:oap \ -e SW_OAP_ADDRESS=oap:12800 \ apache/skywalking-ui:6.6.0
安裝完畢后的界面如下:

在.net core中使用
我們新建一個.net core項目來使用。
1、項目中引用kyAPM.Agent.AspNetCore 這個 NuGet 包。這個包集成了SkyWalking的探針功能,選擇0.9的版本。
2、在項目根目錄添加skyapm.json文件,並添加下以內容,其中的Servers結點的IP地址根據實際情況換成自己的服務器IP
{
"SkyWalking": {
"ServiceName": "Demo01",
"Namespace": "",
"HeaderVersions": [
"sw6"
],
"Sampling": {
"SamplePer3Secs": -1,
"Percentage": -1.0
},
"Logging": {
"Level": "Debug",
"FilePath": "logs/skyapm-{Date}.log"
},
"Transport": {
"Interval": 3000,
"ProtocolVersion": "v6",
"QueueSize": 30000,
"BatchSize": 3000,
"gRPC": {
"Servers": "192.168.22.188:11800",
"Timeout": 10000,
"ConnectTimeout": 10000,
"ReportTimeout": 600000
}
}
}
}
3、 將skyapm.json文件的屬性”復制到輸出目錄“ 修改為 ”如果較新則復制”
4、展開項目的Properties,打開launchSettings.json文件,在其中的環境變量中加入 "ASPNETCORE_HOSTINGSTARTUPASSEMBLIES": "SkyAPM.Agent.AspNetCore",
這樣就配置完成了。訪問本地接口,然后打開http://192.168.22.188:8088/頁面,在skywalking看板界面可以查看接口的調用情況。
參考博客
