在微服務(wù)框架Demo.MicroServer中怎樣添加SkyWalking+SkyApm-dotnet分布式鏈路追蹤系統(tǒng)

本篇文章為大家展示了在微服務(wù)框架Demo.MicroServer中怎樣添加SkyWalking+SkyApm-dotnet分布式鏈路追蹤系統(tǒng),內(nèi)容簡(jiǎn)明扼要并且容易理解,絕對(duì)能使你眼前一亮,通過這篇文章的詳細(xì)介紹希望你能有所收獲。

創(chuàng)新互聯(lián)建站服務(wù)項(xiàng)目包括紅古網(wǎng)站建設(shè)、紅古網(wǎng)站制作、紅古網(wǎng)頁制作以及紅古網(wǎng)絡(luò)營(yíng)銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢(shì)、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,紅古網(wǎng)站推廣取得了明顯的社會(huì)效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到紅古省份的部分城市,未來相信會(huì)繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!

代碼地址:

GitHub地址:https://github.com/PeyShine/Demo.MicroServer

Apm監(jiān)測(cè)工具很多,這里選用網(wǎng)上比較火的一款Skywalking。

Skywalking是一個(gè)應(yīng)用性能監(jiān)控(APM)系統(tǒng),Skywalking分為服務(wù)端Oap、管理界面UI、以及嵌入到程序中的探針Agent部分,大概工作流程就是在程序中添加探針采集各種數(shù)據(jù)發(fā)送給服務(wù)端保存,然后在UI界面可以看到收集過來的各種監(jiān)測(cè)數(shù)據(jù),來完成它的核心使命:性能監(jiān)控和分布式調(diào)用鏈追蹤能力。下圖是skywalking官方的一個(gè)圖,也可以說明這三者之間的關(guān)聯(lián)關(guān)系

在微服務(wù)框架Demo.MicroServer中怎樣添加SkyWalking+SkyApm-dotnet分布式鏈路追蹤系統(tǒng)

1.服務(wù)端(OAP)和界面(UI)的安裝

這里直接在apache地址:http://skywalking.apache.org/downloads/ 下載了一個(gè)6.6.0版本的zip文件,由于之前在本地的windows上安裝過,發(fā)現(xiàn)安裝包里面有兩個(gè)啟動(dòng)文件,分別為:startup.bat和startup.sh,分別用于window上啟動(dòng)和linux啟動(dòng),這里我直接將之前下載好的上傳到linux上來安裝。

在微服務(wù)框架Demo.MicroServer中怎樣添加SkyWalking+SkyApm-dotnet分布式鏈路追蹤系統(tǒng)

上傳后解壓縮,就會(huì)得到以下截圖的幾個(gè)文件

在微服務(wù)框架Demo.MicroServer中怎樣添加SkyWalking+SkyApm-dotnet分布式鏈路追蹤系統(tǒng)

進(jìn)入到config配置目錄下面,有一個(gè)名稱叫application.yml的文件

在微服務(wù)框架Demo.MicroServer中怎樣添加SkyWalking+SkyApm-dotnet分布式鏈路追蹤系統(tǒng)

對(duì)這個(gè)配置文件進(jìn)行編輯 vim application.yml

在微服務(wù)框架Demo.MicroServer中怎樣添加SkyWalking+SkyApm-dotnet分布式鏈路追蹤系統(tǒng)

我們直接定位到數(shù)據(jù)存儲(chǔ)部分,也就是節(jié)點(diǎn)storage,官方文檔里面也有說明,為了方便快速入門,配置文件默認(rèn)采用的是H2存儲(chǔ),但是推薦使用ElasticSearch存儲(chǔ),由于之前我安裝過Exceptionless,在這臺(tái)機(jī)器上已經(jīng)安裝過elasticsearch(如果沒有安裝過可以網(wǎng)上找下,有很多這方面的文章),所以我這里將H2部分注釋掉,然后將elasticsearch部分放開,并修改紅色方框里的兩個(gè)配置文件:

nameSpace: ${SW_NAMESPACE:"exceptionless"}clusterNodes: ${SW_STORAGE_ES_CLUSTER_NODES:localhost:9300}

需要注意的是:第一個(gè)SW_NAMESPACE需要與ElasticSearch配置的cluster_name名稱一致

啟動(dòng)skywalking會(huì)占用四個(gè)端口:8080,10800,11800,12800,由于我本機(jī)安裝過apollo,8080ui端口已經(jīng)被占用,所以這里我必須要先修改UI界面使用的8080端口才能啟動(dòng)它。

開始修改UI界面使用的8080端口(如果你的8080端口并沒有被占用,可以跳過,不用修改)

回到配置目錄的上一級(jí):cd ..

可以看到一個(gè)webapp的文件夾

在微服務(wù)框架Demo.MicroServer中怎樣添加SkyWalking+SkyApm-dotnet分布式鏈路追蹤系統(tǒng)

