| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293 |
- import 'package:logger/logger.dart' as logger_package;
- /// 日志工具类
- class AppLogger {
- static logger_package.Logger? _logger;
- /// 初始化日志(可选配置)
- static void init({
- logger_package.Level level = logger_package.Level.debug,
- bool enableFileOutput = false,
- }) {
- _logger = logger_package.Logger(
- level: level,
- printer: logger_package.PrettyPrinter(
- methodCount: 2,
- errorMethodCount: 8,
- lineLength: 120,
- colors: true,
- printEmojis: true,
- printTime: true,
- ),
- );
- }
- static logger_package.Logger get _instance {
- _logger ??= logger_package.Logger(
- level: logger_package.Level.debug, // 设置日志级别为 debug,确保所有日志都能输出
- printer: logger_package.PrettyPrinter(
- methodCount: 2,
- errorMethodCount: 8,
- lineLength: 120,
- colors: true,
- printEmojis: true,
- printTime: true,
- ),
- );
- return _logger!;
- }
- // ==================== 日志级别 ====================
- /// Debug 日志
- static void d(dynamic message, [dynamic error, StackTrace? stackTrace]) {
- _instance.d(message, error: error, stackTrace: stackTrace);
- }
- /// Info 日志
- static void i(dynamic message, [dynamic error, StackTrace? stackTrace]) {
- _instance.i(message, error: error, stackTrace: stackTrace);
- }
- /// Warning 日志
- static void w(dynamic message, [dynamic error, StackTrace? stackTrace]) {
- _instance.w(message, error: error, stackTrace: stackTrace);
- }
- /// Error 日志
- static void e(dynamic message, [dynamic error, StackTrace? stackTrace]) {
- _instance.e(message, error: error, stackTrace: stackTrace);
- }
- /// Fatal 日志
- static void f(dynamic message, [dynamic error, StackTrace? stackTrace]) {
- _instance.f(message, error: error, stackTrace: stackTrace);
- }
- // ==================== 便捷方法 ====================
- /// 记录 API 请求
- static void logRequest(String method, String url, {Map<String, dynamic>? headers, dynamic body}) {
- d('📤 Request: $method $url');
- if (headers != null) d('Headers: $headers');
- if (body != null) d('Body: $body');
- }
- /// 记录 API 响应
- static void logResponse(int statusCode, String url, {dynamic data}) {
- d('📥 Response: $statusCode $url');
- if (data != null) d('Data: $data');
- }
- /// 记录错误
- static void logError(String message, {dynamic error, StackTrace? stackTrace}) {
- e('❌ Error: $message', error, stackTrace);
- }
- /// 记录用户操作
- static void logUserAction(String action, {Map<String, dynamic>? params}) {
- i('👤 User Action: $action');
- if (params != null) i('Params: $params');
- }
- }
|