aLogcat을 사용하여 Jelly Bean에서 메시지 로그에 액세스하는 중 문제점


12

요약

aLogcat을 사용하여 K9 로그 메시지에 액세스하는 데 문제가 있습니다. 자세한 내용은 아래를 참조하십시오. 내가 알고 싶은 것은 :

  • K9의 로그 메시지가 aLogcat 로그 뷰어에 나타나지 않는 이유는 무엇입니까?
  • K9 폴더를 동기화하려고 할 때 발생하는 오류의 전체 텍스트를 볼 수있는 방법에 대한 제안이 있습니까?
  • Jelly Bean에서 K9의 로깅이 작동을 멈추게하는 무언가가 변경 될 수 있습니까?
  • 일반적으로 aLogcat에 의해 표시되는 메시지가 거의없는 것처럼 보이기 때문에 Jelly Bean에서 변경된 메시지가있어 더 이상 모든 메시지에 액세스 할 수 없습니까?

세부 묘사

최근에 K9에 연결 문제가있었습니다. 내 폴더가 동기화되지 않고 마지막으로 확인한 시간경과 해야하는 소켓 오류 ( libcore.io.ErrnoException:) 또는 ssl 오류 ( javex.net.ssl.SSLException:) 등으로 폴더 목록이 끝납니다 . 당시에 발생한 문제에 따라 다른 메시지가 표시되지만 오류 메시지의 전체 텍스트를 볼 수 없으므로 원인이 무엇인지 추측하기가 어렵습니다.

로그 파일에 더 많은 정보가 포함되어 있다고 생각하면서 디버그 로그 기록 , K9에서 디버그 로깅 사용, aLogcat 설치 및 로그를 보려는 지침을 따랐습니다 . 슬프게도, 내가 선택한 로그 버퍼 ( Main , Events 또는 Radio )에 관계없이 K9의 메시지가없는 것으로 보입니다.

내가 제안 추가하면 (k9|AndroidRuntime)정규식 필터를 다음 나는 아무것도 볼 수 없습니다 모든 로그의를. 내가 제거하면 Main 에 대부분 가비지 수집 메시지가 포함되어 있으며, Events 에는 aLogcat 자체의 메시지가 대부분 포함되어 있으며 라디오에서 아직 로그 메시지를 보지 못했습니다.

그것이 차이가 있다면 Nexus 7을 사용하고 있지만 로깅은 안드로이드 버전간에 변경되지 않는 표준 위치에있을 것이라고 생각했을 것입니다.

답변:


24

K9 폴더를 동기화하려고 할 때 발생하는 오류의 전체 텍스트를 볼 수있는 방법에 대한 제안이 있습니까?

루트 액세스 권한이 없는 장치에서 이러한 로그 메시지를 볼 수있는 방법은 없지만 루트 액세스 권한이있는 경우 몇 가지 옵션이 있습니다 .aLogcat에 필요한 권한부여 하거나 끔찍한 핵 TM 을 사용 하여 볼 수 있습니다 그들 직접.

다음을 통해 PC 또는 워크 스테이션에서 로그 파일을 봅니다. adb

Android 장치를 PC 또는 워크 스테이션에 연결할 수 있으면 adb명령을 통해 로그에 액세스 할 수 있습니다 .

Windows에서이 작업을 수행하려면 먼저 당신은 설치해야합니다 안드로이드 SDK 합니다 (필요합니다 자바 SE SDK를 )과 추가 android-sdk\toolsandroid-sdk\platform-tools시스템 경로 . 그런 다음 Nexus 7에서 USB 디버깅을 사용하도록 설정하고 USB를 통해 연결 한 다음 Android Composite ADB Interface 를 설치합니다 android-sdk\extras\google\usb_driver(Windows XP에서 강제로 드라이버를 찾지 못했을 것입니다).

adb전체 Android SDK 설치없이 또는 Mac 또는 Linux 시스템에서 시작하고 실행 하는 방법에 대한 자세한 내용 은 Azzy를 최소로 설치합니까?에 대한 Izzy의 탁월한 답변 을 참조하십시오 .

그런 다음 쉘 (예 : cmd창)을 열고 다음 명령을 실행할 수 있습니다.

adb logcat k9:V *:S AndroidRuntime:E
  • 루팅되지 않은 Nexus 7에서 작동 함을 확인했습니다.

aLogcat에 권한 부여

당신이있는 경우 루트 액세스 , 당신은 부여 고려할 수 READ_LOGS권한을 aLogCat을 이 게시물에 제안, aLogCat을 / CatLog / 나무꾼가 작동하지? ...이 작업을 수행XDA - 개발자 포럼 :

pm grant <pkg> android.permission.READ_LOGS

이 권한을 alogcator에 부여하려면 alogcat.donate기부 버전을 실행 중인지 여부에 따라 다음 명령 중 하나를 사용합니다.

pm grant org.jtb.alogcat.donate android.permission.READ_LOGS
pm grant org.jtb.alogcat android.permission.READ_LOGS

android-developersticket의 한 게시물에 따르면 권한 부여는 재부팅 및 업데이트는 유지되지만 제거 / 재설치는하지 않습니다.

슬프게도 루트 액세스가 필요하기 때문에 장치에서 또는 내 PC에서 접두사를 실행하든 관계없이 adb shell오류가 발생합니다.

Neither user 12345 nor current process has android.permission.GRANT_REVOKE_PERMISSION
  • Nexus 7이 루팅되지 않았기 때문에 이것이 작동하는지 확인할 수 없습니다.