進(jìn)入這個(gè)目錄:cd webapp/

然后對(duì)webapp.yml文件進(jìn)行修改

在微服務(wù)框架Demo.MicroServer中怎樣添加SkyWalking+SkyApm-dotnet分布式鏈路追蹤系統(tǒng)

這里我將原來server界面下面的port從8080改到8088,然后保存

在微服務(wù)框架Demo.MicroServer中怎樣添加SkyWalking+SkyApm-dotnet分布式鏈路追蹤系統(tǒng)

配置文件修改完了,開始啟動(dòng)skywalking的服務(wù)端和UI界面,啟動(dòng)腳本放在目錄:apache-skywalking-apm-bin/bin 里面

在微服務(wù)框架Demo.MicroServer中怎樣添加SkyWalking+SkyApm-dotnet分布式鏈路追蹤系統(tǒng)

上面有說到startup.bat和startup.sh分別用在windows上和linux上啟動(dòng),這里用./startup.sh

在微服務(wù)框架Demo.MicroServer中怎樣添加SkyWalking+SkyApm-dotnet分布式鏈路追蹤系統(tǒng)

啟動(dòng)命令執(zhí)行完成之后可以看到OAP和Web兩個(gè)項(xiàng)目啟動(dòng)成功的提示,也就是我們說的服務(wù)端和UI界面。

驗(yàn)證一下,通過配置的ip+8088端口(如果沒有修改則是默認(rèn)的8080)來訪問一下界面,如圖:

在微服務(wù)框架Demo.MicroServer中怎樣添加SkyWalking+SkyApm-dotnet分布式鏈路追蹤系統(tǒng)

至此,我們準(zhǔn)備工作做完了,下面我們?cè)诔绦蛑邪惭b探針,來采集數(shù)據(jù).

2.安裝探針(Agent)采集數(shù)據(jù)

由于Skywalking本身是采用java編寫的,所以SkyApm-dotnet這個(gè)項(xiàng)目就是專門為 .NET 開發(fā)的探針,目前支持 ASP.NET Core 以及 ASP.NET,下面我們將SkyApm-dotnet無侵入式的集成到.Net Core實(shí)現(xiàn)的微服務(wù)項(xiàng)目中

第一步:使用下面的命令來進(jìn)行 Agent 的安裝,這里據(jù)說需要以管理員身份運(yùn)行

dotnet tool install -g SkyAPM.DotNet.CLI

第二步:添加環(huán)境變量,可以直接在launchSettings.json文件中添加以下代碼來設(shè)置

"environmentVariables": {"ASPNETCORE_ENVIRONMENT": "Development","ASPNETCORE_HOSTINGSTARTUPASSEMBLIES": "SkyAPM.Agent.AspNetCore","SKYWALKING__SERVICENAME": "Demo.MicroServer.UserService"      }

第三步:在程序中安裝NuGet包:SkyAPM.Agent.AspNetCore

第四步:在應(yīng)用程序根目錄下使用以下命令生成skyapm.json的配置文件,[service name]替換為服務(wù)的名稱,[server]替換為Skywalking安裝的計(jì)器ip

dotnet skyapm config [service name] [server]:11800

在微服務(wù)框架Demo.MicroServer中怎樣添加SkyWalking+SkyApm-dotnet分布式鏈路追蹤系統(tǒng)

執(zhí)行完成之后可以看到目錄下面已經(jīng)生成了一個(gè)skyapm.json的文件,將其屬性復(fù)制到輸出目錄設(shè)置為如果較新則復(fù)制,我這里是在發(fā)布在github上的微服務(wù)框架中的一個(gè)實(shí)例來測(cè)試的,所有代碼均已上傳,需要的可以通過文章開始的Github地址獲取代碼(歡迎star)

3.采集數(shù)據(jù)并查看

在Swagger中隨便調(diào)用幾個(gè)接口來測(cè)試數(shù)據(jù)的采集情況,然后到UI界面查看數(shù)據(jù)

流程順利的話,可以看到數(shù)據(jù)已經(jīng)都有采集到

在微服務(wù)框架Demo.MicroServer中怎樣添加SkyWalking+SkyApm-dotnet分布式鏈路追蹤系統(tǒng)上述內(nèi)容就是在微服務(wù)框架Demo.MicroServer中怎樣添加SkyWalking+SkyApm-dotnet分布式鏈路追蹤系統(tǒng),你們學(xué)到知識(shí)或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識(shí)儲(chǔ)備,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

當(dāng)前文章:在微服務(wù)框架Demo.MicroServer中怎樣添加SkyWalking+SkyApm-dotnet分布式鏈路追蹤系統(tǒng)
當(dāng)前路徑:http://muchs.cn/article12/gheggc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)網(wǎng)站制作品牌網(wǎng)站設(shè)計(jì)、網(wǎng)站設(shè)計(jì)、、手機(jī)網(wǎng)站建設(shè)建站公司

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)