export method

String export()

Formats the entire buffer as a single string suitable for writing to a text file attachment.

Each line has the format: {timestamp} [{level}] {tag}: {message} when level/tag are present, or {timestamp} {message} for entries without metadata.

Implementation

String export() {
  final buf = StringBuffer();
  for (final entry in _entries) {
    final prefix = StringBuffer();
    if (entry.level != null) {
      prefix.write('[${entry.level}]');
    }
    if (entry.tag != null) {
      if (prefix.isNotEmpty) prefix.write(' ');
      prefix.write('${entry.tag}:');
    }
    if (prefix.isNotEmpty) {
      buf.writeln(
        '${entry.timestamp.toIso8601String()}  $prefix ${entry.message}',
      );
    } else {
      buf.writeln('${entry.timestamp.toIso8601String()}  ${entry.message}');
    }
  }
  return buf.toString();
}