locked
How can I make same report as devcenter do from minidump? RRS feed

  • Question

  • How can I make same report as devcenter do from minidump(from crash reports)?

    I really missing some files to do that in windbg

    on windows phone we don't tool to generate .ni.dll files  and only microsoft server have access to 

    So how we can generate .ni.dll and pdb-s?

    Or only way how to get answer this question is paid technical support?

    Monday, April 20, 2015 8:04 AM

All replies

  • Hello,

    We don't have a tool that will generate the exact same report as we do in dev center but we do have a number of tools that can get the same information that is contained in the dev center report.

    WinDbg is one tool that can pull out the same information and more. It sounds like you are not connected to the public symbols. To access the public symbols from WinDbg by setting the symbol path to: "srv*DownstreamStore*http://msdl.microsoft.com/download/symbols"

    You can also use the Debug Diagnostic Tool. This tool will generate a report much closer to the report you see in dev center. You also need to make sure the tool is setup to use the Microsoft public symbols to get the additional symbol information.

    I hope this helps,

    James


    Windows SDK Technologies - Microsoft Developer Services - http://blogs.msdn.com/mediasdkstuff/

    Tuesday, April 21, 2015 12:18 AM
    Moderator
  • Thx for your answer

    I am missing .ni.dll and pdb  for my application.

    As windbg don't load .dll and pdb as dll size not match!

    As far as I know visual studio build only .dll and pdb files for .net/ silverlight runtime

    But windows phone store use some tools to create .ni.dll anid pdb (recompile to more native runtime)

    so we don't have access to this .ni.dll anid pdb files

    And I don't really think that I can get symbols  for my application on "http://msdl.microsoft.com/download/symbols"

    :)

    Tuesday, April 21, 2015 7:57 AM
  • Hello,

    You can force the load of the PDB in WinDbg by using the ".reload /i" command. You can load your app's PDB's from any location by adding the path using the ".sympath" command. 

    You are correct .NI files are Native Images generated locally by the NGEN service, and won't be available on MS Symbols server. Have you seen this thread: system.ni.dll symbols?

    You also might want to look here (also referenced in the thread above): http://blogs.msdn.com/b/visualstudioalm/archive/2012/12/10/creating-ngen-pdbs-for-profiling-reports.aspx

    I hope this helps,

    James


    Windows SDK Technologies - Microsoft Developer Services - http://blogs.msdn.com/mediasdkstuff/

    Tuesday, April 21, 2015 6:19 PM
    Moderator
  • I saw guide for ngen  but

    I am on Windows 8.1 X84

    c:\Windows\Microsoft.NET\Framework\v4.0.30319\ngen.exe

    c:\Windows\Microsoft.NET\Framework64\v4.0.30319\ngen.exe

    And I don't think that I have same as version as on Windows phone store server ?

    So where can I find ngen.exe for windows phone arm ?


    • Edited by Seznam cz Thursday, April 23, 2015 12:00 PM
    Wednesday, April 22, 2015 9:03 AM
  • so Microsoft don't know answer ?

    Or should I really ask on paid technical support?

    Tuesday, May 5, 2015 8:57 AM
  • Hello,

    What information are you trying to get from the *.ni.dlls? They really aren't designed to be used by debuggers. PDB's generated by ngen.exe for *.ni.dlls are only meant to be used by etw-based profilers. Because of this they aren't necessarily useful for most types of post mortem debugging.

    The other problem with generating *.ni.dll PDB's locally is that they may not be aligned to the binaries that the store ultimately compiles. When you upload your appx the store may recompile your app with a slightly different version of the tools generating offsets and entry-points that may not match your locally generated *.ni.dlls.

    Using the public non *.ni.dlls (i.e. system.dll rather than system.ni.dll) should be sufficient for most debugging scenarios. However, these public symbols may not give you as much information as generating local *.ni.dll PDBs and using them with the Visual Studio profiler tools.

    I hope this helps,

    James


    Windows SDK Technologies - Microsoft Developer Services - http://blogs.msdn.com/mediasdkstuff/

    Friday, May 8, 2015 12:39 AM
    Moderator
  • I want to generate same or better report from minudump provided by windows phone store

    I really miss exception message for example

    exact line in code

    I get this in wonderfull stacktrace from window phone store

    so I get address offset  but from it is async method(SavePersonAsync) so it is useless!! 

    I want to get right place in code from offset address

    I get more info from my native c++ compied code(crashdump) than my c# code and that is really bad!!

    So how can I do that?

    Frame    Image                                         Function                                                                                                    Offset        
    0        System.Data.Linq.ni.dll                       System.Data.Linq.ChangeTracker+StandardChangeTracker+StandardTrackedObject.SynchDependentData               0x00000402    
    1        System.Data.Linq.ni.dll                       System.Data.Linq.ChangeProcessor.ValidateAll                                                                0x0000005e    
    2        System.Data.Linq.ni.dll                       System.Data.Linq.ChangeProcessor.SubmitChanges                                                              0x0000007e    
    3        System.Data.Linq.ni.dll                       System.Data.Linq.DataContext.SubmitChanges                                                                  0x000002f8    
    4        System.Data.Linq.ni.dll                       System.Data.Linq.DataContext.SubmitChanges                                                                  0x0000001a    
    5        Seznam.Email.BusinessLogic.ni.DLL             Seznam.Email.BusinessLogic.Services.EmbededSqlService+__c__DisplayClass150._SavePersonAsync_b__14f          0x0000028c    

    I really don't care that you have some version of ngen.exe on your server


    • Edited by Seznam cz Thursday, May 14, 2015 11:31 AM
    Thursday, May 14, 2015 11:31 AM
  • I apologize but I don't really understand.

    Are you trying to get the exact line in your code or in the ni.dll code? You won't get the exact line in the ni.dll code. If you have the proper pdb you can get the exact line in your code.

    -James


    Windows SDK Technologies - Microsoft Developer Services - http://blogs.msdn.com/mediasdkstuff/

    Friday, May 15, 2015 8:32 PM
    Moderator
  • I am sorry but I don't understand too

    So I can't get same .ni.dll and pdb as you generate on windows phone store server?

    So I can't get place of exception and exception message now


    Ok microsoft made new version of store and it is still in beta and I think this is time for one Priority one function 

    one magic button for download store version of pdb and ni.dll-s

    As we really missing this function for a couple years.. ? right? :)

    We have offsets, address in stacktrace csv from store and all this data are useless!

    • Edited by Seznam cz Wednesday, May 20, 2015 8:32 AM
    Wednesday, May 20, 2015 8:06 AM