formatNetworkLog static method
Format network log for sharing
Implementation
static String formatNetworkLog(Map<String, dynamic> log) {
final buffer = StringBuffer();
buffer.writeln('═══════════════════════════════════════');
buffer.writeln('📡 NETWORK REQUEST LOG');
buffer.writeln('═══════════════════════════════════════');
buffer.writeln();
buffer.writeln('🔗 URL: ${log['url'] ?? 'N/A'}');
buffer.writeln('📋 Method: ${log['method'] ?? 'N/A'}');
buffer.writeln('📊 Status: ${log['statusCode'] ?? 'N/A'}');
buffer.writeln('⏱️ Duration: ${log['duration'] ?? 'N/A'}ms');
buffer.writeln('📅 Time: ${log['timestamp'] ?? 'N/A'}');
buffer.writeln();
if (log['requestHeaders'] != null) {
buffer.writeln('📤 REQUEST HEADERS:');
buffer.writeln(_formatJson(log['requestHeaders']));
buffer.writeln();
}
if (log['requestBody'] != null) {
buffer.writeln('📤 REQUEST BODY:');
buffer.writeln(_formatJson(log['requestBody']));
buffer.writeln();
}
if (log['responseHeaders'] != null) {
buffer.writeln('📥 RESPONSE HEADERS:');
buffer.writeln(_formatJson(log['responseHeaders']));
buffer.writeln();
}
if (log['responseBody'] != null) {
buffer.writeln('📥 RESPONSE BODY:');
buffer.writeln(_formatJson(log['responseBody']));
buffer.writeln();
}
if (log['error'] != null) {
buffer.writeln('❌ ERROR:');
buffer.writeln(log['error']);
buffer.writeln();
}
buffer.writeln('═══════════════════════════════════════');
return buffer.toString();
}