output method

  1. @override
void output(
  1. LogEvent event
)
override

Called when a log event should be output.

Implementation

@override
void output(LogEvent event) {
  final levelStr = event.level.name.toUpperCase();

  String timestamp = '';
  if (showTime) {
    if (detailedTime) {
      timestamp = '${event.timestamp.toIso8601String()} ';
    } else {
      final hour = event.timestamp.hour.toString().padLeft(2, '0');
      final minute = event.timestamp.minute.toString().padLeft(2, '0');
      timestamp = '$hour:$minute ';
    }
  }

  String message;
  if (useColors) {
    final coloredLevel = LogColor.colorizeLevel(event.level, '[$levelStr]');
    message = '$timestamp$coloredLevel ${event.message}';
  } else {
    message = '$timestamp[$levelStr] ${event.message}';
  }

  if (event.error != null) {
    message += '\nError: ${event.error}';
  }
  if (event.stackTrace != null) {
    message += '\n${event.stackTrace}';
  }

  // ignore: avoid_print
  print(message);
}