Skip to content
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 reports on Mac player with Mono runtime do not include file path or line numbers #1763

Open
wilg opened this issue Aug 14, 2024 · 7 comments
Labels
Bug Something isn't working Unity 6

Comments

@wilg
Copy link

wilg commented Aug 14, 2024

Environment

How do you use Sentry?
Sentry SaaS (sentry.io)

Which version of the SDK?
sentry-unity 2.1.3

How did you install the package? (Git-URL, Assetstore)
Git

Which version of Unity?
6000.0.14f1

Is this happening in Unity (editor) or on a player like Android, iOS, Windows?
Player

Steps to Reproduce

Any crash.

Expected Result

Sentry shows file name and line numbers.

Actual Result

This is the full "Raw Stack Trace" that appears in Sentry.

Newest

  Module "UnityEngine.Logger", in Log
  Module "UnityEngine.Debug", in LogError
  Module "InteractableTrigger", in Trigger
  Module "NPC", in ShouldTriggerInteractable
  Module "InteractableTrigger", in OnTriggerExit

No file or line numbers appear in the symbolicated trace UI.

I am having a similar issue on Windows players (built on Windows), where file and line numbers do appear, but they use Windows-style paths and Sentry cannot associate the source code with them. #1764 Perhaps there is some connection between the two.

@bitsandfoxes
Copy link
Contributor

That's odd for sure. Mono should work OOTB with whatever it is that Unity provides us. We'll have to check if that is something new with Unity 6.

@bitsandfoxes bitsandfoxes added Bug Something isn't working Unity 6 labels Aug 26, 2024
@wilg
Copy link
Author

wilg commented Aug 27, 2024

Yeah, it's odd. As I said it does work on a Windows build built on a Windows machine, but not on a Mac build built on a Mac machine.

@getsantry getsantry bot moved this to Waiting for: Product Owner in GitHub Issues with 👀 3 Aug 27, 2024
@bitsandfoxes
Copy link
Contributor

I'm looking into this as part of #1775

@bitsandfoxes
Copy link
Contributor

Interestingly enough the stacktraces differ out-of-the-box between an error captured in the Editor

NullReferenceException: Object reference not set to an instance of an object.
BugFarmButtons.ThrowNull () (at Assets/Scripts/BugFarmButtons.cs:23)
UnityEngine.Events.InvokableCall.Invoke () (at /Users/bokken/build/output/unity/unity/Runtime/Export/UnityEvent/UnityEvent.cs:178)
UnityEngine.Events.UnityEvent.Invoke () (at /Users/bokken/build/output/unity/unity/artifacts/generated/UnityEvent/UnityEvent_0.cs:57)
UnityEngine.UI.Button.Press () (at ./Library/PackageCache/com.unity.ugui/Runtime/UGUI/UI/Core/Button.cs:70)
UnityEngine.UI.Button.OnPointerClick (UnityEngine.EventSystems.PointerEventData eventData) (at ./Library/PackageCache/com.unity.ugui/Runtime/UGUI/UI/Core/Button.cs:114)
UnityEngine.EventSystems.ExecuteEvents.Execute (UnityEngine.EventSystems.IPointerClickHandler handler, UnityEngine.EventSystems.BaseEventData eventData) (at ./Library/PackageCache/com.unity.ugui/Runtime/UGUI/EventSystem/ExecuteEvents.cs:57)
UnityEngine.EventSystems.ExecuteEvents.Execute[T] (UnityEngine.GameObject target, UnityEngine.EventSystems.BaseEventData eventData, UnityEngine.EventSystems.ExecuteEvents+EventFunction`1[T1] functor) (at ./Library/PackageCache/com.unity.ugui/Runtime/UGUI/EventSystem/ExecuteEvents.cs:272)
UnityEngine.DebugLogHandler:LogException(Exception, Object)
Sentry.Unity.Integrations.UnityLogHandlerIntegration:LogException(Exception, Object) (at /Users/bitfox/Workspace/sentry-unity/src/Sentry.Unity/Integrations/UnityLogHandlerIntegration.cs:63)
UnityEngine.EventSystems.EventSystem:Update() (at ./Library/PackageCache/com.unity.ugui/Runtime/UGUI/EventSystem/EventSystem.cs:530)

vs a Mono build

NullReferenceException: Object reference not set to an instance of an object.
  at BugFarmButtons.ThrowNull () [0x00000] in <f210a8a85f9d464080cea89ae1eaa6fd>:0 
  at UnityEngine.Events.InvokableCall.Invoke () [0x00010] in <c329f35d63d54ed6a65a0a1db8de060a>:0 
  at UnityEngine.Events.UnityEvent.Invoke () [0x00022] in <c329f35d63d54ed6a65a0a1db8de060a>:0 
  at UnityEngine.UI.Button.Press () [0x0001c] in <575219a1e432488989ef825f92d079fd>:0 
  at UnityEngine.UI.Button.OnPointerClick (UnityEngine.EventSystems.PointerEventData eventData) [0x00009] in <575219a1e432488989ef825f92d079fd>:0 
  at UnityEngine.EventSystems.ExecuteEvents.Execute (UnityEngine.EventSystems.IPointerClickHandler handler, UnityEngine.EventSystems.BaseEventData eventData) [0x00007] in <575219a1e432488989ef825f92d079fd>:0 
  at UnityEngine.EventSystems.ExecuteEvents.Execute[T] (UnityEngine.GameObject target, UnityEngine.EventSystems.BaseEventData eventData, UnityEngine.EventSystems.ExecuteEvents+EventFunction`1[T1] functor) [0x00067] in <575219a1e432488989ef825f92d079fd>:0 

@wilg
Copy link
Author

wilg commented Nov 2, 2024

Is there any progress or workaround for this? It's almost impossible to use Sentry on my Mac builds still.

@getsantry getsantry bot moved this to Waiting for: Product Owner in GitHub Issues with 👀 3 Nov 2, 2024
@wilg
Copy link
Author

wilg commented Nov 2, 2024

Does this project not actually support the Mono runtime, only IL2CPP? The limitations page sort of says this but a bit indirectly? https://docs.sentry.io/platforms/unity/troubleshooting/known-limitations/

@bruno-garcia
Copy link
Member

bruno-garcia commented Nov 4, 2024

Are the pdbs next to the executable? that's how we'd get the line numbers, we just call the "dotnet framework" what's the line number for this frame. And it loads the pdb automatically, we don't have any custom logic for that.

I wonder if Unity is not generating pdb's or it's not copying them out where the executable goes to

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug Something isn't working Unity 6
Projects
Status: No status
Status: No status
Development

No branches or pull requests

3 participants