Skip to content

Commit e9bf9bd

Browse files
committed
simple replace for stack trace string
1 parent 4d1ac36 commit e9bf9bd

File tree

4 files changed

+57
-102
lines changed

4 files changed

+57
-102
lines changed

dart/lib/src/sentry_exception_factory.dart

+5-2
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ import 'protocol.dart';
33
import 'sentry_options.dart';
44
import 'sentry_stack_trace_factory.dart';
55
import 'throwable_mechanism.dart';
6-
import 'utils/stack_trace_utils.dart';
76

87
/// class to convert Dart Error and exception to SentryException
98
class SentryExceptionFactory {
@@ -58,11 +57,15 @@ class SentryExceptionFactory {
5857
}
5958
}
6059

60+
final exceptionString = exception.toString();
61+
final stackTraceString = stackTrace.toString();
62+
final value = exceptionString.replaceAll(stackTraceString, '').trim();
63+
6164
// if --obfuscate feature is enabled, 'type' won't be human readable.
6265
// https://flutter.dev/docs/deployment/obfuscate#caveat
6366
return SentryException(
6467
type: (throwable.runtimeType).toString(),
65-
value: StackTraceUtils.removeStackStraceLines(throwable.toString()),
68+
value: value,
6669
mechanism: mechanism,
6770
stackTrace: sentryStackTrace,
6871
throwable: throwable,

dart/lib/src/utils/stack_trace_utils.dart

-22
This file was deleted.

dart/test/sentry_exception_factory_test.dart

+52-10
Original file line numberDiff line numberDiff line change
@@ -172,11 +172,10 @@ void main() {
172172

173173
test('should not assigns stackTrace string to value', () {
174174
final stackTraceError = StackTraceError();
175-
final sentryException =
176-
fixture.getSut().getSentryException(stackTraceError);
177-
final expected = '''
178-
StackTraceError()
179-
Some random description''';
175+
final sentryException = fixture.getSut().getSentryException(stackTraceError,
176+
stackTrace: StackTraceErrorStackTrace());
177+
final expected =
178+
"NetworkError(type: NetworkErrorType.unknown, error: Instance of 'iH')";
180179

181180
expect(sentryException.value, expected);
182181
});
@@ -202,12 +201,55 @@ class StackTraceError extends Error {
202201
@override
203202
String toString() {
204203
return '''
205-
StackTraceError()
206-
Some random description
204+
NetworkError(type: NetworkErrorType.unknown, error: Instance of 'iH')
205+
206+
pid: 9437, tid: 10069, name 1.ui
207+
os: android arch: arm64 comp: yes sim: no
208+
build_id: 'bca64abfdfcc84d231bb8f1ccdbfbd8d'
209+
isolate_dso_base: 752602b000, vm_dso_base: 752602b000
210+
isolate_instructions: 7526344980, vm_instructions: 752633f000
211+
#00 abs 00000075266c2fbf virt 0000000000697fbf _kDartIsolateSnapshotInstructions+0x37e63f
212+
#1 abs 000000752685211f virt 000000000082711f _kDartIsolateSnapshotInstructions+0x50d79f
213+
#2 abs 0000007526851cb3 virt 0000000000826cb3 _kDartIsolateSnapshotInstructions+0x50d333
214+
#3 abs 0000007526851c63 virt 0000000000826c63 _kDartIsolateSnapshotInstructions+0x50d2e3
215+
#4 abs 0000007526851bf3 virt 0000000000826bf3 _kDartIsolateSnapshotInstructions+0x50d273
216+
#5 abs 0000007526a0b44b virt 00000000009e044b _kDartIsolateSnapshotInstructions+0x6c6acb
217+
#6 abs 0000007526a068a7 virt 00000000009db8a7 _kDartIsolateSnapshotInstructions+0x6c1f27
218+
#7 abs 0000007526b57a2b virt 0000000000b2ca2b _kDartIsolateSnapshotInstructions+0x8130ab
219+
#8 abs 0000007526b5d93b virt 0000000000b3293b _kDartIsolateSnapshotInstructions+0x818fbb
220+
#9 abs 0000007526a2333b virt 00000000009f833b _kDartIsolateSnapshotInstructions+0x6de9bb
221+
#10 abs 0000007526937957 virt 000000000090c957 _kDartIsolateSnapshotInstructions+0x5f2fd7
222+
#11 abs 0000007526a243a3 virt 00000000009f93a3 _kDartIsolateSnapshotInstructions+0x6dfa23
223+
#12 abs 000000752636273b virt 000000000033773b _kDartIsolateSnapshotInstructions+0x1ddbb
224+
#13 abs 0000007526a36ac3 virt 0000000000a0bac3 _kDartIsolateSnapshotInstructions+0x6f2143
225+
#14 abs 00000075263626af virt 00000000003376af _kDartIsolateSnapshotInstructions+0x1dd2f''';
226+
}
227+
}
207228

208-
#0 baz (file:///pathto/test.dart:50:3)
209-
<asynchronous suspension>
210-
#1 bar (file:///pathto/test.dart:46:9)''';
229+
class StackTraceErrorStackTrace extends StackTrace {
230+
@override
231+
String toString() {
232+
return '''
233+
pid: 9437, tid: 10069, name 1.ui
234+
os: android arch: arm64 comp: yes sim: no
235+
build_id: 'bca64abfdfcc84d231bb8f1ccdbfbd8d'
236+
isolate_dso_base: 752602b000, vm_dso_base: 752602b000
237+
isolate_instructions: 7526344980, vm_instructions: 752633f000
238+
#00 abs 00000075266c2fbf virt 0000000000697fbf _kDartIsolateSnapshotInstructions+0x37e63f
239+
#1 abs 000000752685211f virt 000000000082711f _kDartIsolateSnapshotInstructions+0x50d79f
240+
#2 abs 0000007526851cb3 virt 0000000000826cb3 _kDartIsolateSnapshotInstructions+0x50d333
241+
#3 abs 0000007526851c63 virt 0000000000826c63 _kDartIsolateSnapshotInstructions+0x50d2e3
242+
#4 abs 0000007526851bf3 virt 0000000000826bf3 _kDartIsolateSnapshotInstructions+0x50d273
243+
#5 abs 0000007526a0b44b virt 00000000009e044b _kDartIsolateSnapshotInstructions+0x6c6acb
244+
#6 abs 0000007526a068a7 virt 00000000009db8a7 _kDartIsolateSnapshotInstructions+0x6c1f27
245+
#7 abs 0000007526b57a2b virt 0000000000b2ca2b _kDartIsolateSnapshotInstructions+0x8130ab
246+
#8 abs 0000007526b5d93b virt 0000000000b3293b _kDartIsolateSnapshotInstructions+0x818fbb
247+
#9 abs 0000007526a2333b virt 00000000009f833b _kDartIsolateSnapshotInstructions+0x6de9bb
248+
#10 abs 0000007526937957 virt 000000000090c957 _kDartIsolateSnapshotInstructions+0x5f2fd7
249+
#11 abs 0000007526a243a3 virt 00000000009f93a3 _kDartIsolateSnapshotInstructions+0x6dfa23
250+
#12 abs 000000752636273b virt 000000000033773b _kDartIsolateSnapshotInstructions+0x1ddbb
251+
#13 abs 0000007526a36ac3 virt 0000000000a0bac3 _kDartIsolateSnapshotInstructions+0x6f2143
252+
#14 abs 00000075263626af virt 00000000003376af _kDartIsolateSnapshotInstructions+0x1dd2f''';
211253
}
212254
}
213255

dart/test/utils/stack_trace_utils_test.dart

-68
This file was deleted.

0 commit comments

Comments
 (0)