본문 바로가기
안드로이드 자바

[JAVA][Android] Logger 라이브러리 사용하기

by teamnova 2022. 10. 28.
728x90

안녕하세요

오늘은 Logger 라이브러리를 사용해 보도록하겠습니다.

 

https://github.com/orhanobut/logger

  1. 첫번쨰 이유는 JSON 형태의 데이터를 쉽게 찍을 수 있다.
  2. 두번재 이유는 Logcat에 찍힌 로그를 클릭하면 해당 스크립트로 이동

사용 방법은 다음과 같습니다.

  1. 의존성 주입

App Grddle에 다음과 같이 의존성을 주입해 줍시다.

// logger
    implementation 'com.orhanobut:logger:2.2.0' // 현재 최신버전
  1. Application Class 만들어 로그 추가하기

Logger을 사용할 때 Application를 상속받는 Class에 선언해주면 보다 편리하게 사용할 수 있습니다.

public class MyApplication extends Application {
    @Override
    public void onCreate() {
        super.onCreate();
				FormatStrategy formatStrategy = PrettyFormatStrategy.newBuilder()
                .showThreadInfo(false)// 쓰레드에 관련된 log 를 결정하는 method, default 는 false 입니다.
                .methodCount(2)// method 관련해서 몇줄까지 log 를 보여줄지 결정
                .methodOffset(0)// method 가 내부적으로 어떻게 log 가 찍히는지 보여줍니다. Default 5
                .tag("PRETTY_LOGGER")// 로그 테그를 설정할수있습니다. Default PRETTY_LOGGER
                .build();

        Logger.addLogAdapter(new AndroidLogAdapter(formatStrategy));
        // 일반적인 로그 찍기

				// OKHTTP 통신 결과 로그 찍기
				Gson gson = new Gson();
        String str = gson.toJson(response.body()); 
        Logger.json(str); 
    }
}

Android에서 Application을 사용할 때 Manifest에 Application 태그에 name을 입력해 줘야 합니다.

로그를 출력하는 코드는 다음과 같습니다.

Logger.d("debug");
Logger.e("error");
Logger.w("warning");
Logger.v("verbose");
Logger.i("information");
Logger.wtf("What a Terrible Failure");

// Collections are supported (only available for debug logs)
Logger.d(MAP);
Logger.d(SET);
Logger.d(LIST);
Logger.d(ARRAY);

// Json and Xml support (output will be in debug level)
Logger.json(JSON_CONTENT);
Logger.xml(XML_CONTENT);

Logger.d("string %s", "hello")
Logger.d("num %d", 3)

다음과 같이 깔끔하게 log가 찍히게 됩니다.