日々常々

ふつうのプログラマがあたりまえにしたいこと。

SpringBoot3.4の構造化ログ #kanjava

関ジャバ'25 1月度で話したスライドと軽いコメント、イベントの話です。

speakerdeck.com

  • 構造化ログが標準機能に入った
  • 構造化ログを使ったことがない人は始めるいい機会
  • 久々のテクいセッション(ただし需要)

概ね書いてるので補足はいらないかなと。

とりあえずやってみる程度であればスライドに書いているのでいけると思いますが、プロダクトで対応する際はSpringBootのリファレンスを読んでください。場所は Spring Boot / Reference /Core Features / Logging / Structured Logging です。

SpringBootのコードを読みたい方は、主に以下の org.springframework.boot.logging.structuredorg.springframework.boot.json です。「コードはIDEで読むでしょ」って思っていましたが、今回くらいのであればブラウザでも読める程度かなと思います。

紹介しているサービスデザインパターンはこれ。2012年の本で、新品はなさげ。そんな厚くない&読みやすかったので好きなんですけどねぇ。

サンプルコードは……実用的なのないし下手に真似られてもーなんで、スライドだけに留めます。

スライドに乗せてるMDCの解放について。 irof.hateblo.jp

あとMDC使う時のスレッド間引き継ぎ云々の話は「そもそもやりたいこと」あたりで書いてます。 irof.hateblo.jp

ハイライト

主催側が一部にだけ言及するのってどうなんだろうとか思ったりしなくはないんだけど、全部書いてるとあれなので許してください。どれも面白かったです。やっぱご時世柄か生成AIの話が多かったんです。

  • 【朗報】Spring AIを使えばJavaエンジニアでも生成AIと遊べるぞ
    • 一番最初のバージョンが出た時にチラッとみて「うーん?」って思ってたんですが、使いたくなるくらいまで来ていました。これは救世主(メシア)。
    • 「※MCPまわりは絶賛コードリーディング中なので説明が雑」とサラッと読むのが前提になっているあたり、久々だったけど「うらがみさんはうらがみさんだなぁ」と安心しました。
  • AIエージェントとBowlingGameKataやってみた
    • 一発で答えに行くの生成AIあるあるで、TDDのベイビーステップと歩幅合わないのなるほど感。まぁ人間もそういうのしがちだし、ステップひとつひとつの学習とかもそういう観点じゃしなさそうだし、そういうもんかなぁと。
    • 動いてるのをしっかり時間とって見たいやつでした。

イベントについて

「スピーカーはベテランばっかだし」とゆるふわでやってたら、全員30分じゃ終わらない(どうみても各々1時間コースでしょこれ)ものを携えてきていました。 中身スカスカでショートするよりはいいんですが、全員一部スキップみたいな感じになり、2セッションにしとけばよかったかなぁとか思いました。 セッション募集枠もうひとつとってたけど、入らなくてよかった(入ってたら事前調整もうちょっとちゃんとしたと思うけど)

LTを試験的に入れてみました。 進行が雑で時間すぎちゃったとか、カウントダウンの仕方がスコーンと抜けてしまってて、ぐだぐだでした。ほんと申し訳ない。

MOTEXさんに200人の会場をお貸しいただきました。ありがとうございます。 なんと座席の1割も埋まりました。前回お借りした時から倍増です。やったね(目を逸らしながら