Sentry-dart: Support `split-debug-info` and `obfuscate` for Flutter Desktop

Created on 26 Apr 2021  路  6Comments  路  Source: getsentry/sentry-dart

Wee need to test

  • split-debug-info and obfuscate on macOS
  • split-debug-info and obfuscate on Linux
  • obfuscate on Windows. There is no split-debug-info on Windows

Those options have not been tested. They might require changes in the SDK and/or on the server.
It could be that they already work, and in this case we don't need to do anything.

We need to update the docs after this has been tested.

enhancement flutter-desktop

Most helpful comment

indeed, we'd need to install the LoadAndroidImageListIntegration integration for Flutter Desktop, but not only, on Android, sentry-native is also responsible for loading that.
That means, either we ship sentry-native for Linux/Windows or we find a way to do it via Native code or ffi

macOS requires that too, so Sentry Cocoa needs to expose a way of getting the debug image list.
https://github.com/getsentry/sentry-cocoa/issues/1089

All 6 comments

let's add the windows/macos/linux support to this script

https://github.com/getsentry/sentry-dart/blob/main/flutter/example/run.sh

the way of uploading debug files is the same as iOS/Android -> https://github.com/getsentry/sentry-dart/blob/main/flutter/example/run.sh#L58-L60

we need to see if frames are symbolicated, file/function names are available and line number is also correct.

I believe macOS won't work if Flutter has the same format as iOS debug files, but let's try.

@bruno-garcia you may need to help us on Windows, would you be willing to do so? :)

Didn't seem to work: https://sentry.io/organizations/sentry-sdks/issues/2367778946/?project=5428562&query=is%3Aunresolved

We would need to add the debug_meta with the DLL's build_id of sorts. @jan-auer might have pointers.

image

image

.so on Windows? They really went all in with ELF it seems

indeed, we'd need to install the LoadAndroidImageListIntegration integration for Flutter Desktop, but not only, on Android, sentry-native is also responsible for loading that.
That means, either we ship sentry-native for Linux/Windows or we find a way to do it via Native code or ffi

macOS requires that too, so Sentry Cocoa needs to expose a way of getting the debug image list.
https://github.com/getsentry/sentry-cocoa/issues/1089

The Flutter docs state that obfuscate is not supported on Windows and Linux.

Makes it easier. On Windows and Linux we only need to bundle sentry-native to capture native crashes.

Was this page helpful?
0 / 5 - 0 ratings