91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么正確使用dotnet-*工具

發布時間:2021-12-27 17:17:55 來源:億速云 閱讀:151 作者:iii 欄目:開發技術

本篇內容主要講解“怎么正確使用dotnet-*工具”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“怎么正確使用dotnet-*工具”吧!

安裝

  • 因為我們現在都是容器化時代了,所以我們可以把這類工具全部制作成基礎鏡像

  • 準備Dockerfile

FROM mcr.microsoft.com/dotnet/sdk:3.1 AS sdk
RUN dotnet tool install --tool-path /tools dotnet-trace
RUN dotnet tool install --tool-path /tools dotnet-counters
RUN dotnet tool install --tool-path /tools dotnet-dump
RUN dotnet tool install --tool-path /tools dotnet-gcdump

FROM mcr.microsoft.com/dotnet/core/aspnet:3.1 AS runtime
WORKDIR /tools
COPY --from=sdk /tools .

basedockerfile.yaml

驗證

基礎鏡像做好了,查看下鏡像的大小應該就比runtime的大小多幾十兆,相比為了使用dotnet-* tool而直接采用sdk的話,體積小了很多很多
用我們剛才制作的基礎鏡像隨便起個demo程序驗證下
  • 已經包含了tools文件夾了,里面存放了我們的tools工具

怎么正確使用dotnet-*工具

怎么正確使用dotnet-*工具

  • 以dotnet-trace為例,測試下是否可用(ps:注意使用方式)

怎么正確使用dotnet-*工具

至此包含tools的runtime基礎鏡像制作完畢。

dotnet-dump

它只能收集托管內存,不能用于條是本地代碼的問題,而且分析它所創建的dump文件,必須和當前環境保持一致

createdump

它既可以收集本地信息又可以收集托管信息,是一種比較全面而且推薦的方法
雖然gdb、gcore也能起到同樣的作用,但是他們可能會在收集的時候錯過一些托管狀態,導致最后你分析dump文件的時候有”UNKNOWN“的錯誤
這個工具是伴隨著.net core runtime安裝的,目錄一般在”/usr/share/dotnet/shared/Microsoft.NETCore.App/[version]“下
開始使用:
  • /usr/share/dotnet/shared/Microsoft.NETCore.App/3.1.10/createdump -u 1 (1是我容器中程序的進程id)

怎么正確使用dotnet-*工具

  • 他會將coredump文件生成到容器的tmp目錄下,至此沒報錯的話,說明成功

  • 如果報權限相關錯誤,可以在你的yaml文件里加上:

怎么正確使用dotnet-*工具

分析coredump文件

先將上面生成在tmp下的coredump文件copy到可以調試的地方
kubectl cp  bookstore/demo-7b6d9f6d4f-2t8hl:/tmp/coredump.1 /root/mydump/coredump.1 -c app-k8s

怎么正確使用dotnet-*工具

然后為我們的coredump.1文件下載關聯的symbol:
如果你準備分析dump的機器沒有dotnet sdk的話,先裝一個把
  • sudo rpm -Uvh https://packages.microsoft.com/config/centos/7/packages-microsoft-prod.rpm

  • sudo yum install dotnet-sdk-3.1

如果dotnet-symbol沒有安裝的話,安裝一個
  • dotnet tool install --global dotnet-symbol

  • 然后關閉當前終端,再打開一個新的

然后執行dotnet-symbol --host-only --debugging coredump.1

怎么正確使用dotnet-*工具

  • 看到dac,dbi文件寫入就代表成功了,這時候你的文件夾應該長這樣

怎么正確使用dotnet-*工具

然后我們使用lldb進行調試
  • 如果你機器里沒裝的話,先裝一個吧

  • 安裝sos插件:

    • dotnet tool install --global dotnet-sos

    • dotnet-sos install

  • lldb-8 --core coredump.1

  • 然后就可以用lldb來分析dump文件了

到此,相信大家對“怎么正確使用dotnet-*工具”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

仙居县| 宁德市| 张掖市| 蒙城县| 光泽县| 旅游| 武宁县| 土默特右旗| 宝应县| 独山县| 聊城市| 凤翔县| 牡丹江市| 衡水市| 鹤壁市| 开阳县| 临潭县| 专栏| 讷河市| 泰宁县| 七台河市| 文水县| 应用必备| 满城县| 蒙自县| 双峰县| 卫辉市| 容城县| 上栗县| 天柱县| 汝南县| 类乌齐县| 谷城县| 若羌县| 会同县| 积石山| 贵德县| 汝州市| 佛坪县| 邵武市| 绥阳县|