2
0
mirror of https://github.com/inventree/inventree-app.git synced 2025-04-28 05:26:47 +00:00

Report unhandled errors to sentry

This commit is contained in:
Oliver 2021-07-13 08:08:58 +10:00
parent 374a387355
commit 01e0dd5dce
3 changed files with 32 additions and 9 deletions

View File

@ -2,6 +2,7 @@ import 'dart:async';
import 'dart:convert';
import 'dart:io';
import 'package:InvenTree/inventree/sentry.dart';
import 'package:InvenTree/user_profile.dart';
import 'package:InvenTree/widget/snacks.dart';
import 'package:flutter/cupertino.dart';
@ -11,6 +12,7 @@ import 'package:font_awesome_flutter/font_awesome_flutter.dart';
import 'package:flutter_cache_manager/flutter_cache_manager.dart';
import 'package:InvenTree/widget/dialogs.dart';
import 'package:InvenTree/l10.dart';
import 'package:InvenTree/inventree/sentry.dart';
import 'package:http/http.dart' as http;
import 'package:one_context/one_context.dart';
@ -445,7 +447,7 @@ class InvenTreeAPI {
// Open a connection to the server
HttpClientRequest request = await client.patchUrl(uri)
.timeout(Duration(seconds: 10))
.catchError((error) {
.catchError((error, stackTrace) {
print("PATCH request return error");
print("URL: ${uri}");
print("Error: ${error.toString()}");
@ -464,6 +466,8 @@ class InvenTreeAPI {
L10().serverError,
error.toString()
);
sentryReportError(error, stackTrace);
}
return null;
@ -486,7 +490,7 @@ class InvenTreeAPI {
HttpClientResponse response = await request.close()
.timeout(Duration(seconds: 30))
.catchError((error) {
.catchError((error, stackTrace) {
print("PATCH request returned error");
print("URL: ${_url}");
print("Error: ${error.toString()}");
@ -505,6 +509,8 @@ class InvenTreeAPI {
L10().serverError,
error.toString()
);
sentryReportError(error, stackTrace);
}
return null;
@ -574,7 +580,7 @@ class InvenTreeAPI {
// Open a connection to the server
HttpClientRequest request = await client.postUrl(uri)
.timeout(Duration(seconds: 10))
.catchError((error) {
.catchError((error, stackTrace) {
print("POST request returned error");
print("URL: ${uri}");
print("Error: ${error.toString()}");
@ -593,6 +599,8 @@ class InvenTreeAPI {
L10().serverError,
error.toString()
);
sentryReportError(error, stackTrace);
}
return null;
@ -612,7 +620,7 @@ class InvenTreeAPI {
HttpClientResponse response = await request.close()
.timeout(Duration(seconds: 30))
.catchError((error) {
.catchError((error, stackTrace) {
print("POST request returned error");
print("URL: ${_url}");
print("Error: ${error.toString()}");
@ -631,6 +639,8 @@ class InvenTreeAPI {
L10().serverError,
error.toString()
);
sentryReportError(error, stackTrace);
}
return null;
@ -729,7 +739,7 @@ class InvenTreeAPI {
// Open a connection
request = await client.getUrl(uri)
.timeout(Duration(seconds: 10))
.catchError((error) {
.catchError((error, stackTrace) {
print("GET request returned error");
print("URL: ${uri}");
print("Error: ${error.toString()}");
@ -748,11 +758,13 @@ class InvenTreeAPI {
L10().serverError,
error.toString()
);
sentryReportError(error, stackTrace);
}
return null;
});
} catch (error) {
} catch (error, stackTrace) {
if (error is FormatException) {
showServerError(
L10().invalidHost,
@ -768,6 +780,9 @@ class InvenTreeAPI {
L10().serverError,
error.toString()
);
// Report to sentry
sentryReportError(error, stackTrace);
}
return null;
@ -783,7 +798,7 @@ class InvenTreeAPI {
HttpClientResponse response = await request.close()
.timeout(Duration(seconds: 10))
.catchError((error) {
.catchError((error, stackTrace) {
print("GET request returned error");
print("URL: ${_url}");
print("Error: ${error.toString()}");
@ -802,6 +817,8 @@ class InvenTreeAPI {
L10().serverError,
error.toString()
);
sentryReportError(error, stackTrace);
}
return null;

View File

@ -2,6 +2,7 @@
import 'package:InvenTree/api.dart';
import 'package:InvenTree/app_settings.dart';
import 'package:InvenTree/inventree/part.dart';
import 'package:InvenTree/inventree/sentry.dart';
import 'package:InvenTree/widget/progress.dart';
import 'package:InvenTree/l10.dart';
@ -437,9 +438,11 @@ class _PaginatedPartListState extends State<PaginatedPartList> {
resultCount = pageCount;
});
} catch (error) {
} catch (error, stackTrace) {
print("Error! - ${error.toString()}");
_pagingController.error = error;
sentryReportError(error, stackTrace);
}
}

View File

@ -1,6 +1,7 @@
import 'package:InvenTree/api.dart';
import 'package:InvenTree/app_settings.dart';
import 'package:InvenTree/barcode.dart';
import 'package:InvenTree/inventree/sentry.dart';
import 'package:InvenTree/inventree/stock.dart';
import 'package:InvenTree/widget/progress.dart';
@ -497,8 +498,10 @@ class _PaginatedStockListState extends State<PaginatedStockList> {
resultCount = pageCount;
});
} catch (error) {
} catch (error, stackTrace) {
_pagingController.error = error;
sentryReportError(error, stackTrace);
}
}