getLogger method

LoggerBase getLogger(
  1. String name, {
  2. LogLevel? minimumLevel,
  3. bool? enableConsoleLogging,
  4. bool? enableFileLogging,
  5. bool? enableDeveloperLogging,
  6. bool? enableColorOutput,
})

Get or create a logger with the specified name

Implementation

LoggerBase getLogger(
  String name, {
  LogLevel? minimumLevel,
  bool? enableConsoleLogging,
  bool? enableFileLogging,
  bool? enableDeveloperLogging,
  bool? enableColorOutput,
}) {
  if (_loggers.containsKey(name)) {
    return _loggers[name]!;
  }

  final logger = LoggerBase(
    name: name,
    minimumLevel: minimumLevel ?? _globalMinimumLevel,
  );

  // Add default sinks based on configuration (use provided or global settings)
  _configureDefaultSinks(
    logger,
    enableConsoleLogging: enableConsoleLogging ?? _globalEnableConsoleLogging,
    enableFileLogging: enableFileLogging ?? _globalEnableFileLogging,
    enableDeveloperLogging:
        enableDeveloperLogging ?? _globalEnableDeveloperLogging,
    enableColorOutput: enableColorOutput ?? _globalEnableColorOutput,
  );

  // Add global filters
  logger.addFilter(LevelFilter(_globalMinimumLevel));

  _loggers[name] = logger;
  return logger;
}