どうも”おもり”です。
今年はOSS活動に精を出していこうと考えています。
Android開発のOSS活動。力不足の自分でもやっていけそうなissueを探している中、
以下のようなissueを見つけた。
https://github.com/uhooi/UhooiPicBook-Androidより
"good first issue"のタグが付いているので、いざやってみようと思ったのですが、
Timberとは何ぞや状態だったので、色々ネットを調べあさりました。
調べた情報をまとめて、Timberの良いところをサクッと学べるような記事を書きます。
Timberとは?
Timberとは、Androidのログ出力ライブラリです。
Androidのログ出力機能といえば、Androidのログ標準ライブラリ(Log)があります。
Log.v("MainActivity", "verbose")
Log.d("MainActivity", "debug")
Log.i("MainActivity", "info")
Log.w("MainActivity", "warn")
Log.e("MainActivity", "error")
※各ロギングの意味合い
Log.v:VERVOSE(すべてのログ情報)
Log.d:DEBUG(デバッグ情報)
Log.i:INFO(情報)
Log.w:WARN(警告)
Log.e:ERROR(致命的な問題)
しかし、ログ標準ライブラリを使うと問題があります。
- リリースビルドなのにでバックログが出力される
- デバックビルドなのにCrashlyticsに出力される
特に、リリースビルドでもでバックログが出力されることが大きな問題です。
Timberを使って嬉しいこと
public class MyApplication extends Application {
@Override
public void onCreate() {
super.onCreate();
Timber.plant(new DebugTree());
}
}
簡単に導入できる。TreeをPlantして、初期化をする。
- 書きやすい
Timber.tag("hoge").i("piyo=%s", "fuga");
Logライブラリの使い方と使用方法がそこまで違わないので、使うのが簡単。
- リリース後のクラッシュログの収集ができる。
Crashlytics等を使ってリリース後のクラッシュログを収集することができるらしい。
自分のアプリを作る時に試してみよう。
参考資料
Androidのログ出力をいい感じにする
AndroidのTimber(ログ系)とFabric/Crashlytics(クラッシュレポート)を使ってみた。
[Android] Timber で debug ビルド時のみにログを出力する
(Android)ログ出力ライブラリ"Timber"を使ってみる
Logcatのソースへ飛ぶ機能をTimberに盛り込んでみた。
TimberをLogの代わりに使用して快適ログ確認