Process Monitor 学习笔记(5.5):保存/打开追踪记录——复盘、复现与分享的正确姿势
Process Monitor 学习笔记(5.5):保存/打开追踪记录——复盘、复现与分享的正确姿势
- Process Monitor 学习笔记(5.5):保存/打开追踪记录——复盘、复现与分享的正确姿势
- 一、为什么要保存日志?
- 二、保存入口与基本流程
- 三、三种导出格式怎么选?
- 四、保存对话框关键选项讲解
- 五、如何打开与“重放”分析
- 六、最小可分享日志的“瘦身术”
- 七、典型场景的保存策略
- 7.1 安装失败/升级失败
- 7.2 启动慢/卡死
- 7.3 文件被占用无法删除
- 八、与“长时抓取/关机抓取”的关系
- 九、交付给同事/厂商的“干净包”Checklist
- ✅ 总结
Process Monitor 学习笔记(5.5):保存/打开追踪记录——复盘、复现与分享的正确姿势
本文是《第5章 Process Monitor》系列第 5 篇。主题:如何把一次抓包“沉淀成证据”,并能随时重放、复盘、共享给同事或厂商。
一、为什么要保存日志?
- 复盘:问题已消失,但你需要追溯“当时到底发生了什么”。
- 协作:把最小可复现的证据包发给同事/厂商。
- 留痕:合规/审计需要记录变更点(注册表、文件、网络)。
- 训练集:沉淀自己的过滤模板与案例库,遇到类似问题秒定位。
二、保存入口与基本流程
常用入口:File → Save…
(或工具栏软盘图标)
推荐“六步法”:
- Ctrl+X 清屏 → Ctrl+E 开抓,复现问题 → Ctrl+E 停
- 先用过滤/高亮把噪音压下去(越干净,日志越小)
File → Save…
- Format 选 PML(原生)、或 CSV/XML(要给 Excel / 脚本用)
- Events to save 选 Events displayed using current filter(按当前过滤保存)
- 命名文件,确认保存
小贴士:保存前先看状态栏里是否启用了 Drop Filtered Events(仅保留通过过滤的事件),这会进一步缩小体积。
三、三种导出格式怎么选?
格式 | 适合场景 | 含栈信息 | 体积 | 可二次打开到 Procmon |
---|---|---|---|---|
PML(原生) | 要完整复现分析、保留全部元数据 | ✅ | 中/小(支持压缩) | ✅ |
CSV | Excel/数据透视、简单统计 | ❌ | 小 | ❌(仅数据) |
XML | 脚本/程序解析、与系统日志拼接 | ❌ | 中 | ❌(仅数据) |
建议:
- 与同事/厂商技术支持共享:优先 PML。
- 要做 批量统计/报表/审计:导出 CSV(Excel 友好)。
- 需要 自动化解析:用 XML。
四、保存对话框关键选项讲解
-
Format:PML / CSV / XML(见上表)
-
Events to save:
- Events displayed using current filter(按当前过滤保存)✅ 常用
- All events(全部保存)— 仅在你非常确定需要全量时使用
-
Include profiler events(如有):通常关闭;仅做性能取样时开启
-
Save as:选择目标路径(建议用带时间戳规范命名)
命名建议:
Host-YYYYMMDD-HHMM-CaseBrief.pml
,一眼看懂来源、时间、用途。
五、如何打开与“重放”分析
-
双击 .PML 文件,或
File → Open…
选择日志 -
打开后 原始事件会被完整还原(时间线、进程、细节都在)
-
你可以继续:
- 套用/调整过滤器(
Ctrl+L
) - 高亮关键结果(
Ctrl+H
) - 查看 Stack(调用栈)、Event Properties
- 用 Process Tree 再圈定家族范围
- 套用/调整过滤器(
⚠️ 提醒:Procmon 会沿用你上次的过滤设置。打开别人的日志前,建议先 Filter → Reset Filter,避免误导。
六、最小可分享日志的“瘦身术”
-
先调好过滤(进程家族、关键路径/操作类、失败结果)
-
开启 Drop Filtered Events(只保留通过过滤的事件)
-
再
File → Save…
选择 Events displayed using current filter -
如需进一步瘦身:
- 导出 CSV 给非 Procmon 用户
- 或在 CSV/Excel 里脱敏(用户名、盘符、域名)再分享
七、典型场景的保存策略
7.1 安装失败/升级失败
- 过滤:
CreateFile / RegSetValue / Load Image / CreateProcess
+Result != SUCCESS
- 高亮:
ACCESS DENIED
、SHARING VIOLATION
- 保存:PML + 按过滤保存(含失败点和上游链)
7.2 启动慢/卡死
- 过滤:
CreateFile / RegQueryValue / Load Image / TCP Connect/Reconnect
- 主界面按 Duration 排序
- 保存:PML(保留完整时间线,便于二次定位慢在哪里)
7.3 文件被占用无法删除
- 过滤:目标路径 +
CreateFile / CloseFile / SetDispositionInformation
- 高亮:
SHARING VIOLATION
- 保存:PML(方便定位最早独占句柄的 PID)
八、与“长时抓取/关机抓取”的关系
-
本文聚焦 手动保存 与 重放分析。
-
长时间运行、日志体积控制(Backing Files)、开机/关机/注销抓取(Boot Logging)会在后续章节详细展开。这里只记两点:
- 长时抓取:先设好过滤 + 打开 Drop Filtered Events,体积直线下降
- 偶发问题:可结合 Backing Files(写盘缓冲)与定期轮转
九、交付给同事/厂商的“干净包”Checklist
- 用过滤+高亮把问题窗口圈到最小
- 开启 Drop Filtered Events(能减就减)
- PML 保存“按过滤的事件”
- 附带一份 TXT/MD 说明:复现步骤、时间点标记、主机名/时区
- 如涉及隐私,另给一份 CSV 脱敏版(仅供参考)
✅ 总结
- 保存不仅是“落地一个文件”,更是把一次临场抓包变成可复放、可共享的证据。
- PML 用于复现分析,CSV/XML 用于报表与自动化;保存前先调好过滤、必要时Drop。
- 打开时记得Reset Filter,避免被“上一次的筛选”误导。