Google은 흑인 공동체를 위한 인종 간 평등을 진전시키기 위해 노력하고 있습니다. Google에서 어떤 노력을 하고 있는지 확인하세요.

시스템 추적 개요

단기간 동안의 기기 활동을 기록하는 것을 시스템 추적이라고 합니다. 시스템 추적을 실행하면 시스템 보고서를 생성하는 데 사용할 수 있는 추적 파일이 만들어집니다. 이 보고서에서는 앱 또는 게임의 성능을 가장 효과적으로 향상하는 방법을 확인할 수 있습니다.

Android 플랫폼은 트레이스를 캡처하는 몇 가지 옵션을 제공합니다.

  • Android 스튜디오 CPU 프로파일러
  • 시스템 추적 앱
  • Systrace 명령줄 도구
  • Perfetto 명령줄 도구

Android 스튜디오 CPU 프로파일러를 사용하여 앱과 상호작용하는 동안 앱의 CPU 사용량 및 스레드 활동이 실시간으로 검사됩니다. 개발자는 기록된 메서드 트레이스, 함수 트레이스, 시스템 트레이스에서 세부정보를 검사할 수도 있습니다.

시스템 추적 앱은 기기 활동을 추적 파일에 저장하는 Android 도구입니다. Android 10(API 수준 29) 이상을 실행하는 기기에서는 추적 파일이 Perfetto 형식으로 저장됩니다(아래 참조). 이전 버전의 Android를 실행하는 기기에서는 추적 파일이 Systrace 형식으로 저장됩니다.

Systrace는 기존 플랫폼에서 제공되는 명령줄 도구로, 단기간에 걸쳐 기기 활동을 압축된 텍스트 파일로 기록합니다. 이 도구는 CPU 스케줄러, 디스크 활동 및 앱 스레드와 같은 Android 커널의 데이터를 결합한 보고서를 생성합니다.

Perfetto는 Android 10에 새로 도입된 플랫폼 전반 추적 도구로서 Android, Linux, Chrome을 위한 보다 일반적이고 정교한 오픈소스 추적 프로젝트입니다. Systrace에 비해 상위 집합의 데이터 소스를 제공하며, 개발자는 임의의 긴 트레이스를 protobuf 인코딩 바이너리 스트림에 기록할 수 있습니다 이러한 트레이스는 Perfetto UI에서 열 수 있습니다.

Perfetto 트레이스 뷰의 화면 캡처

그림 1. 약 20초간의 앱 상호작용을 보여주는 샘플 Perfetto 트레이스 뷰

Systrace 보고서의 화면 캡처

그림 2. 앱과의 5초간 상호작용을 보여주는 샘플 Systrace HTML 보고서

두 보고서 모두 일정 기간 동안 Android 기기의 시스템 프로세스에 관한 전반적인 상황을 제공합니다. 또한 이 보고서는 캡처된 추적 정보를 검사하여 UI 버벅거림 또는 높은 전력 소모와 같은 관찰한 문제를 강조표시합니다.

Perfetto와 Systrace는 상호 운용 가능합니다.

시스템 추적 가이드

시스템 추적 도구에 관해 자세히 알아보려면 다음 가이드를 참조하세요.

CPU 프로파일러를 사용하여 CPU 활동 검사
Android 스튜디오에서 앱의 CPU 사용량 및 스레드 활동을 프로파일링하는 방법을 설명합니다.
시스템 추적 시스템 앱
Android 9(API 수준 28) 이상을 실행하는 기기에서 직접 시스템 트레이스를 캡처하는 방법을 설명합니다.
Systrace 명령줄 참조
Systrace의 명령줄 인터페이스에 전달할 수 있는 다양한 옵션과 플래그를 정의합니다.
ADB를 사용하여 Perfetto 실행
perfetto 명령줄 도구를 실행하여 트레이스를 캡처하는 방법을 설명합니다.
Perfetto 실행
perfetto 명령줄 도구를 빌드하고 실행하여 트레이스를 캡처하는 방법을 설명하는 외부 문서입니다.
Perfetto UI
Perfetto 웹 기반 트레이스 뷰어가 Perfetto 트레이스를 열고 전체 보고서를 표시합니다. 기존 UI 옵션을 사용하여 이 뷰어에서 Systrace 트레이스를 열 수도 있습니다.
Systrace 보고서 탐색
일반적인 보고서의 요소를 나열하고 보고서를 탐색하기 위한 단축키를 제공하며 성능 문제의 유형을 확인하는 방법을 설명합니다.
맞춤 이벤트 정의
Systrace나 Perfetto에서 근본 원인을 보다 쉽게 분석할 수 있도록 코드의 특정 섹션에 맞춤 라벨을 적용할 수 있는 방법을 설명합니다.