ときどき、次のようなコードに出くわします。
private final Logger log = LoggerFactory.getLogger(MyClass.class);
slf4j
これがロガーオブジェクトであるとしましょう。Apache Commons Loggingを使用している場合は、Log
ではなくクラスが呼び出されLogger
ます。
私はこの問題を少し考えており、以下の 2 つのオプションについていくつかの長所と短所を挙げています。
logger
代わりに使用する理由log
- 目的: ログ自体ではなく、ログのライターです。
- 誤解を招く:
log
ログから読み取ることができないため、本質的に誤解を招く名前です。
log
代わりに使用する理由logger
- メソッド呼び出しの読みやすさ : Logger で使用できるメソッドには、通常、 などの名前が付けられ
info()
ますerror()
。そのためlog.error()
、「log this error」のように大声で発声されたコマンドに似たものになりますが、どのように聞こえるlogger.error()
かは言うまでもなく、ロガー自体のエラーを報告しているように見えます。logger.debug()
それで、今質問です。その厄介な Logger に名前を付けるための 3 番目のオプションはありますか? プロジェクトで何を使用し、その理由は何ですか?