[flutter] pretty_dio_logger를 활용한 앱 설정 및 프로파일 관리

본 문서에서는 Flutter 앱의 네트워크 요청 프로파일링과 로깅을 관리하기 위해 pretty_dio_logger 패키지를 활용하는 방법에 대해 알아보겠습니다.

1. pretty_dio_logger란?

perty_dio_logger는 Flutter 앱에서 Dio 네트워크 클라이언트의 요청과 응답을 로그로 출력해주는 패키지입니다. 이 패키지를 사용하면 개발자는 네트워크 요청의 세부 정보 및 응답을 실시간으로 확인하며, 앱의 네트워크 트래픽을 분석할 수 있습니다.

2. pretty_dio_logger 패키지 설치

먼저, pubspec.yaml 파일의 dependenciespretty_dio_logger 패키지를 추가합니다.

dependencies:
  flutter:
    sdk: flutter
  dio: ^x.x.x  # 필요한 버전으로 변경
  pretty_dio_logger: ^x.x.x

그리고 터미널에서 아래의 명령어를 실행하여 패키지를 가져옵니다.

flutter pub get

3. pretty_dio_logger 사용

import 'package:dio/dio.dart';
import 'package:pretty_dio_logger/pretty_dio_logger.dart';

void main() {
  Dio dio = Dio();
  dio.interceptors.add(PrettyDioLogger(
    requestHeader: true,
    requestBody: true,
    responseBody: true,
    responseHeader: false,
    error: true,
    compact: true
  ));

  // 나머지 앱 로직 추가
}

위 코드에서 PrettyDioLogger 객체를 Dio 인터셉터에 추가함으로써 모든 네트웁 클라이언트의 요청과 응답 정보가 콘솔에 출력됩니다. 이로써 개발자는 앱의 네트워크 요청과 응답에 대한 디버깅 및 프로파일링을 쉽게 할 수 있습니다.

4. 프로파일 관리

개발 중인 앱에서 실제 서버와의 통신은 로컬, 개발, 스테이징, 프로덕션 등 다양한 환경에서 이루어집니다. 이때, pretty_dio_logger를 통해 손쉽게 각 환경에 따라 다른 로깅 설정을 관리할 수 있습니다. 예를 들어, 개발 환경에서는 모든 로그를 출력하지만, 프로덕션 환경에서는 오직 에러 로그만을 출력하는 등의 설정을 할 수 있습니다.

결론

pretty_dio_logger 패키지를 사용하여 Flutter 앱의 네트워크 요청과 응답을 로깅하고 프로파일링하는 방법을 알아보았습니다. 이를 통해 앱의 네트워크 동작을 모니터링하고 디버깅하는데 도움이 되며, 다양한 환경에 대응하는 로깅 설정을 손쉽게 관리할 수 있습니다.