哨兵找不到我的源代码

时间:2018-08-22 08:58:12

标签: expo sentry react-native-sentry

我无法在岗亭中显示我的原始代码。

我遇到以下错误

Discarded invalid parameter 'type'

Source code was not found for app:///crna-entry.delta? 
platform=ios&dev=true&minify=false`

我已经按照文档中的说明配置了app.json

"hooks": {
  "postPublish": [
    {
      "file": "sentry-expo/upload-sourcemaps",
      "config": {
        "organization": "xxxxx",
        "project": "xxxxxxx",
        "authToken": "xxxxxxxxxx"
      }
    }
  ]
}

1 个答案:

答案 0 :(得分:0)

我回答了这个问题here

第一种方式

如果您正在使用expo。您应该使用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/
  4. 创建authToken

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

本地测试

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

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

第二种方式(手动上传)

使用api https://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'