Android Studio에서 logcat을 필터링하는 방법은 무엇입니까?


96

내 logcat에는 너무 많은 출력이 있으므로 기본적으로 키워드를 포함하는 출력 만 표시하는 일부 키워드를 사용하여 필터링하고 싶습니다. UI를 통해 Android Studio에서 수행하는 방법이 있습니까?



아니요, 키워드로 메시지를 필터링하는 방법을 묻습니다.
— Alessandro Roaro 2013

android studio ver 0.4.5에서와 같이 실행중인 앱에서만 메시지를 받게됩니다. Log cat has a new option (on by default) which creates an application filter automatically such that only the launched application's output is shown
— dmSherazi 2014

답변:


107

이 작업을 수행하는 방법은 두 가지가 있으며 둘 다 IDE 하단의 Android 탭 (logcat 출력이 표시됨)에 있습니다.

첫째, 상단의 검색 창에 무언가를 입력하기 만하면 입력 한 텍스트가 포함 된 메시지 만 필터링됩니다.

둘째, 오른쪽 상단의 드롭 다운을 클릭하면 기본적으로 필터 없음 이 표시 Edit Filter Configuration되며 필터링 대상을 선택 하고 지정 하여 고급 필터링을 수행 할 수 있습니다 . 이 방법을 사용하면 필터를 저장하고 드롭 다운에서 선택하여 재사용 할 수도 있습니다.

스크린 샷 :
Logcat 검색 및 필터링


1
대답 해 주셔서 감사합니다. 나는 이미 첫 번째 것을 시도했지만 관련없는 출력을 필터링하지 않습니다. Re : 두 번째 옵션, 안타깝게도 드롭 다운 메뉴가 보이지 않습니다. 사용중인 버전은 무엇입니까?
— Alessandro Roaro 2013

1
나는 v0.3.5를 사용하고 있습니다 ... 대답에 스크린 샷을 추가했습니다.
— free3dom 2013

1
방금 스크린 샷을 찍는 동안 이것을 발견했지만 아직 필터링하는 다른 방법이 있습니다. 상의 좌측 (우측 옆에 탭) 측 녹색 화살표 아이콘이다 - : 목록에서 선택된 프로세스에서만 로그 캣 표시에 온 / 오프가 전환 될 수있다
— free3dom

감사합니다. 제 버전 (0.3.2)에는 필터가 없었습니다
— Alessandro Roaro 2013

문제 없어요! v0.3.3 / 4에서 추가되었다고 생각합니다. 안드로이드 스튜디오 : 각 버전으로 좋아지고있다
— free3dom

81

내가하는 일은 내가 싫어하는 줄을 마우스 오른쪽 버튼으로 클릭하고 "이와 같은 줄 접기"를 선택합니다.여기에 이미지 설명 입력


9
와우! 내가 이것을 일찍 알았 으면 좋겠다!
— miva2

7
이것이 답이되어야합니다.
— 기꺼이

2
이것 만이 Android Studio logcat에서 genymotion으로 내 홍수를 해결합니다.
— Florida

3
나는 전에 이것을 본 적이 없다는 것에 놀랐다. 좋은 찾기!
— dm78

1
확인 그것을 가지고 - D (단지 텍스트 녹색 컬러 항목을 더블 클릭 : "n 내부 통화")
— 아이 딘 K.

53

@ free3dom이 말했듯이 logcats를 수신하려는 프로세스를 선택할 수 있습니다. 다음은 스크린 샷입니다.

스크린 샷


2
추가해 주셔서 감사합니다. 그것의 좋은 모두를 위해 여기를하고 난 단지 :) 코멘트에 언급
— free3dom

39
멋진 그래픽도 ;-)
— Gerard

1
android studio ver 0.4.5에서와 같이 u는 실행중인 앱에서만 메시지를받습니다. Log cat has a new option (on by default) which creates an application filter automatically such that only the launched application's output is shown
— dmSherazi 2014

1
+1 '선택한 프로세스의 로그 만 표시'에서이 버튼을 누르십시오.
— lujop

다른 문제가 있습니다. 필터 구성에서 필터를 적용하면 특정 패키지에 대해 logcat이 비어 있습니다.
— Bhupesh

17

비디오 튜토리얼을 제작하여 방법 = https://youtu.be/xw2qE5ko_9I

로그에 이름을 지정하십시오. 나는 내 "와와"라고 불렀다.

여기에 이미지 설명 입력

Android Studio에서 Android-> 필터 구성 편집으로 이동하십시오.

여기에 이미지 설명 입력

그런 다음 로그에 부여한 이름을 입력하십시오. 제 경우에는 "wawa"라고합니다. 다음은 수행 할 수있는 필터 유형의 몇 가지 예입니다. System.out, System.err, Logs 또는 패키지 이름으로 필터링 할 수 있습니다.

