sentry-javascript: react-native on android in production make error that can't read
i got this in some part of json file in sentry server which send from
raven 3.70 android 6.0.1 Mi4 model
the first one show only [native code] message vs show path and module in the simulater device
"sentry.interfaces.Exception": {
"exc_omitted": null,
"values": [
{
"stacktrace": {
"frames": [
{
"abs_path": "[native code]",
"filename": "[native code]",
"in_app": false
},
{
"function": "forEach",
"abs_path": "[native code]",
"filename": "[native code]",
"in_app": false
},
{
"abs_path": "[native code]",
"filename": "[native code]",
"in_app": false
},
{
"abs_path": "[native code]",
"filename": "[native code]",
"in_app": false
},
{
"abs_path": "[native code]",
"filename": "[native code]",
"in_app": false
},
{
"abs_path": "[native code]",
"filename": "[native code]",
"in_app": false
}
],
"has_system_frames": false,
"frames_omitted": null
},
"mechanism": null,
"type": "TypeError",
"module": null,
"thread_id": null,
"value": "2 is not a function (evaluating 'e()')",
"raw_stacktrace": null
}
]
},
compare with this json in simulator ( api 23, android 6.0.0 )
"sentry.interfaces.Exception": {
"exc_omitted": null,
"values": [
{
"stacktrace": {
"has_system_frames": false,
"frames": [
{
"function": "onmessage",
"abs_path": "http://localhost:8081/debuggerWorker.js",
"module": "debuggerWorker",
"in_app": false,
"lineno": 39,
"colno": 56,
"filename": "/debuggerWorker.js"
},
{
"function": "MessageQueue.callFunctionReturnFlushedQueue",
"abs_path": "http://localhost:8081/index.android.bundle?platform=android&dev=true&hot=true&minify=false",
"module": "<unknown module>",
"in_app": false,
"lineno": 11917,
"colno": 1,
"filename": "/index.android.bundle"
},
{
"function": "guard",
"abs_path": "http://localhost:8081/index.android.bundle?platform=android&dev=true&hot=true&minify=false",
"module": "<unknown module>",
"in_app": false,
"lineno": 11849,
"colno": 1,
"filename": "/index.android.bundle"
},
{
"abs_path": "http://localhost:8081/index.android.bundle?platform=android&dev=true&hot=true&minify=false",
"module": "<unknown module>",
"in_app": false,
"lineno": 11918,
"colno": 8,
"filename": "/index.android.bundle"
},
{
"function": "MessageQueue.__callFunction",
"abs_path": "http://localhost:8081/index.android.bundle?platform=android&dev=true&hot=true&minify=false",
"module": "<unknown module>",
"in_app": false,
"lineno": 12036,
"colno": 34,
"filename": "/index.android.bundle"
},
{
"function": "Object.receiveTouches",
"abs_path": "http://localhost:8081/index.android.bundle?platform=android&dev=true&hot=true&minify=false",
"module": "<unknown module>",
"in_app": false,
"lineno": 19688,
"colno": 25,
"filename": "/index.android.bundle"
},
{
"function": "Object._receiveRootNodeIDEvent",
"abs_path": "http://localhost:8081/index.android.bundle?platform=android&dev=true&hot=true&minify=false",
"module": "<unknown module>",
"in_app": false,
"lineno": 19626,
"colno": 14,
"filename": "/index.android.bundle"
},
{
"function": "Object.batchedUpdates",
"abs_path": "http://localhost:8081/index.android.bundle?platform=android&dev=true&hot=true&minify=false",
"module": "<unknown module>",
"in_app": false,
"lineno": 20889,
"colno": 18,
"filename": "/index.android.bundle"
},
{
"function": "Object.batchedUpdates",
"abs_path": "http://localhost:8081/index.android.bundle?platform=android&dev=true&hot=true&minify=false",
"module": "<unknown module>",
"in_app": false,
"lineno": 33163,
"colno": 13,
"filename": "/index.android.bundle"
},
{
"function": "ReactDefaultBatchingStrategyTransaction.perform",
"abs_path": "http://localhost:8081/index.android.bundle?platform=android&dev=true&hot=true&minify=false",
"module": "<unknown module>",
"in_app": false,
"lineno": 21685,
"colno": 12,
"filename": "/index.android.bundle"
},
{
"abs_path": "http://localhost:8081/index.android.bundle?platform=android&dev=true&hot=true&minify=false",
"module": "<unknown module>",
"in_app": false,
"lineno": 19627,
"colno": 25,
"filename": "/index.android.bundle"
},
{
"function": "Object.handleTopLevel",
"abs_path": "http://localhost:8081/index.android.bundle?platform=android&dev=true&hot=true&minify=false",
"module": "<unknown module>",
"in_app": false,
"lineno": 20727,
"colno": 1,
"filename": "/index.android.bundle"
},
{
"function": "runEventQueueInBatch",
"abs_path": "http://localhost:8081/index.android.bundle?platform=android&dev=true&hot=true&minify=false",
"module": "<unknown module>",
"in_app": false,
"lineno": 20716,
"colno": 16,
"filename": "/index.android.bundle"
},
{
"function": "Object.processEventQueue",
"abs_path": "http://localhost:8081/index.android.bundle?platform=android&dev=true&hot=true&minify=false",
"module": "<unknown module>",
"in_app": false,
"lineno": 20025,
"colno": 1,
"filename": "/index.android.bundle"
},
{
"function": "forEachAccumulated",
"abs_path": "http://localhost:8081/index.android.bundle?platform=android&dev=true&hot=true&minify=false",
"module": "<unknown module>",
"in_app": false,
"lineno": 20690,
"colno": 5,
"filename": "/index.android.bundle"
},
{
"function": "executeDispatchesAndReleaseTopLevel",
"abs_path": "http://localhost:8081/index.android.bundle?platform=android&dev=true&hot=true&minify=false",
"module": "<unknown module>",
"in_app": false,
"lineno": 19849,
"colno": 8,
"filename": "/index.android.bundle"
},
{
"function": "executeDispatchesAndRelease",
"abs_path": "http://localhost:8081/index.android.bundle?platform=android&dev=true&hot=true&minify=false",
"module": "<unknown module>",
"in_app": false,
"lineno": 19838,
"colno": 18,
"filename": "/index.android.bundle"
},
{
"function": "Object.executeDispatchesInOrder",
"abs_path": "http://localhost:8081/index.android.bundle?platform=android&dev=true&hot=true&minify=false",
"module": "<unknown module>",
"in_app": false,
"lineno": 20408,
"colno": 1,
"filename": "/index.android.bundle"
},
{
"function": "executeDispatch",
"abs_path": "http://localhost:8081/index.android.bundle?platform=android&dev=true&hot=true&minify=false",
"module": "<unknown module>",
"in_app": false,
"lineno": 20385,
"colno": 17,
"filename": "/index.android.bundle"
},
{
"function": "Object.invokeGuardedCallback",
"abs_path": "http://localhost:8081/index.android.bundle?platform=android&dev=true&hot=true&minify=false",
"module": "<unknown module>",
"in_app": false,
"lineno": 20553,
"colno": 8,
"filename": "/index.android.bundle"
},
{
"function": "Constructor.proxiedMethod [as touchableHandleResponderRelease]",
"abs_path": "http://localhost:8081/index.android.bundle?platform=android&dev=true&hot=true&minify=false",
"module": "<unknown module>",
"in_app": false,
"lineno": 9068,
"colno": 22,
"filename": "/index.android.bundle"
},
{
"function": "Constructor.touchableHandleResponderRelease",
"abs_path": "http://localhost:8081/index.android.bundle?platform=android&dev=true&hot=true&minify=false",
"module": "<unknown module>",
"in_app": false,
"lineno": 26566,
"colno": 6,
"filename": "/index.android.bundle"
},
{
"function": "Constructor.proxiedMethod [as _receiveSignal]",
"abs_path": "http://localhost:8081/index.android.bundle?platform=android&dev=true&hot=true&minify=false",
"module": "<unknown module>",
"in_app": false,
"lineno": 9068,
"colno": 22,
"filename": "/index.android.bundle"
},
{
"function": "Constructor._receiveSignal",
"abs_path": "http://localhost:8081/index.android.bundle?platform=android&dev=true&hot=true&minify=false",
"module": "<unknown module>",
"in_app": false,
"lineno": 26792,
"colno": 6,
"filename": "/index.android.bundle"
},
{
"function": "Constructor.proxiedMethod [as _performSideEffectsForTransition]",
"abs_path": "http://localhost:8081/index.android.bundle?platform=android&dev=true&hot=true&minify=false",
"module": "<unknown module>",
"in_app": false,
"lineno": 9068,
"colno": 22,
"filename": "/index.android.bundle"
},
{
"function": "Constructor._performSideEffectsForTransition",
"abs_path": "http://localhost:8081/index.android.bundle?platform=android&dev=true&hot=true&minify=false",
"module": "<unknown module>",
"in_app": false,
"lineno": 26876,
"colno": 6,
"filename": "/index.android.bundle"
},
{
"function": "Constructor.proxiedMethod [as touchableHandlePress]",
"abs_path": "http://localhost:8081/index.android.bundle?platform=android&dev=true&hot=true&minify=false",
"module": "<unknown module>",
"in_app": false,
"lineno": 9068,
"colno": 22,
"filename": "/index.android.bundle"
},
{
"function": "Constructor.touchableHandlePress",
"abs_path": "http://localhost:8081/index.android.bundle?platform=android&dev=true&hot=true&minify=false",
"module": "<unknown module>",
"in_app": false,
"lineno": 58914,
"colno": 32,
"filename": "/index.android.bundle"
},
{
"function": "Object.onPress",
"abs_path": "http://localhost:8081/index.android.bundle?platform=android&dev=true&hot=true&minify=false",
"module": "<unknown module>",
"in_app": false,
"lineno": 123937,
"colno": 100,
"filename": "/index.android.bundle"
}
],
"frames_omitted": null
},
"mechanism": null,
"type": "TypeError",
"module": null,
"thread_id": null,
"value": "a is not a function",
"raw_stacktrace": null
}
About this issue
- Original URL
- State: closed
- Created 8 years ago
- Reactions: 1
- Comments: 33 (9 by maintainers)
Commits related to this issue
- adding react native stacktrace fix https://github.com/getsentry/raven-js/issues/731#issuecomment-270689214 — committed to orlando/raven-js by orlando 7 years ago
- Fix RN frames on Android ... 1. Don't treat presence of "native" string everywhere as meaning "native code" 2. Properly parse when not protocol / only leading forward slash fixes #731 — committed to getsentry/sentry-javascript by benvinegar 7 years ago
- Fix RN frames on Android ... (#875) 1. Don't treat presence of "native" string everywhere as meaning "native code" 2. Properly parse when not protocol / only leading forward slash fixes #731 — committed to getsentry/sentry-javascript by benvinegar 7 years ago
- Fixing issue where callstack is not showing up in react native. I am using denstepa's solution: https://github.com/getsentry/raven-js/issues/731 — committed to Nextdoor/raven-js by deleted user 7 years ago
Hey everyone here – I would love to take this fix upstream, but I need:
Can someone help?
@benvinegar the problem is still there 😦
We faced the same issue, and this fix https://github.com/denstepa/raven-js/commit/885f0a1c88401975aa062f2d71a7dbc7462eda94 helped us to get stacktraces and source maps working for android in production mode. The problem was with path to file that was
index.android.bundle, withoutfile:///in the beginning as it was for iOSI will try to check if it could causes problems in other browsers etc and will do pull request a bit later
@benvinegar The fix added in 3.14.0 release doesn’t seem to work.
I’m sorry if it’s because of the stacktrace I posted before (which was most probably not obtained correctly).
Here are two raw stacktraces straight from logcat. I hope they will be more useful in resolving the issue (@denstepa’s fork still seems to be working fine). I’m using react native v0.42.3
RN_str_1.txt RN_str_2.txt
@benvinegar +1. I have this on Android.
For iOS it’s okey:
@benvinegar I also confirm that the fix is working for me
@vehas how did you work around this? got the same issue on my LG G3
This has been fixed and will be in the next release.
I can confirm what @alexkring says. Using the Nextdoor/raven-js fork I actually get a stacktrace instead of the
[native code]. Also the first row of the callstack indeed seems to be off.I am still facing the issue. Would like to check on the status of this.
Using: raven-js: 3.15.0 react-native: 0.42.3
Would be glad to give any additional info required.
Thanks 😃
@benvinegar yes, I used #875 and it still didn’t work
@benvinegar I have an android app which also has this issue. I’m happy to provide the dump/printed if you could guide me how to get it?
@benvinegar I don’t think it because of React Native on Android, in fact I managed to get the log of a crash on production Android app. It looks like this
I think above log is okay because I tried the same crash on iOS production build and here is the iOS crash log