x

Search in
Sort by:

Question Status:

Search help

  • Simple searches use one or more words. Separate the words with spaces (cat dog) to search cat,dog or both. Separate the words with plus signs (cat +dog) to search for items that may contain cat but must contain dog.
  • You can further refine your search on the search results page, where you can search by keywords, author, topic. These can be combined with each other. Examples
    • cat dog --matches anything with cat,dog or both
    • cat +dog --searches for cat +dog where dog is a mandatory term
    • cat -dog -- searches for cat excluding any result containing dog
    • [cats] —will restrict your search to results with topic named "cats"
    • [cats] [dogs] —will restrict your search to results with both topics, "cats", and "dogs"

Debug symbols in Crash Reporter

Hi, we have a team consisting of programmers, designers and art. When the game crashes while not running from visual studio the Crash Reporter shows the callstack without symbols regardless the .pdb files are on every machine. How can I load the symbols for the crash reporter? Or is there any other way to debug crashes once they occur without visual studio connected? Thanks for your help.

Product Version: Not Selected
Tags:
more ▼

asked Jan 29 '15 at 11:02 AM in Bug Reports

avatar image

Marek
33 4 11 16

avatar image Doug E ♦♦ STAFF Feb 02 '15 at 09:20 PM

Hey Marek-

You can look at the log file from the crash for additional information. This wiki page, https://wiki.unrealengine.com/Locating_Project_Logs , explains where the log files can be found depending on where the crash occurred. Additionally you can use a source build of the engine from GitHub which may provide more info as well. The following wiki page details how to get and use engine source code from GitHub. https://wiki.unrealengine.com/GitHub_Setup

Cheers

Doug Wilson

avatar image Marek Feb 03 '15 at 04:54 PM

Hello, I don't have a problem to see the callstack on my machine since I always run from Visual Studio, and I use the source build at all times when working in UE4. The thing is that I would like to see the callstack of a crash on a different machine without the source build. I guess that this is the main purpose of the Crash Reporter, isn't it? Currently I have to reproduce the crashes myself which is just nonproductive.

avatar image Jaroslaw Surowiec STAFF Feb 03 '15 at 06:02 PM

Are you sure that the executables match the pdbs? Can you give me more details about your build setup?

You can try something like this: Run the game on a designer's machine, type in the console 'debug crash'. A new crash will be saved in : C:\Users[user]\AppData\Local\Microsoft\Windows\WER\ReportQueue\AppCrash_UE4-[gamename]. Copy and open the .dmp file in the visual studio. Get the executable and the pdbs from the build. 'Set symbol paths' and debug the minidump.

If your pdbs and executables are ok, you will get the correct callstack.

avatar image Marek Feb 04 '15 at 09:34 AM

Thanks, I'll try to do that. Regarding the pdb's matching the executables I'm sure they match since I always submit a fresh build with pdb's attached. I'll come back once I've checked the minidump in visual studio.

avatar image Marek Feb 20 '15 at 03:37 PM

Hi, I didn't have any crash issue until today so frankly speaking I forgot about trying out your suggestion :)

Anyways I got the crash .dmp file and loaded it in visual studio. After loading my pdbs the callstack was correct and I could identify the problem just from the minidump, which means that apparently the pdbs match with the executables on designers machines.

Since I managed to fix the crash without reproducing it on my machine I could say that this is good enough, though It still would be great to see the callstack on designers machine, since sometimes you can tell where's the problem just from the callstack.

avatar image Jaroslaw Surowiec STAFF Feb 27 '15 at 10:06 AM

Cool, in the meantime check the latest version.

(comments are locked)
10|2000 characters needed characters left

1 answer: sort voted first

Hi.

That's strange. If you have the pdbs, the crash report client should parse the minidump and display the callstack. The same callstack should be also printed to the log file.

Where are the symbols? They should be in the same location as the executables. You can also check the log from the crash report client. (C:\Users\\AppData\Local\CrashReportClient\Saved\Logs). Check lines tagged as 'LogCrashDebugHelper'.

more ▼

answered Feb 03 '15 at 03:49 PM

avatar image Marek Feb 03 '15 at 04:44 PM

Hi,

Here is my log file:

alt text

The callstack is not printed in the log file, it only shows "LogCrashDebugHelper:Warning: ... callstack generated!" As we can see the CrashReportClientLog sets symbol path to everything but the folder where the compiled game library with corresponding pdb is placed. Apprat from that there is an entry saying "LogCrashDebugHelper:Warning: bUsePDBCache is disabled" whatever that means...

log.png (125.1 kB)
avatar image DamirH Jun 11 '15 at 12:02 PM

Hey, did you ever find a solution to this?

avatar image Marek Jun 11 '15 at 12:48 PM

Hi. Nope, it only shows the engine callstack and for my project binaries it only displays the project name followed by memory hex.

avatar image Jaroslaw Surowiec STAFF Jun 15 '15 at 11:26 AM

Game specific callstacks will be fixed for 4.9 release.

avatar image Stefan.Zimecki Aug 09 '16 at 12:43 PM

Hello Jarosław, has this been fixed? I have a similar issue: all engine entries in the callstack are fully described, but for game code I only get the dll name. Symbols are loaded into VS so they're there. I've tracked it down to FWindowsPlatformStackWalk::ProgramCounterToSymbolInfo receiving failures from SymGetSymFromAddr64 and SymGetLineFromAddr64, not really sure how I can diagnose it further.

edit: found it. I needed to set DetailedCallstacksInNonMonolithicBuilds to true in the Core.System section of DefaultEngine.ini. Any idea why it's off by default? Haven't found any documentation.

edit2: I have submitted a pull request to set it to true by default.

(comments are locked)
10|2000 characters needed characters left
Your answer
toggle preview:

Up to 5 attachments (including images) can be used with a maximum of 5.2 MB each and 5.2 MB total.

Follow this question

Once you sign in you will be able to subscribe for any updates here

Answers to this question