[flutter] pretty_dio_logger를 사용한 지연 시간 모니터링
지난 주에 Flutter 애플리케이션을 개발하면서 네트워킹 라이브러리로 dio를 사용하면서 API 요청의 지연 시간을 모니터링할 필요성을 느꼈습니다. 이를 위해 pretty_dio_logger 패키지를 사용하여 dio 요청 및 응답의 지연 시간을 확인하는 방법에 대해 알아보겠습니다.
pretty_dio_logger란?
pretty_dio_logger는 dio 패키지의 인스턴스를 감싸면서 HTTP 요청 및 응답을 로깅하는 라이브러리입니다. 이를 통해 요청과 응답의 세부 정보를 쉽게 모니터링할 수 있습니다.
pretty_dio_logger 사용 방법
먼저, pubspec.yaml
파일에 pretty_dio_logger 패키지를 추가합니다.
dependencies:
dio: ^3.0.10
pretty_dio_logger: ^1.0.5
그리고 다음과 같이 pretty_dio_logger를 초기화하고 dio의 인스턴스를 감싸서 사용합니다.
import 'package:dio/dio.dart';
import 'package:pretty_dio_logger/pretty_dio_logger.dart';
void main() {
Dio dio = Dio();
dio.interceptors.add(PrettyDioLogger());
// 나머지 코드
}
위의 코드에서 dio.interceptors.add(PrettyDioLogger())
를 통해 pretty_dio_logger를 dio에 추가하고, 이제 HTTP 요청을 수행하면 pretty_dio_logger가 자동으로 로깅을 수행합니다.
예시
다음은 pretty_dio_logger를 사용하여 HTTP 요청과 응답을 로깅한 예시입니다.
I/flutter (30682): ┌───────────────── Request ─────────────────┐
I/flutter (30682): │ Method: GET │
I/flutter (30682): │ Url: https://api.example.com/users │
I/flutter (30682): │ Headers: │
I/flutter (30682): │ - accept: application/json │
I/flutter (30682): └───────────────────────────────────────────┘
I/flutter (30682): ┌───────────────── Response ────────────────┐
I/flutter (30682): │ Status Code: 200 │
I/flutter (30682): │ Headers: │
I/flutter (30682): │ - content-type: application/json │
I/flutter (30682): ├────────────────────── Body ────────────────┤
I/flutter (30682): │ { │
I/flutter (30682): │ "id": 1, │
I/flutter (30682): │ "name": "John Doe" │
I/flutter (30682): │ } │
I/flutter (30682): └───────────────────────────────────────────┘
결론
pretty_dio_logger를 사용하면 HTTP 요청 및 응답의 상세한 정보를 쉽게 모니터링할 수 있습니다. 이를 통해 네트워크 성능을 개선하거나 문제를 신속하게 해결할 수 있습니다. 다음번에 Flutter 애플리케이션을 개발할 때 pretty_dio_logger를 사용하여 네트워크 성능을 모니터링해 보세요.