.NET垃圾回收GC诊断工具dotnet-gcmon使用
文章图片
今天介绍一个新的诊断工具 dotnet-gcmon, 也是全局 .NET CLI 工具, 它可以监控到 .NET 程序的 GC, 能获取到的信息也很详细, 另外 maoni 大佬也是其中的开发者之一。
安装 gcmon
和其他的 dotnet 诊断工具一样, 你可以使用以下命令,进行全局安装
dotnet tool install -g dotnet-gcmon参数介绍
参数 | 描述 |
---|---|
n | 进程名, dotnet 应用的进程名 |
p | 进程ID, dotnet 应用的 Process ID |
m | 最小 GC 暂停持续时间(以毫秒为单位),可选 |
c | 指定一个 yaml 配置文件路径, 可选 |
dotnet tool install -g dotnet-trace然后运行
dotnet trace ps
获取所有的 dotnet 进程文章图片
接下来, 运行
dotnet gcmon -p 21904
, 开始监控 dotnet 应用, 诊断工具会输出下面的信息文章图片
在诊断工具运行的时候,按下
s
键,会输出当前 GC 的整体和每一代的状态文章图片
另外还可以使用
yaml
配置文件, 灵活配置诊断工具输出列,具体可以参考 github。总结 dotnet gcmon 是一个小而实用的诊断工具, 并且还在迭代中, 在对于代码无侵入的情况下, 排查问题还是很方便的, 另外 .NET 现在已经有近十个诊断工具了!
gcmon 的工作原理是什么呢? 其实主要是调用了 CLR 运行时团队提供的一个诊断库, Microsoft.Diagnostics.NETCore.Client, 这个库功能就非常强大了, 各种运行时信息都可以拿到, 当然你也可以用它实现一个诊断工具, 这个库是基于 EventPipe, IPC 等实现的, 还是很复杂的。
https://github.com/Maoni0/realmon
【.NET垃圾回收GC诊断工具dotnet-gcmon使用】以上所述是小编给大家介绍.NET垃圾回收GC诊断工具dotnet-gcmon的使用方法,希望对大家有所帮助,非常感谢大家对脚本之家网站的支持!
推荐阅读
- ASP.NET|ASP.NET Core应用开发思维导图
- 垃圾睡眠点
- java|微软认真聆听了开源 .NET 开发社区的炮轰( 通过CLI 支持 Hot Reload 功能)
- 垃圾回收机制(第十二天)
- 震撼!洛阳开始垃圾分类啦!
- 其他|清理C盘内存(电脑C盘飘红了,那么如何清理垃圾文件,总结几种亲测方案)
- asp.net|asp.net core中使用log4net
- Asp.net|System.Globalization.DateTimeFormatInfo.InvariantInfo
- 小垃圾漂流记(二)
- 党建引领|党建引领 夏果滩社区开展清理河道垃圾活动