FloggerRecord.fromLogger constructor

FloggerRecord.fromLogger(
  1. LogRecord record,
  2. FloggerConfig config
)

Create a FloggerRecord from a LogRecord

Implementation

factory FloggerRecord.fromLogger(
  LogRecord record,
  FloggerConfig config,
) {
  // Get ClassName and MethodName
  final classAndMethodNames = _getClassAndMethodNames(_getLogFrame()!);
  String? className = classAndMethodNames.key;
  String? methodName = classAndMethodNames.value;
  // Get stacktrace from record stackTrace or record object
  StackTrace? stackTrace = record.stackTrace;
  if (record.stackTrace == null && record.object is Error)
    stackTrace = (record.object as Error).stackTrace;
  // Get message
  var message = record.message;
  // Maybe add object
  if (record.object != null) message += " - ${record.object}";
  // Build Flogger record
  return FloggerRecord._(
    record,
    config,
    record.loggerName,
    message,
    record.level,
    record.time,
    stackTrace,
    className,
    methodName,
  );
}