本文主要介紹dotnet 6.0(dotnetty netcore),下面一起看看dotnet 6.0(dotnetty netcore)相關(guān)資訊。
原文:在. net6布點(diǎn)網(wǎng)監(jiān)視器。
我們?cè)?020年6月首次推出dotnet monitor作為實(shí)驗(yàn)工具,并在去年(2020年)努力將其變成生產(chǎn)級(jí)工具。今天,我很高興地宣布,dotnet monitor的第一個(gè)正式版本將與一起發(fā)布。net 6作為。net 6。
dotnet monitor已提供對(duì)azure app service(linux)的支持,為提供診斷工具。net應(yīng)用程序,我們希望它可以在更多的環(huán)境中使用。
一、dotnet monitor運(yùn)行的是什么?不同環(huán)境中的. net應(yīng)用程序可能很難收集診斷信息(如日志、跟蹤、轉(zhuǎn)儲(chǔ))。dotnet monitor是一個(gè)工具,它提供了一種統(tǒng)一的來收集這些診斷信息,無論您是運(yùn)行在桌面計(jì)算機(jī)(桌面機(jī)可以理解為我們的日常計(jì)算機(jī))上,還是運(yùn)行在kubernetes集群中。
收集這些診斷信息有兩種不同的機(jī)制:
用于按需收集診斷信息的http api。當(dāng)您的應(yīng)用程序遇到問題并希望收集更多信息時(shí),您可以調(diào)用這些http api?;谝?guī)則配置的觸發(fā)器。您可以配置規(guī)則,以便在滿足所需條件時(shí)收集診斷信息,例如當(dāng)cpu在一段時(shí)間內(nèi)保持高索引時(shí)收集進(jìn)程轉(zhuǎn)儲(chǔ)。2.dotnet monitor入門可通過兩種不同的分發(fā)機(jī)制獲得:
的。net cli工具是通過microsoft容器注冊(cè)表(mcr)獲得的容器映像。的。net cli工具dotnet monitor cli工具需要安裝。net 6 sdk先行。如果你不 如果沒有足夠的新sdk,可以從。net網(wǎng)頁進(jìn)行安裝。
您可以使用命令獲取最新版本的點(diǎn)網(wǎng)監(jiān)視器:
dot net tool install-g dot net-monitor-version 6 . 0 . 0如果您已經(jīng)安裝了它,但希望將其更新到最新版本,可以運(yùn)行以下命令:
dotnet工具更新-g dot net-monitor-版本6.0.0容器映像dotnet monitor容器映像在mcr上可用,您可以通過使用它。以下命令獲取最新的圖像:
碼頭工人pullmcr.microsoft.com/dotnet/monitorecho3-@。http apidotnet monitor公開了一個(gè)http api來查詢可用的進(jìn)程、收集診斷信息并檢查所請(qǐng)求信息的狀態(tài)。
公開了以下http api:
/processes-獲取可以發(fā)現(xiàn)的進(jìn)程的詳細(xì)信息/dump-捕獲進(jìn)程的轉(zhuǎn)儲(chǔ)而不使用調(diào)試器/gc dump-捕獲進(jìn)程的gc dump/trace-跟蹤進(jìn)程而不使用profiler /metrics-捕獲prometheus exposition格式的默認(rèn)進(jìn)程的指標(biāo)快照/ livemetrics-捕獲進(jìn)程的實(shí)時(shí)指標(biāo)流/日志-捕獲進(jìn)程的日志/info-獲取dotnet monitor /operations的信息-獲取操作狀態(tài)并取消操作。下面的示例演示了如何使用dotnet monitor從目標(biāo)進(jìn)程啟動(dòng)。記錄來自microsoft的調(diào)試級(jí)別的日志流數(shù)據(jù)。aspnetcore . server . kestrel . connections在60秒內(nèi)完成。
ps curl.exe x郵政和郵政: 52323/logs?name = mywebappdurationseconds = 60 `-h ;acc:應(yīng)用/x-nd json `-h ;cont:應(yīng)用/json `-negotiate-u $(whoami)`-d ;{;filterspecs;: { 微軟。服務(wù)器。server.kestrel.connections : 調(diào)試和測(cè)試} } { 時(shí)間戳 : 2021-11-05 08 : 12 : 54z , loglevel : 調(diào)試和測(cè)試, 事件 :39, eventname : 指揮操舵ectionaccepted , 類別 : 微軟。服務(wù)器。server.kestrel.connections , 信息與廣告: 已接受連接id u00220hmd06bukl2cuu0022。 , 國家與社會(huì): { 信息與廣告: 已接受連接id u00220hmd06bukl2cuu0022。 , connectionid : 0 hmd 06 bukl 2 cu , {原始格式} : 已接受連接id u0022{connectionid}u0022。 } } { 時(shí)間戳 : 2021-11-05 08 : 12 : 54z , loglevel : 調(diào)試和測(cè)試, 事件 : 1 eventname : 連接開始 , 類別 : 微軟。服務(wù)器。server.kestrel.connections , 信息與廣告: 連接id u00220hmd06bukl2cuu0022已啟動(dòng)。 , 國家與社會(huì): { 信息與廣告: 連接id u00220hmd06bukl2cuu0022已啟動(dòng)。 , connectionid : 0 hmd 06 bukl 2 cu , {原始格式} : 連接id u0022{connectionid}u0022已啟動(dòng)。 } } { 時(shí)間戳 : 2021-11-05 08 : 12 : 54z , logl: 調(diào)試和測(cè)試, 事件 : 9 eventname : 連接保持活動(dòng) , 類別 : 微軟。服務(wù)器。server.kestrel.connections , 信息與廣告: 連接id u00220hmd06bukl2cuu0022已完成保持活動(dòng)響應(yīng)。 , 國家與社會(huì): { 信息與廣告: 連接id u00220hmd06bukl2cuu0022已完成保持活動(dòng)響應(yīng)。 , connectionid : 0 hmd 06 bukl 2 cu , {原始格式} : 連接id u0022{connectionid}u0022已完成保持活動(dòng)響應(yīng)。 }, 范圍和:[{ connectionid : 0 hmd 06 bukl 2 cu }、{ 請(qǐng)求 : 0 hmd 06 bukl 2 cu: 00000002 , 請(qǐng)求路徑 : / }]}如上例所示,您可以使用dotnet monitor按需從目標(biāo)進(jìn)程捕獲診斷信息。除了日志之外,您還可以從目標(biāo)進(jìn)程收集跟蹤、內(nèi)存轉(zhuǎn)儲(chǔ)、gc轉(zhuǎn)儲(chǔ)和指標(biāo)。
4.trigger dotnet monitor可以配置為根據(jù)發(fā)現(xiàn)的進(jìn)程中的條件自動(dòng)收集診斷信息。當(dāng)發(fā)現(xiàn)新進(jìn)程時(shí),如果進(jìn)程數(shù)據(jù)與規(guī)則匹配,dotnet monitor將嘗試應(yīng)用配置的規(guī)則。應(yīng)用的規(guī)則將開始監(jiān)控由觸發(fā)器描述的條件的過程。如果滿足此條件,則認(rèn)為尚未達(dá)到執(zhí)行動(dòng)作列表的指定限制。
示例:如果dotnet monitor檢測(cè)到cpu利用率在一分鐘以上高于80%,它將收集進(jìn)程轉(zhuǎn)儲(chǔ)并將其限制為每小時(shí)不超過一個(gè)。
{ 收集規(guī)則和: { ;filt:[{ ;k: 過程名 、;valu: myapp 、;matchtyp: 精確 } ]、;trigg: { ;typ: 事件計(jì)數(shù)器 ,;s: { ;provid: 系統(tǒng)。運(yùn)行時(shí)和、;count: 中央處理器-使用和、;gr: 80、;slidingwindowduration;: 00 : 01 : 00 } }、;limits;: { ;actioncount;: 1, actioncountslidingwindowduration : 1e cho 3-@ . com 00 : 00 }、;actions;:[{ ;typ: 收集轉(zhuǎn)儲(chǔ) ,;s: { ;typ: 傷檢分類、;: myblobstorageaccount }}}} rules文檔: . com/dot net/dot net-monitor/blob/main/documentation/collection rules . md # collection-rul:-monitor/issues/new/choose.
標(biāo)簽:
msdtc
了解更多dotnet 6.0(dotnetty netcore)相關(guān)內(nèi)容請(qǐng)關(guān)注本站點(diǎn)。