有用的东西放在minidumps的用户流段中

Mic*_*bbé 6 c++ debugging minidump

我感兴趣的是开发人员在可以嵌入minidump的用户流数据结构中添加了什么有用的东西.MSDN描述了MiniDumpWriteDump的参数:

PMINIDUMP_USER_STREAM_INFORMATION UserStreamParam

并由此描述参数:

UserStreamParam [in]指向MINIDUMP_USER_STREAM_INFORMATION结构数组的指针.如果此参数的值为NULL,则minidump文件中不包含用户定义的信息.

我正在考虑在用户流中嵌入我的程序的最后n个日志行,因为测试人员往往不会一直发送包含所有错误的格式正确的日志.

此外,我可以在该部分中放置硬件规格(内存,CPU,视频等).

人们还使用了哪些用户流段?

Mar*_*ins 3

我喜欢你包含历史日志信息的想法。但是,如果生成小型转储是为了响应某种类型的异常,则停止读取日志文件以包含在转储中似乎并不总是最佳计划,因为系统的稳定性可能值得怀疑。

我们的默认类型是 MiniDumpWithFullMemory。在这种情况下,用户流信息在我们的应用程序中似乎并不是特别有用,因为完整内存几乎包含了我们需要的所有可能的信息(至少到目前为止)。当人们向我们发送转储文件时,我们也很幸运地获得了所有错误日志文件。

但是,我们的用户可以使用配置参数更改类型。我可以看到,使用较小的小型转储类型之一,用户流信息可能非常有用。在看到这篇文章之前,我从未真正考虑过小型转储函数的该参数。我们在内存中有一些带有基本配置信息的结构,这些信息在未生成完整内存转储的情况下将非常宝贵。此外,包含“导致”异常的用户详细信息的结构也会很方便。我将不得不考虑添加其中一些作为用户流转储。