Kengo's blog

Technical articles about original projects, JVM, Static Analysis and JavaScript.

SLF4J

SLF4Jの1.8は安定版が出ないので2.0を使おうという話

前回の投稿で、SLF4Jには現在1.7、1.8、2.0の3バージョンがあるという話をしました。 これについてSLF4Jのuser向けメーリングリストで質問をしたところ、1.8の開発中にFluent Logging APIを追加するために2.0へとメジャーバージョンを上げたという旨の回答を…

Javaライブラリを配布する際のログ周りにおける配慮と実践 2020

この記事は、2013年に書いた記事を現状に合わせてアップデートするものです。結論から言うと、当時から id:miyakawa_taku さんがおっしゃっていた「APIは依存に含めて良い」を支持するものです。あるいは無難にバージョン 1.7.30 を使っておきましょう。 blo…

エラーログと例外の扱いについて

社内勉強会向けに作成したエラーログと例外の扱いについて説明したスライドを、Speakerdeckで公開しました。一部社内特化部分(ログレベルポリシーやMSA向けMDC使用法 など)を削除して、口頭で補足した部分を補っています。 これらの理想的な使い方はシステ…

SLF4Jの使い方をfindbugsで自動検証する

今日、拙作findbugs-slf4jのGitHub Pageを作りました。このブログではこのプロジェクトについて日本語で紹介したいと思います。 概要 拙作PMDプラグインをもとに、2012年8月から実装を開始したfindbugsプラグイン SLF4J利用時のよくあるトラブルを未然に防ぎ…

How to track state of operand stack by FindBugs 3.0.1

Yesterday I released findbugs-slf4j v1.2.0, which supports more useful analysis based on OpcodeStackDetector. Here I will summarize my problem and solution. What is TOP? Problem is that my detector could not track state of OpcodeStack, bec…

My acts on the WWW in 2013

I will summarize my online actions in this year. Old articles are below: My acts on the WWW in 2011 (Japanese) My acts on the WWW in 2012 personal products I have released several personal products, and 4 of them are important to explain m…

3行で解説するSLF4Jの使い方

すみません、この前のエントリでSLF4JというかJavaのロギングがとてもややこしいものだという印象を残してしまったようです。そんなことないので、ログ出力の使い方についてさくっと説明することで誤解を解きたいと思います。 SLF4Jでログを出すのは、たった…

Javaライブラリを配布する際のログ周りにおける配慮と実践

2020-07-22更新: 以下の投稿で情報をアップデートしています。 https://blog.kengo-toda.jp/entry/2020/07/21/223136 いつも購読させていただいている id:teppeis さんのブックマークに以下のエントリが流れてきて、なるほどこいつはたしかに厄介だと思いま…

SLF4Jが可変長引数をサポート

Javaのログ系ライブラリSLF4Jが、今月6日にリリースされた1.7.0で可変長引数をサポートしました。つまり今まで自分でObject配列を作っていた部分を、可変長引数でシンプルに書き直せるということです。 公式ML ニュース(最新情報) SLF4Jをご存じない方にこ…