logDioError static method
Logs a Dio error
Implementation
static Future<void> logDioError(DioException error) async {
final response = error.response;
final request = error.requestOptions;
final timestamp = DateTime.now().toIso8601String();
debugLog('------ Dio Error ------', level: LogLevel.error);
debugLog('Timestamp: $timestamp', level: LogLevel.error);
debugLog('Error: $error', level: LogLevel.error);
debugLog(
'Message: ${error.message ?? 'No message available'}',
level: LogLevel.error,
);
// Request info
debugLog('Request URL: ${request.baseUrl}', level: LogLevel.error);
debugLog('Request Path: ${request.path}', level: LogLevel.error);
debugLog(
'Request Query: ${request.queryParameters.isNotEmpty ? request.queryParameters : 'None'}',
level: LogLevel.error,
);
debugLog('Request Headers: ${request.headers}', level: LogLevel.error);
debugLog('Request Data: ${request.data ?? 'None'}', level: LogLevel.error);
// Response info
if (response != null) {
debugLog(
'Response Status: ${response.statusCode ?? 'N/A'}',
level: LogLevel.error,
);
debugLog(
'Response Status Message: ${response.statusMessage ?? 'N/A'}',
level: LogLevel.error,
);
debugLog(
'Response Data: ${response.data ?? 'N/A'}',
level: LogLevel.error,
);
debugLog(
'Response Headers: ${response.headers.map}',
level: LogLevel.error,
);
} else {
debugLog('No response available', level: LogLevel.error);
}
debugLog('------ End Dio Error ------', level: LogLevel.error);
}