끔찍한 핵 TM 사용을 고려하십시오

당신이있는 경우 루트 액세스 , 당신은 만드는 고려할 수 logcat setuid를 루트 에 제안, 장치 쉘에서 실행 로그 캣을 이 답변 에 내 어떻게 루트 액세스하지 않고 내 넥서스 7 안드로이드 로그 파일을 액세스 할 수 있습니까? 질문:

chmod 04755 /system/bin/logcat
logcat k9:V *:S AndroidRuntime:E
  • 다시 말하지만, 이것이 효과가 있음을 확인할 수 없으며 보안 관련 사항을 고려할 때 아마도 최후의 수단 으로 만 사용할 것입니다 .

K9의 로그 메시지가 aLogcat 로그 뷰어에 나타나지 않는 이유는 무엇 입니까?

Jelly Bean에서 K9의 로깅이 작동을 멈추게하는 무언가가 변경 될 수 있습니까?

일반적 으로 aLogcat 에 의해 표시되는 메시지가 현저히 적기 때문에 Jelly Bean에서 변경된 것이있어 더 이상 모든 메시지에 액세스 할 수 없습니까?

이것은 Jelly Bean에서 변경된 것으로 보이며 로그 파일을 읽으려고 시도하는 모든 응용 프로그램에 영향을 미칩니다.

Jelly Bean의 타사 응용 프로그램에는 READ_LOGS 권한이 부여되지 않은 것 같습니다 . 이 링크는 신뢰할 수없는 것 같습니다.

오늘은 Google Play에 릴리스하기 전에 최신 (api 16) 에뮬레이터에서 응용 프로그램을 테스트했습니다. Android는 이제 타사 응용 프로그램 에이 권한을 부여하지 않는 것으로 나타났습니다. 모든 Jelly Bean의 문서화 된 변경 사항을 살펴본 결과 READ_LOGS 권한을 언급하는 항목을 찾을 수 없기 때문에 이상합니다.

그리고 나중에

READ_LOGS의 protectionLevel은 이제 "signature | system | development"입니다. protectionLevel에 대한 새로운 파이프 구문도 문서화되어 있지 않습니다 ( http://code.google.com/p/android/issues/detail?id=34785 참조 ).

내 의심은 aLogcat 이 자체적으로 생성 된 메시지 만보 고 VM이라는 것입니다.

자세한 내용은 흐름 답을 '내 질문에이야 내 젤리 시스템 로그 파일이 될 것으로 기대한다 어떻게 활성화?


IIRC adb logcat는 여전히 Jelly Bean에서 전체 안드로이드 로그를 얻을 수 있습니다.
흐름

루트는 필요하지 않지만 장치에서 adb를 활성화해야합니다 (일반적으로 개발자 옵션에서).
흐름

@Flow-이제 PC에서 로그를 사용하여 로그를 볼 수 있음을 확인하고 adb logcat그에 따라 답변을 업데이트했습니다. 장치 자체에서 루트 액세스하지 않고 로그에 액세스 할 수있는 방법을 찾지 못하는 것은 여전히 ​​실망 스럽습니다.
Mark Booth

루트가 아닌 사용자 전체 시스템 로그에 액세스 할 수없는 것은 JB 로그 변경의 요점입니다 .
흐름

@Flow-예. 로그 메시지의 요점은이 메시지를 사용하여 진행 상황을 확인할 수 있다는 것입니다. JB는 aLogcat 과 같은 앱을 무의미 하게 만듭니다. 이제는 자체 로그 메시지에만 액세스 할 수 있기 때문입니다!
Mark Booth

0

메일 서버가 SSL 인증서를 업데이트했을 때 K9에서이 동작을 보았습니다. 수정 사항은 계정을 길게 누르고 인증서에 대한 팝업이 나타날 때까지 페이지를 선택 Account settings -> Fetching mail -> Incoming server하고 Next페이지를 쳐서 설정을 확인하는 것이 었습니다. 인증서를 확인하고 나머지 설정을 진행하면 계정이 작동하기 시작합니다.


@MarkBooth 아마도 당신은 아마 우리가 해결책을 전제로하지 않는 질문들을 선호한다고 요구했을 것입니다.
Matthew 읽기

@MatthewRead 필자는 여기에 마크에 동의해야합니다. 요약에서 4 가지 항목은 로깅 문제에 대한 도움을 원한다고 명시하고 있으며 여기에는 "XY 문제"도 표시되지 않습니다 (사전 해결책). K9는 분명한 예일뿐입니다. "logcat을 사용하여 문제의 원인을 파악하는 것이 더 좋을 것입니다."
Izzy

@MarkBooth Yepp, tnx-훨씬 명확 해졌습니다. 또한 자세한 답변은 tnx입니다! 진행 상황에 대해 계속 업데이트하십시오.
Izzy

수정 후 주제를 완전히 벗어난 주제이며 다운 보트가 발생하기 때문에 답변을 삭제해야합니까?
onik

그것은 당신에게 달려 있습니다. 내가 처음에 말했듯이 답변을 게시하는 데 시간을내어 주셔서 감사하지만, 이제 질문을 업데이트하여 답변이 더 어려워 보입니다. 나는 당신이 항상 -3 이하로 투표되는지 기다릴 수 있고 동료 압력 배지를 수집 할 수 있다고 생각합니다 . * 8 ')
Mark Booth
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.