繁体   English   中英

如果我有一个小型转储文件或异常结构,如何获得winqual使用的“存储桶ID”? (Windows C ++)

[英]How do I get the “bucket id” that winqual uses if I have a minidump file or exception structure? (Windows c++)

有关SO的一些相关问题-但尚未找到答案-

我想生成一个“签名” /存储桶ID,以向我们的问题跟踪系统报告一次小型转储/崩溃。 由于MS已经使用“存储桶ID”完成此操作,因此我认为我可以重新使用其存储桶/签名生成。

我可以从顶级过滤器或过滤器内部的_EXCEPTION_POINTERS对象或_MINIDUMP_EXCEPTION_INFORMATION结构中获取该ID,还是从小型转储本身中获取该ID?

这是一个C ++应用程序。

有一篇文章首先讨论了Microsoft家伙如何创建存储桶ID(是的,当然,本文来自Microsoft)。 您实际上并不需要完全逆向工程他们使用的存储算法。 这是可行的想法。

可以在http://www.sigops.org/sosp/sosp09/papers/glerum-sosp09.pdf上找到该论文。由于这是SIGOPS论文,因此它们也可以做幻灯片: http : //www.sigops.org/sosp /sosp09/slides/glerum-slides-sosp09.pdf

不确定您需要哪个存储区ID。 数字ID由服务器分配,您可以在查看事件日志后在发送报告后找到它。 在应用程序事件日志中查找事件ID 1001。

要查找字符串格式的存储区ID,请使用windbg或cdb并使用!analyze命令。

请注意,出于实际存储的目的,您可能需要查看WATSON_STAGEONE_URL而不是BUCKET_ID。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM