本页目录
系统监控与内存分析
打开“系统管理 → 系统监控”,检查网关进程资源、内存来源、硬件和网络。先核对采样时间,再比较连续采样;设备在线情况和采集链路见系统总览。

采样与页面入口
- 等待首轮采样完成,确认右上角显示采样时间。
- 按需选择自动刷新间隔。暂停只停止当前页面刷新,不会停止采集或转发。
- 点击“刷新采样”查看有效样本。资源最多每 30 秒重新采集一次,连续点击可能返回同一采样。
- 切换下面的页签检查对应范围。无查看权限的内容不会提供;“—”“未提供”和读取失败都不表示数值为零。
| 页签 | 用途 |
|---|---|
| GC 与内存 | 查看进程驻留映射、容器内存、托管堆、分配速率、回收次数与暂停。 |
| 系统资源 | 查看进程运行时长、线程、句柄、线程池和磁盘、网络速率。 |
| 硬件健康 | 查看设备与固件、每核负载、频率、温度、电源和内存压力。 |
| 网口与网络 | 查看网卡链路、IPv4/IPv6、速率、错误计数,并检测指定上游端口。 |
| 现场接口 | 查看系统报告的 USB、串口、CAN 等接口及驱动绑定。 |
| 磁盘与闪存 | 查看文件系统空间、磁盘 I/O 和系统能够提供的 SMART、闪存寿命。 |
| 前端包 / 后端包 | 核对发布版本、依赖与构建文件或已加载程序集。 |
| 运行环境 | 核对操作系统、.NET 运行时、架构和 GC 配置。 |
区分内存统计范围
进程映射与托管内存
| 指标 | 说明 |
|---|---|
| 进程工作集 | 当前进程驻留在物理内存中的页面,包含托管堆和其他映射。 |
| 虚拟内存 | 虚拟地址空间,不能当作实际物理内存占用。 |
| 私有提交 / 私有内存 | 系统报告的进程私有内存,统计口径随操作系统变化。 |
| 托管对象 / GC 已提交 | 分别观察托管对象估计量与 GC 已提交空间,均属于进程范围。 |
| RSS / PSS | RSS 是映射驻留量,可能包含共享或重复映射;PSS 按比例分摊共享页。 |
| 私有驻留量 | 映射中由当前进程独占的驻留页面。 |
| 映射类别 | 区分映像文件、普通文件、memfd、匿名映射及系统标记的栈。 |
| 累计 JIT 编译的 IL / 方法 | 观察编译活动,IL 字节数不等于本机代码占用。 |
展开“文件映射驻留明细”查看占用靠前的文件。明细按类别合并同名文件,只显示占用靠前的部分项。Windows 只提供可取得的驻留文件数据,不提供该清单的 PSS 和虚拟大小。
托管堆已经包含在进程内存中,不要把工作集、RSS、托管对象和 GC 已提交相加。定位匿名映射中的原生库、运行时原生堆或未标记栈时,结合原生内存分析工具检查。
Linux 容器与整机
在 Docker/cgroup 环境查看“控制组已用”和“控制组上限”,再检查匿名内存、文件缓存、共享内存及内核子项。当前控制组可能包含多个进程;文件映射、共享内存属于缓存的子项,不能重复相加。
“主机文件缓存与内核”使用整机口径,容器内也可能读到宿主机数据。排查容器接近内存上限时,先按控制组口径判断,再与进程和整机分别比较。
趋势与回收
内存趋势提供 5、15、60 分钟窗口,只包含实际取得的采样,未采样的时段不会补齐。等待积累多个采样后,比较托管对象和工作集;左右方向键可切换采样,Home / End 定位首末点。
各代堆大小和碎片来自最近完成的 GC。累计分配不等于当前存活对象;“最近观察到的回收”最多显示 32 条采样观察,观察时间不是准确的回收发生时间。记录相同负载下的趋势、分配速率和暂停时间,再判断是否持续增长。
进程、硬件与网络排查
在“系统资源”中区分进程运行时长与系统运行时长。在相同负载下连续采样,比较线程池等待项、累计完成项和锁竞争的变化。

在“网口与网络”中检查现场使用的网卡,点击“详情”查看地址、网关、DNS 和错误计数。填写明确的上游主机与 TCP 端口,再点击“检测连接”。TCP 成功只表示该端口可建立连接,仍需验证协议认证和实际数据;ICMP 不响应时不能单凭没有延迟读数判断 TCP 失败。

“观察到的断连”只统计同一目标的相邻检测从成功变为失败的次数,不是网口全部历史断线。修改 IP 的操作入口见系统设置。
硬件、接口或磁盘指标缺失时,先检查“采集来源状态”,再核对操作系统、设备驱动与运行权限。
核对发布包与运行环境
进入“前端包”或“后端包”,按名称或版本搜索,点击“刷新清单”核对发布与依赖信息。文件体积、gzip 参考体积和传输量用于检查文件与加载情况;内存占用查看“GC 与内存”。前端缓存可能使传输量为 0,浏览器未提供记录时显示“—”。
单文件发布、动态程序集或缺少宿主依赖清单时,部分包信息不可用。排障时一并记录“运行环境”中的实际 .NET 版本、操作系统与架构。
按需执行手动 GC
手动 GC 具有独立操作权限。阻塞回收和压缩可能造成短暂停顿,应在允许的维护窗口操作;持续高占用应先排查负载与内存来源。
- 点击“手动 GC”,选择按需或强制模式及代范围。
- 按本次排障需要选择阻塞回收、压缩托管堆或 LOH 压缩。
- 点击“执行 GC”,核对确认框后提交。
- 对比前后托管对象、回收次数变化、调用耗时和实际暂停;按页面冷却提示等待后再操作。
按需模式可能跳过回收,非阻塞请求提交后也可能尚未完成。仍被引用的对象会保留,工作集可能不会立即下降。
常见问题
| 现象 | 检查方法 |
|---|---|
| 点了刷新但采样时间未变 | 检查 30 秒采样复用、页面暂停和请求失败提示。 |
| 工作集远大于托管对象 | 检查映射、共享页、原生分配和容器缓存,按各自范围分析。 |
| 容器占用与主机占用不同 | 分别核对控制组上限、当前控制组包含的进程与宿主机口径。 |
| 没有手动 GC 或包信息 | 检查对应查看、包信息和手动 GC 权限。 |
| 端口连通但采集或上传失败 | 继续检查协议、证书、账号及设备或目标日志。 |