-
Notifications
You must be signed in to change notification settings - Fork 223
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Crash Stacks / Line Numbers for Xamarin Apps #165
Comments
Hi @kensykora - thanks for the feedback. We are unable to display Xamarin line numbers at the moment since we don’t actually process any Xamarin logs and we think this might be a limitation on the Xamarin side. We're currently looking into solutions and I'll keep this thread updated when I have more information. Thanks! |
Can someone from Microsoft please explain how we're supposed to ship production Xamarin apps, when it's impossible to obtain useful crash reports? |
Any update on this? |
What is the status of this? |
It's really a pain to fix crashes, when we don't have line numbers.. You even acknowledge that line numers are needed to read and understand crashes..:
|
Don't hold your breath, I've been waiting 5+ years to get line numbers in my production Xamarin apps logged to HockeyApp (mono-symbolicate never worked for me). Seeming that App Center is a downgrade from HockeyApp (inconsistent logging of handled vs. unhandled exceptions, stack traces showing way less than they used to in HockeyApp, buggy dashboard, etc...) there is absolutely 0% chance of them ever getting this working. |
Any update about this issue? |
What is underlying issue here? Is it just that mono-symbolicate is not used by appcenter? Or is there a problem with mono-symbolicate as well? |
Any update on this? |
News? Plans? Is there a way to achieve this with debug build? |
@Edgaras91 |
What settings in android options are required to make a build a "debug" build to show the line numbers? For example, Release Build, what do I need to do to make it build a debug version? |
@Edgaras91 However, if you compile your app in "Release" configuration, line numbers WILL NOT be shown. That's why this issue is still open. |
I understand that. I want to convert my Release build, and stay on Release configuration, but I want to instruct the compiler to compile a debug version. There must be an android option to compile with debug information. Right? |
any progress on this? No line numbers in app crash report renders it pretty much useless... |
This issue has been resolved on the Xamarin.Android side for quite some time:
So, the ball should be in the AppCenter team's court. @winnie, with this information, should there be an update in status from your March 13, 2019 comment? Any insights would be appreciated. |
This issue has been automatically marked as stale because it has not had any activity for 60 days. It will be closed if no further activity occurs within 15 days of this comment. |
Hey @winnie, with the above information, could we get a roadmap indication for this feature? Even if it’s that there is no plans for this feature. We have production apps that that are still experiencing crashes that we cannot debug because the lack of line numbers make the exact execution path obscure. Knowing if Xamarin will support this in the near future or not will help us with an approach. We are hoping Xamarin gets support but we’ve been hoping at the expense of unfixed crashes. |
@winnie - I want to second @ryanholden8. This is a VERY MUCH NEEDED FEATURE and has been missing much, much too long. Until this is fixed, I cannot recommend AppCenter / Xamarin for Enterprise applications. |
Any update about this issue? |
@winnie, @ela-malani, @DmitriyKirakosyan - I'd love to hear some progress about this as well. There are multiple reported issues here that have been open for 2.5 years. I'm not entirely sure who the current PMs are for AppCenter, I gather Winnie left a while back. Any information on who the tag would be helpful as well. At least for us, the funny thing is that AppCenter actually does display line numbers for either the iOS simulator or iOS devices that were being debugged directly via VS2019. These are also listed as unsymbolized crashes in AppCenter, despite appearing as symbolized. Any installs that are built and distributed by AppCenter to our QA members or clients do not include the line information that would be greatly helpful in having to pin down issues. If we could get a copy of the heap that we could download and open up against VS (similar to what is possible with Azure), that would be even better, but I can at least understand why that might not be possible. Thanks! |
Frankly, it's very hard to trace what went wrong within the app (if at all possible) without the line numbers. |
I would appreciate an update on this please |
Is there any way this issue can get some love? |
Or maybe, just maybe, expand the REST API to allow us to modify stack traces so at least we can hack together a solution ourselves after years of you blatantly ignoring this very annoying issue. By the way, there is another issue with the same feature request/complaint! How can it be that you own both App Center and Xamarin, yet you cannot integrate both of them together properly? Why is Xamarin being treated like a second-class citizen in your own damn products? What next, are you not allowing me to send Mono symbols from Xamarin.Android to the App Center, maybe even through DevOps CI? Oh wait a minute! That is also an issue! By golly, you really couldn't be bothered to properly support Xamarin, could you? EDIT: Just found out that you give people trying to work with .NET 6 the same silent treatment: #86 |
It seems Appcentre seems to being retired I have had no communication from them in realtion to whats hapening when maui comes out. Might I suggest raygun it gives you line numbers and have of late changed their pricing model. |
@davidbuckleyni : Thanks for mentioning RayGun. I hadn't heard of it. The price seems quite reasonable. I would be very happy to pay these kind of prices to get line numbers. |
@baskren no worries and dont forget u can email urself logs as well. |
This issue has been automatically marked as stale because it has not had any activity for 60 days. It will be closed if no further activity occurs within 15 days of this comment. |
Please remove the |
This issue has been automatically marked as stale because it has not had any activity for 60 days. It will be closed if no further activity occurs within 15 days of this comment. |
This issue has been manually marked as not stale because it has had activity for 60 days. It will not be closed because further activity occured within 15 days of previous comment. |
You know what would be great? It would be great if this issue could be given some attention OR a rational explanation could be given as to why this is not a priority. |
Why would they give a rational explanation, when it's becoming ever more evident that Xamarin is dead to them. It's all about MAUI now. |
I'd be happy if they'd fix this for MAUI too - because that would mean it would be fixed for .NET6-iOS, .NET6-Android. Heck, maybe even for .NET6-Windows! |
I wanted to say that the App Center is dying but if you don't use Microsoft's own technologies with the App Center, the devs are quick to respond! Hey devs, why is some whack-a-doodle React Native framework getting more attention than your own technologies? INCLUDING .NET 6 BTW.! It's new and feels already as deprecated as Xamarin within the App Center! You may say that none of these are deprecated except you don't and let the bot mark it as stale! If this continues, i'm gonna switch to Raygun! |
TL;DR - @amirvenus pointed out the flaw in my approach - here I was using a debug profile but when I switched to release, the problem resurfaced. I do apologize for the false alarm (@baskren) Just came across this issue in another support channel. This may be something for consideration for those willing to accept the workaround. I have not isolated the source code which is responsible for creating the crash call stack. But I noticed that when using the Crash.TrackError method in our SDK, line numbers are retained. The workaround then, would be to hookup the AppDomain unhandled exception handler. AppDomain.CurrentDomain.UnhandledException += CurrentDomain_UnhandledException; Then, implement something like this:
The result? Surprisingly to me, both the crash which eventually is sent to App Center and the tracked crash, both now contain line numbers. |
Have you tried with Release builds? Thanks |
Can't wait to try this |
What u describe has been around for years people reporting here would be aware of this |
This should be added to the documentation of crash handling of MAUI and Xamarin. |
I got tired of waiting for this to never happen so I put together a small tool that helps somewhat. See the repo at https://github.com/rhult/crash-sharpener It is not a full solution, but it does two things:
You can use this to automate symbolicating by downloading the errors from App Center using its API, and then symbolicate them on your machine. I have tested it with iOS and Android on .net7 and it works well. I get line numbers from release builds this way. |
Not all heros wear capes. |
For those on Xamarin (https://github.com/getsentry/sentry-xamarin) MAUI (https://github.com/getsentry/sentry-dotnet) https://docs.sentry.io/platforms/dotnet/guides/maui/#overview-of-the-features You need to upload PDBs. It's automatic if you configure the org-slug/auth token via msbuild or env vars, or CLI args: https://docs.sentry.io/platforms/dotnet/guides/maui/configuration/msbuild/ Also support native crashes on both iOS and Android. Code is here: https://github.com/getsentry/sentry-dotnet I use it on this project: https://github.com/getsentry/symbol-collector These are release builds in production: Disclaimer: I was the maintainer of the Sentry .NET SDK |
For anybody still hoping this gets fixed, App Center is officially being retired. |
And Sentry continues to support line numbers for all types of .NET app including mobile: |
Crashes and errors that are collected today are really nice, but they aren't including line numbers. So when I see a crash with a stacktrace like this, it's really difficult to pinpoint exactly where the exception occurred. At best I can make an educated guess. Especially tricky when it's a very low frequency crash that we haven't been able to reproduce yet
I can't think of any alternative way to achieve this behavior. We have considered shipping log data with the crashes to supplement but that only goes so far.
The text was updated successfully, but these errors were encountered: