ReportingInterceptor class
Dio interceptor that logs network errors with severity-based filtering.
Classifies each error as actionable or non-actionable and logs accordingly, keeping error-tracking noise low while surfacing real issues.
Non-actionable (expected) errors — cancelled requests, 401/403/404/409/422 — are logged as warnings with request context only. Actionable errors — connectivity failures, timeouts, cert pinning failures, and unmapped exceptions — are logged as errors for Sentry escalation.
Must sit after AppExceptionMappingInterceptor in the chain so that
err.error is already a typed AppException.
- Inheritance
-
- Object
- Interceptor
- ReportingInterceptor
Constructors
- ReportingInterceptor(AppLogger _logger)
- Creates a reporting interceptor with the given AppLogger.
Properties
- hashCode → int
-
The hash code for this object.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
onError(
DioException err, ErrorInterceptorHandler handler) → void -
Called when an exception was occurred during the request.
override
-
onRequest(
RequestOptions options, RequestInterceptorHandler handler) → void -
Called when the request is about to be sent.
inherited
-
onResponse(
Response response, ResponseInterceptorHandler handler) → void -
Called when the response is about to be resolved.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited