我在 VM 上运行一些测试时使用 procmon 来保存日志。我正在使用 python 和 pytest,但我认为这里无关紧要。对于我正在运行的每个测试以启动 procmon:
psexec.exe -accepteula -s -d -i 1 procmon.exe /AcceptEula /Quiet /BackingFile c:\temp\logs.pml
如果测试失败,我将终止 procmon:
psexec.exe -accepteula -s -d -i 1 procmon.exe /Terminate
然后我正在保存虚拟机的快照。为了打开 logs.pml 以使其可读,我在进入 VM 的快照后运行:
procmon.exe \openlog c:\temp\logs.pml
但有时我会收到错误:
the file logs.PML was not closed cleanly during capture and is corrupt.
- 为什么我会收到此错误?我可以看到 procmon 运行然后被我的代码终止(我可以进入 VM 并看到测试正在运行,执行 procmon 并终止它)。
- 我该如何解决这个问题?注意:它有时会发生,大多数时候它会为我创建日志作为可读的 PML 文件。