[Flutter] 플러터 Logger 클래스 사용방법

2023-11-15


사진:  Unsplash 의 Mert Atakan


1. 방법

 

pubspec.yaml 에 우선 아래와 같이 logger 패키지를 선언해 주고 저장해 주면 vscode가 알아서 필요한 정보를 가져온다.

 

dependencies:
  flutter:
    sdk: flutter
. . .
  logger: ^2.0.2+1

이후 main.dart 와 같은 곳에 아래와 같이 선언한다.

 

Future<void> main() async {
 . . .
  runApp(const MyApp());
}

var log = Logger(
  printer: PrettyPrinter(),
);

아래와 같은 방식 처럼 사용하면 된다. 문자열 메시지 대신 List, Map 또는 Set과 같은 다른 개체를 전달할 수도 있다.

 

    if (user != null) {
      log.i('현재 로그인 유저 : ${user.email}');
    } else {
      log.i('현재 사용자는 없습니다.');
    }

 

그럼 아래와 같은 형식으로 로그가 출력되는 것을 확인할 수 있다.

 


로그 레벨은 총 6가지가 있으며, 아래와 같다.

logger.t("Trace log");

logger.d("Debug log");

logger.i("Info log");

logger.w("Warning log");

logger.e("Error log", error: 'Test Error');

logger.f("What a fatal log", error: error, stackTrace: stackTrace);

 

출력하면 아래와 같은 형태가 된다.

 


위의 예제와 같이 PrettyPrinter 를 사용한다면, 아래와 같은 여러 옵션값을 줄 수도 있다.

 

var logger = Logger(
  printer: PrettyPrinter(
      methodCount: 2, // Number of method calls to be displayed
      errorMethodCount: 8, // Number of method calls if stacktrace is provided
      lineLength: 120, // Width of the output
      colors: true, // Colorful log messages
      printEmojis: true, // Print an emoji for each log message
      printTime: false // Should each log print contain a timestamp
  ),
);

https://pub.dev/packages/logger

 

logger | Dart Package

Small, easy to use and extensible logger which prints beautiful logs.

pub.dev

 

관련 정보는 위의 링크에서 확인할 수 있다.


메인 이미지 출처 : 사진: UnsplashMert Atakan