.net core 使用SkyWalking


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看板界面可以查看接口的調用情況。

 

參考博客 

.NetCore從零開始使用Skywalking分布式鏈路追蹤系統 https://www.cnblogs.com/sunyuliang/p/11424848.html

 https://github.com/SkyAPM/SkyAPM-dotnet

https://blog.csdn.net/shykevin/article/details/108115442


免責聲明!

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



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