android - adb logcat 상용 명령 요약

14464 단어 android
1. adb logcat 도움말 보기
C:\Users\000>adb logcat --help
Usage: logcat [options] [filterspecs]
options include:
  -s              Set default filter to silent.
                  Like specifying filterspec '*:s'
  -f <filename>   Log to file. Default to stdout
  -r [<kbytes>]   Rotate log every kbytes. (16 if unspecified). Requires -f
  -n <count>      Sets max number of rotated logs to <count>, default 4
  -v <format>     Sets the log print format, where <format> is one of:

                  brief process tag thread raw time threadtime long

  -c              clear (flush) the entire log and exit
  -d              dump the log and then exit (don't block)
  -t <count>      print only the most recent <count> lines (implies -d)
  -g              get the size of the log's ring buffer and exit
  -b <buffer>     Request alternate ring buffer, 'main', 'system', 'radio'
                  or 'events'. Multiple -b parameters are allowed and the
                  results are interleaved. The default is -b main -b system.
  -B              output the log in binary
filterspecs are a series of
  <tag>[:priority]

where <tag> is a log component tag (or * for all) and priority is:
  V    Verbose
  D    Debug
  I    Info
  W    Warn
  E    Error
  F    Fatal
  S    Silent (supress all output)

'*' means '*:d' and <tag> by itself means <tag>:v

If not specified on the commandline, filterspec is set from ANDROID_LOG_TAGS.
If no filterspec is found, filter defaults to '*:I'

If not specified with -v, format is set from ANDROID_PRINTF_LOG
or defaults to "brief"

2. 해석 옵션
– "- s" 옵션: 출력 로그 의 탭 을 설정 하고 이 탭 의 로그 만 표시 합 니 다.
- "- f" 옵션: 로 그 를 파일 에 출력 하고 기본 출력 은 표준 출력 흐름 에 출력 합 니 다.
– "- r" 옵션: 천 바이트 당 출력 로그 에 따라 - f 인자 가 필요 합 니 다.
– "- n" 옵션: 로그 출력의 최대 수 를 설정 하려 면 - r 인자 가 필요 합 니 다.
– "- v" 옵션: 로그 의 출력 형식 을 설정 합 니 다. 하나만 설정 할 수 있 습 니 다.
– "- c" 옵션: 모든 로그 캐 시 정 보 를 삭제 합 니 다.
– "- d" 옵션: 캐 시 로 그 를 화면 에 출력 하고 막 히 지 않 습 니 다.
– "- t" 옵션: 최근 몇 줄 의 로 그 를 출력 하고 출력 이 끝나 도 막 히 지 않 습 니 다.
– "- g" 옵션: 로그 버퍼 정보 보기;
– "- b" 옵션: 로그 버퍼 를 불 러 옵 니 다. 기본 값 은 main 입 니 다. 아래 설명 입 니 다.
– "- B" 옵션: 로 그 를 바 이 너 리 로 출력 합 니 다.
3. 지정 한 탭 의 로 그 를 출력 합 니 다.
방식 1: 기본 필 터 를 설정 합 니 다. - s 옵션 + 태그 이름 adb logcat - s 태그 이름 TAG 태그 이름:
adb logcat -s VideoFragment VLCVideoPlayerActivity

방식 2: 필 터 를 사용자 정의 합 니 다. 로그 단 계 를 지정 하면 LEVEL 에서 선택 할 수 있 습 니 다.
– V: Verbose (내 역); –D: 디버그 (디버그); –I: 정보 (정보); –W: Warn (경고); –E: 오류 (오류); –F: 치 명 적 (심각 한 오류);S: Silent (Super all output) (가장 높 은 우선 순위 로 물건 을 기록 하지 않 을 수 있 습 니 다);
TAG: X 의 역할 은 출력 라벨 이 TAG 인 log 등급 이 X 보다 큰 정보 입 니 다. 예 를 들 어:
adb logcat VideoFragment:D

VideoFragment 의 D 와 D 레벨 이상 의 log 를 출력 합 니 다. D, I, W, E, F, S 를 포함 합 니 다. 주의: (1) 여러 개의 [TAG: LEVEL] (2) level: S 는 이 탭 을 출력 하지 않 는 로 그 를 표시 합 니 다. S 레벨 이상 의 로 그 는 없어 야 합 니 다. (3) [TAG: LEVEL] 은 다른 로 그 를 차단 하려 면 *: S 를 사용 하 십시오. 예 를 들 어:
adb logcat VideoFragment:D VLCVideoPlayerActivity:D *:S

방식 3: 파이프 필터 로그 linux 시스템 에서:
adb logcat | grep -e "VideoFragment\|VLCVideoPlayerActivity"
adb logcat | grep -e "VideoFragment|VLCVideoPlayerActivity"
adb logcat |grep -e VideoFragment -e VLCVideoPlayerActivity

windows 시스템 에서: 여러 조건 에서 빈 칸 을 직접 사용 합 니 다.
adb logcat | findstr "VideoFragment VLCVideoPlayerActivity"

4. 파일 에 로그 정 보 를 출력 합 니 다.
방식 1: - f 옵션
adb logcat -f /sdcard/log.txt 

방식 2: 출력 방향 변경
adb logcat > /sdcard/log.txt  

백그라운드 실행
logcat -f /sdcard/log.txt &   #   &        ,   

적당 할 때 이 명령 을 멈 춰 야 합 니 다. 같은 파일 을 쓰 려 면 여러 개의 logcat 가 있어 야 합 니 다.정지 방법:
adb shell kill -9 <logcat_pid> 

그 중 logcatpid 는 다음 명령 을 통 해 가 져 옵 니 다.
adb shell ps | grep logcat          # linux   
adb shell ps | findstr "logcat"    #Windows  

5. - v 로그 상용 출력 형식
1. "tag" 형식: "우선 순위 / 태그: 로그 정보", 예 를 들 어:
C:\Users\000>adb logcat -v tag -s VideoFragment
D/VideoFragment: ====== onCreate
D/VideoFragment: =======bindVideoPlayerService
D/VideoFragment: UpdateAdapterTask doInBackground
D/VideoFragment: ====== onStart
D/VideoFragment: UpdateAdapterTask onPostExecute
D/VideoFragment: =====UpdateAdapterTask notifyDataSetChanged
D/VideoFragment: =====  PlayerService onServiceConnected

2. "time" 형식: "날짜 시간 우선 순위 / 태그 (프로 세 스 ID): 프로 세 스 이름: 로그 정보", 예:
C:\Users\000>adb logcat -v time -s VideoFragment
04-25 15:04:39.591 D/VideoFragment( 5859): ====== onCreate
04-25 15:04:39.601 D/VideoFragment( 5859): =======bindVideoPlayerService
04-25 15:04:39.621 D/VideoFragment( 5859): UpdateAdapterTask doInBackground
04-25 15:04:39.621 D/VideoFragment( 5859): ====== onStart
04-25 15:04:39.641 D/VideoFragment( 5859): UpdateAdapterTask onPostExecute
04-25 15:04:39.641 D/VideoFragment( 5859): =====UpdateAdapterTask notifyDataSetChanged
04-25 15:04:39.781 D/VideoFragment( 5859): =====PlayerService onServiceConnected

6. 로그 버퍼
C:\Users\000>adb shell
root@rk3288:/ # ll /dev/log
crw-rw-rw- root     log       10,  46 2016-04-25 10:50 events #         
crw-rw-rw- root     log       10,  47 2016-04-25 10:50 main #      
crw-rw-rw- root     log       10,  45 2016-04-25 10:50 radio #           
crw-rw-rw- root     log       10,  44 2016-04-25 10:50 system #          

로그 버퍼 정보 보기:
C:\Users\000>adb logcat -g
/dev/log/main: ring buffer is 256Kb (40Kb consumed), max entry is 5120b, max pay
load is 4076b
/dev/log/system: ring buffer is 256Kb (11Kb consumed), max entry is 5120b, max p
ayload is 4076b

로그 버퍼 비우 기:
C:\Users\000>adb logcat -c

C:\Users\000>adb logcat -g
/dev/log/main: ring buffer is 256Kb (0Kb consumed), max entry is 5120b, max payl
oad is 4076b
/dev/log/system: ring buffer is 256Kb (0Kb consumed), max entry is 5120b, max pa
yload is 4076b

좋은 웹페이지 즐겨찾기