여기에 이미지 설명 입력 여기에 이미지 설명 입력 여기에 이미지 설명 입력


2
줄을 포함하는 로그를 숨기기 위해 이것을 부정하는 정규식이 있습니까?
— Hugo M. Zuleta

내가 아는 한에서는 아니다. 정규식을 사용하려는 경우 가장 좋은 방법은 Android OS에 adb를 사용하고 Bash 터미널에서 Grep을 사용하는 것입니다.
— Gene

^ (?! chromium) (?! WebViewFactory) (?! zygote) .... (?! TAG_NAME)처럼 숨기고 싶은 태그를 추가하세요. 태그에 정규식을 사용하려는 경우, 예 : "asd"로 시작하는 모든 태그를 숨기려면이 "목록"태그에 (?! (^ asd))를 추가합니다.
— Drusantia

11

먼저 코드에서 TAG 이름을 선언하십시오.

private static final String TAG = "MainTagName";

그런 다음 출력하려는 ​​곳에 로그 문을 추가하십시오.

Log.d(TAG, "Activity created");

두 번째 게시물의 free3dom에 따라 logcat 탭에서 필터 드롭 다운을 클릭 한 다음 필터 구성 편집을 클릭합니다.

이 예에서는 로그 태그 (regex) 옵션을 사용하여 파이프 | 구분 기호 (공백 없음) :

MainTagName|SomeTagName|SomeOtherTagName

2
|를 사용할 때 어떤 logcat 출력도 얻지 못합니다. 두 태그 분리 (Android Studio 1.2)
— Someone Somewhere

2
@SomeoneSomewhere TAG의 이름이 Log 문의 첫 번째 매개 변수와 일치하는지 확인하십시오. 태그 이름과 파이프 사이에 공백이 없는지 확인하십시오 (예 : tag1 | tag2). 코드를 디버깅하여 실제로 태그 명령을 치고 있는지 확인하십시오. logcat 창의 로그 수준 드롭 다운에서 로그 수준이 Debug 또는 Verbose로 설정되어 있는지 확인합니다.
— HostMyBus

2
나는 모든 종류의 조합을 시도했습니다. 내 필터에 공백과 | "Tag1 | Tag2"처럼. 이 답변을 발견하고 공백을 제거했으며 완벽하게 작동합니다. 감사!
— raddevus

5

Logcat에서 필터를 켜는 데 문제가있었습니다. Android Studio 3.2에서 필터를 보려면 '플로팅 모드'를 다시 켜고 꺼서 필터가 다시 나타나도록해야합니다.

여기에 이미지 설명 입력


3

나를 위해 작동하는 한 가지 대안 Show only selected application은 필터 메뉴에서 옵션 을 선택하는 것입니다.

여기에 이미지 설명 입력


"Firebase"옵션이 언제 도착했는지 아십니까? 나는 오늘 처음으로 그것을 보았다 (내 앱이 더 이상 로깅하지 않는 이유를 궁금해 한 나이를 보낸 후).
— Richard Le Mesurier 2017

나는 그것이 거기에 있는지 전혀 몰랐다.
— Ojonugwa Jude Ochalifu

1
나도 마찬가지 였지만 (알지 못한 채로) 선택했고 많은 시간을 낭비했습니다. 들으 어쨌든
— 리처드 르 Mesurier

2

다른 답변의 이미지가 오래되었는지 또는 뭔가 빠졌는지 모르겠지만 여기에 업데이트 된 이미지가 있습니다.

하단 의 Android Monitor 탭을 클릭하고 logcat 탭이 선택 되었는지 확인합니다 . 그런 다음 출력 을 필터링 할 내용을 입력하십시오. 내 태그 이름으로 필터링했습니다 TAG.

여기에 이미지 설명 입력


2

내 실수를 추가하기 위해 :

에뮬레이터와 실제 장치를 사용할 때 logcat 탭 위의 왼쪽 드롭 다운에서 디버깅중인 장치로 전환해야합니다.


1

볼이 https://medium.com/zinuzoid/if-you-developing-android-application-1bdff0a96205

LogCat 필터를 "LogTag"에 문자열 아래에 삽입하면 시스템 행이 무시됩니다.

^(?!.*(BtGatt|dalvik|Environment|DataRouter|FA|art|Wifi|ServiceManager|Atfwd|tnet|MDnsDS|Download|Bluetooth|slim|QSEECOMAPI|WVCdm|QC-time|sensors|nanohub|Drm|Babel|Dropbox|gsamlab|Cryptd|Vold|QC_|Conscrypt|Dns|sound|NetWork|OpenGL|TLog|GMPM|Microphone|Process|Dynamite|cr_|VideoCapabilities|libEGL))
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.