是否可以将flutter源地图或源代码上传到哨兵以进行更好的调试?

时间:2019-09-22 12:29:58

标签: flutter dart sentry

当我通过哨兵获得一些错误信息时,我希望有更好的stacktrace信息。目前,抖动哨兵只给您一个堆栈跟踪,在堆栈跟踪中它显示为“已编译”代码,这使调试更加困难。

是否有一种方法可以上传源地图或源代码,以便在出现错误时有一个更准确的主意?

谢谢!

这里有个例子(它并不是真的有用):

Here an example from sentry

1 个答案:

答案 0 :(得分:2)

您可以在构建 https://github.com/flutter/flutter/issues/72150

时设置一个新标志
 --source-maps

以下脚本可能对您有所帮助

export SENTRY_RELEASE=$(date +%Y-%m-%d_%H-%M-%S)
export OUTPUT_FOLDER_WEB=./build/web/

flutter build web --dart-define=SENTRY_RELEASE=$SENTRY_RELEASE --source-maps

echo -e "[\033[92mrun\033[0m] Uploading sourcemaps for $SENTRY_RELEASE"
sentry-cli releases new $SENTRY_RELEASE
sentry-cli releases files $SENTRY_RELEASE upload-sourcemaps . \
    --ext dart \
    --rewrite
sentry-cli releases files $SENTRY_RELEASE upload-sourcemaps ${OUTPUT_FOLDER_WEB}main.dart.js.map
sentry-cli releases finalize $SENTRY_RELEASE

Sentry 还提供了一个没有 --source-maps https://github.com/getsentry/sentry-flutter/blob/d22e8376648dd9746304646036dbd24bb885e177/example/run.sh#L24-L29

的示例