Re: How to parse a log file
Re: How to parse a log file
- Subject: Re: How to parse a log file
- From: James Walker via Cocoa-dev <email@hidden>
- Date: Mon, 26 Oct 2020 15:49:59 -0700
On 10/26/20 3:31 PM, Alex Zavatone via Cocoa-dev wrote:
As a note to Jens’s tip, it’s important to keep the .dSWM files for your
releases so that you can symbolicate your crash logs. Crashlytics does this
for you, but the debug symbols are stripped from released builds to try and
prevent people from reverse engineering your code and to make the executable
smaller.
If you have access to the build Mac that the execurable was made on, you should
be able to check in the Organizer window and look for Download Debug Symbols.
I don't see any "Download Debug Symbols" in the Organizer. I don't
think it exists for macOS apps.
However, one can right-click on an archive and select "Show In Finder",
then once in Finder right-click again and Show Package Contents, and
drill down to find dSyms. (Usually just one, but if your app builds
with a private framework, there could be more.)
And Google for xcode symbolicate binary.
https://developer.apple.com/documentation/xcode/diagnosing_issues_using_crash_reports_and_device_logs/adding_identifiable_symbol_names_to_a_crash_report?language=objc
Alex Zavatone
On Oct 26, 2020, at 5:19 PM, Jens Alfke via Cocoa-dev
<email@hidden> wrote:
On Oct 26, 2020, at 3:01 PM, Gabriel Zachmann via Cocoa-dev
<email@hidden> wrote:
Is it possible to determine the exact line in the source code where the error
occurred?
The "+ nnnn" thing in each stack line is the byte offset from the start of the
function, in the machine code. Not super useful by itself …
If the symbol is simply "MyAppName + nnnn" with no function/method, then no
symbols for your code were available at the time of the crash. That means they weren't
embedded in the code, and no dSYM file was found.
Or, if the offset is unrealistically large (like hundreds of KB), then the
function/method name is bogus and is simply the nearest named symbol that the
stack-dump code could find.
I believe it's possible to use the .dSYM file that was produced with the release build of
_that exact version_ of your app, to convert those offsets into line numbers — there's a
tool called "symbolicate" or something like that. I have never done this myself
so I don't know the details.
—Jens
_______________________________________________
Cocoa-dev mailing list (email@hidden)
Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden
_______________________________________________
Cocoa-dev mailing list (email@hidden)
Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden
_______________________________________________
Cocoa-dev mailing list (email@hidden)
Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden