2017年2月14日火曜日

Android でのロギング、および java.util.logging.Logger と android.util.Log の関係性

まとめ


loggerName から TAG への変換

  • JUL での loggerName は、そのままでは logcat用の TAG としては一般には長すぎる。そこで、dalvik.system.DalvikLoggingloggerNameToTag() で短く切りつめられる。
  • もし、JUL での作法として loggerName に FQCN (パッケージ名付きのクラス名) を指定しているのであれば、たいていの場合、TAG は loggerName の 単純名 (パッケージ名なしのクラス名) になる。
    例: loggerName が com.example.a.MyActivity ならば、TAG は MyActivity になる。
  • ただし、loggerName として指定された FQCN の長さが 23文字以下 ならば、その FQCN が そのまま TAG になる。
  • 逆に、loggerName を 単純名 に置き換えても 23文字に収まらない場合は、単純名の後ろから23文字分が TAG として採用される。

JUL の各ログレベル は、logcat の どの priority に対応するか?

JUL の各ログレベル から logcat の priority への変換は、AndroidHandlergetAndroidLevel() で行われている。

JUL での ログレベルlogcat での priority
SEVERE ERROR
WARNING WARN
INFO INFO
CONFIG DEBUG
FINE, FINER, FINEST VERBOSE

0 件のコメント :

コメントを投稿