【问题标题】:How to manually upload my source code to sentry?如何手动将我的源代码上传到哨兵?
【发布时间】:2019-01-29 07:52:07
【问题描述】:

我的应用是用 expo 构建的,哨兵仪表板向我显示 2 个错误:

丢弃的无效参数“类型”

找不到 app:///crna-entry.bundle 的源代码? platform=ios&dev=true&minify=false&hot=false&assetPlugin=%2FUsers%2FUser%2FDesktop%2Fpath%2Fto%2Fnode_modules%2Fexp.

所以当我收到错误时,无法调试,因为我只有一个丑陋的内置 js。

有没有办法手动上传源expo源代码。我应该将哪个文件发送给哨兵?

谢谢

【问题讨论】:

    标签: expo sentry react-native-sentry


    【解决方案1】:

    第一种方式

    如果您使用的是世博会。你应该使用sentry-expo 包,你可以在这里找到:sentry-expo

    把这个钩子放到你的 expo json (app.json) 文件中

    {
      "expo": {
        "hooks": {
          "postPublish": [
            {
              "file": "sentry-expo/upload-sourcemaps",
              "config": {
                "organization": "<your organization name>",
                "project": "<your project name>",
                "authToken": "<your auth token here>"
              }
            }
          ]
        }
    }
    
    
    1. organization你可以在这里找到https://sentry.io/settings/,它名为“组织名称”
    2. project输入你的项目名称,你可以在这里找到:https://sentry.io/organizations/ORGANIZATION_NAME/projects/
    3. authToken 使用此 url https://sentry.io/api/ 创建一个 authToken

    然后运行expo publish,它会自动上传源地图。

    本地测试

    确保您启用了 expo 开发。 添加行;

    Sentry.enableInExpoDevelopment = true;
    Sentry.config(publicDsn, options).install();
    

    结果

    在哨兵上,仅适用于ios,您可以看到发生错误的源代码。

    但是:无法看到 ANDROID 的源代码

    https://github.com/getsentry/react-native-sentry/issues/372

    第二种方式(手动上传)

    使用apihttps://docs.sentry.io/platforms/javascript/sourcemaps/

    curl -X POST \
      https://sentry.io/api/0/organizations/ORG_NAME/releases/VERSION/files/ \
      -H 'Authorization: Bearer AUTH_TOKEN' \
      -H 'content-type: multipart/form-data' \
      -F file=@script.min.js.map \
      -F 'name=~/scripts/script.min.js.map'
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-10-22
      • 2022-01-13
      • 2020-12-04
      • 1970-01-01
      • 2022-01-04
      • 2014-10-11
      • 1970-01-01
      • 2023-03-17
      相关资源
      最近更新 更多