简体   繁体   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++)

There are a few related questions on SO - but have not found the answer - 有关SO的一些相关问题-但尚未找到答案-

I would like to generate a "signature"/bucket id to report a minidump/crash back to our issue tracking system. 我想生成一个“签名” /存储桶ID,以向我们的问题跟踪系统报告一次小型转储/崩溃。 Since MS already does this with "bucket ids" I figured I could just re-use their bucket/signature generation. 由于MS已经使用“存储桶ID”完成此操作,因此我认为我可以重新使用其存储桶/签名生成。

Can I get that ID from either a top level filter or the _EXCEPTION_POINTERS object I have inside the filter or the _MINIDUMP_EXCEPTION_INFORMATION structure or from the minidump itself? 我可以从顶级过滤器或过滤器内部的_EXCEPTION_POINTERS对象或_MINIDUMP_EXCEPTION_INFORMATION结构中获取该ID,还是从小型转储本身中获取该ID?

This is a C++ application. 这是一个C ++应用程序。

There's a paper talking about how Microsoft guys create bucket id at the first place (, and yes, of course, this paper is from Microsoft). 有一篇文章首先讨论了Microsoft家伙如何创建存储桶ID(是的,当然,本文来自Microsoft)。 You don't really need to reverse engineering exactly the same bucketing algorithm they use. 您实际上并不需要完全逆向工程他们使用的存储算法。 It's the idea that works. 这是可行的想法。

The paper can be found at http://www.sigops.org/sosp/sosp09/papers/glerum-sosp09.pdf They also do a slide since this is a SIGOPS paper: http://www.sigops.org/sosp/sosp09/slides/glerum-slides-sosp09.pdf 可以在http://www.sigops.org/sosp/sosp09/papers/glerum-sosp09.pdf上找到该论文。由于这是SIGOPS论文,因此它们也可以做幻灯片: http : //www.sigops.org/sosp /sosp09/slides/glerum-slides-sosp09.pdf

Not sure which bucket id you need. 不确定您需要哪个存储区ID。 The numeric id is assigned by the server and you can find it after the report is sent by looking at the event log. 数字ID由服务器分配,您可以在查看事件日志后在发送报告后找到它。 Look for event ID 1001 in the application event log. 在应用程序事件日志中查找事件ID 1001。

To find the bucket id in string format use windbg or cdb and use the !analyze command. 要查找字符串格式的存储区ID,请使用windbg或cdb并使用!analyze命令。

Note that for the purpose of actually bucketing you will probably want to look at WATSON_STAGEONE_URL rather than BUCKET_ID. 请注意,出于实际存储的目的,您可能需要查看WATSON_STAGEONE_URL而不是BUCKET_ID。

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

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