mirror of
https://github.com/GopeedLab/gopeed.git
synced 2026-11-04 07:45:30 +00:00
35 lines
842 B
Dart
35 lines
842 B
Dart
import 'dart:io';
|
|
import 'package:flutter/foundation.dart';
|
|
import 'package:logger/logger.dart';
|
|
import 'package:path/path.dart' as path;
|
|
import 'util.dart';
|
|
|
|
late final Logger logger;
|
|
|
|
void initLogger() {
|
|
// if is debug mode, don't log to file
|
|
logger = Logger(
|
|
filter: ProductionFilter(),
|
|
printer: SimplePrinter(printTime: true, colors: false),
|
|
output: _buildOutput(),
|
|
);
|
|
}
|
|
|
|
String logsDir() {
|
|
return path.join(Util.getStorageDir(), 'logs');
|
|
}
|
|
|
|
Directory ensureLogDirectory(String logDirPath) {
|
|
return Directory(logDirPath)..createSync(recursive: true);
|
|
}
|
|
|
|
LogOutput? _buildOutput() {
|
|
// if is debug mode, don't log to file
|
|
if (!kDebugMode && Util.isDesktop()) {
|
|
final logDirPath = logsDir();
|
|
ensureLogDirectory(logDirPath);
|
|
return FileOutput(file: File('$logDirPath/client.log'));
|
|
}
|
|
return null;
|
|
}
|