Skip to content

Commit 134c9f8

Browse files
authored
Add missing SDK integrations (#1145)
1 parent 6d7a391 commit 134c9f8

File tree

8 files changed

+29
-7
lines changed

8 files changed

+29
-7
lines changed

dart/lib/src/http_client/failed_request_client.dart

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,11 @@ class FailedRequestClient extends BaseClient {
7272
Client? client,
7373
Hub? hub,
7474
}) : _hub = hub ?? HubAdapter(),
75-
_client = client ?? Client();
75+
_client = client ?? Client() {
76+
if (captureFailedRequests) {
77+
_hub.options.sdk.addIntegration('HTTPClientError');
78+
}
79+
}
7680

7781
final Client _client;
7882
final Hub _hub;

dart/lib/src/http_client/sentry_http_client.dart

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -101,6 +101,7 @@ class SentryHttpClient extends BaseClient {
101101

102102
if (networkTracing) {
103103
innerClient = TracingClient(client: innerClient, hub: _hub);
104+
_hub.options.sdk.addIntegration('HTTPNetworkTracing');
104105
}
105106

106107
// The ordering here matters.

dart/lib/src/protocol/sdk_version.dart

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -94,8 +94,11 @@ class SdkVersion {
9494
_packages.add(package);
9595
}
9696

97-
// Adds an integration
97+
// Adds an integration if not already added
9898
void addIntegration(String integration) {
99+
if (_integrations.contains(integration)) {
100+
return;
101+
}
99102
_integrations.add(integration);
100103
}
101104

dio/lib/src/sentry_dio_client_adapter.dart

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,8 @@ class SentryDioClientAdapter extends HttpClientAdapter {
3434

3535
if (networkTracing) {
3636
innerClient = TracingClientAdapter(client: innerClient, hub: _hub);
37+
// ignore: invalid_use_of_internal_member
38+
_hub.options.sdk.addIntegration('DioNetworkTracing');
3739
}
3840

3941
// The ordering here matters.

dio/lib/src/sentry_dio_extension.dart

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,8 @@ extension SentryDioExtension on Dio {
4040
// Add FailedRequestInterceptor at index 0, so it's the first interceptor.
4141
// This ensures that it is called and not skipped by any previous interceptor.
4242
interceptors.insert(0, FailedRequestInterceptor());
43+
// ignore: invalid_use_of_internal_member
44+
hub.options.sdk.addIntegration('DioHTTPClientError');
4345
}
4446

4547
// intercept http requests

flutter/lib/src/integrations/load_contexts_integration.dart

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -159,9 +159,7 @@ class _LoadContextsIntegrationEventProcessor extends EventProcessor {
159159
final sdk = event.sdk ?? _options.sdk;
160160

161161
for (final integration in integrations) {
162-
if (!sdk.integrations.contains(integration)) {
163-
sdk.addIntegration(integration);
164-
}
162+
sdk.addIntegration(integration);
165163
}
166164

167165
event = event.copyWith(sdk: sdk);

flutter/lib/src/navigation/sentry_navigator_observer.dart

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,12 @@ class SentryNavigatorObserver extends RouteObserver<PageRoute<dynamic>> {
6868
_setRouteNameAsTransaction = setRouteNameAsTransaction,
6969
_routeNameExtractor = routeNameExtractor,
7070
_additionalInfoProvider = additionalInfoProvider,
71-
_native = SentryNative();
71+
_native = SentryNative() {
72+
if (enableAutoTransactions) {
73+
// ignore: invalid_use_of_internal_member
74+
_hub.options.sdk.addIntegration('UINavigationTracing');
75+
}
76+
}
7277

7378
final Hub _hub;
7479
final bool _enableAutoTransactions;

flutter/lib/src/sentry_asset_bundle.dart

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,14 @@ class SentryAssetBundle implements AssetBundle {
4141
bool enableStructuredDataTracing = false,
4242
}) : _hub = hub ?? HubAdapter(),
4343
_bundle = bundle ?? rootBundle,
44-
_enableStructuredDataTracing = enableStructuredDataTracing;
44+
_enableStructuredDataTracing = enableStructuredDataTracing {
45+
// ignore: invalid_use_of_internal_member
46+
_hub.options.sdk.addIntegration('AssetBundleTracing');
47+
if (_enableStructuredDataTracing) {
48+
// ignore: invalid_use_of_internal_member
49+
_hub.options.sdk.addIntegration('StructuredDataTracing');
50+
}
51+
}
4552

4653
final Hub _hub;
4754
final AssetBundle _bundle;

0 commit comments

Comments
 (0)