アプリケーション開発でのSQLログ
アプリケーションの開発をしている時、実行されたSQLのログを参照したい場面がありますよね。
想定外のSQLが実行されていないか確認したり、ボトルネックとなっているSQLを確認したりなど。
Spring BootではそのようなSQLの実行ログを簡単に見ることができます。
今回の方法は、Spring Data JPAでデータベースへのアクセスをするものとします。
application.ymlでの設定
手順としては、application.ymlに以下を書き込むだけです。
logging: level: org: hibernate: SQL: DEBUG type: descriptor: sql: BasicBinder: TRACE
Spring Data JPAは内部的にhibernateで実装されているために、hibernateのログ設定になるんですね。
あとは通常通りサーバを起動させればOKです。
実際に処理を動かしてみると、以下のようなログが出力されることでしょう。
2018-10-16 17:59:53.321 DEBUG 14383 --- [nio-8080-exec-2] org.hibernate.SQL : SELECT ... 2018-10-16 17:59:53.321 TRACE 14383 --- [nio-8080-exec-2] o.h.type.descriptor.sql.BasicBinder : binding parameter [3] as [INTEGER] - [1]
とても簡単ですよね。
O/Rマッパーでのオブジェクトへのアクセスで、実際にどのようなクエリが実行されているのかを確認したい場合などに設定してみてください。
Fire TV Stick 4K - Alexa対応音声認識リモコン付属
- 発売日: 2018/12/12
- メディア: エレクトロニクス
Fire HD 10 タブレット (10インチHDディスプレイ) 64GB - Alexa搭載
- 発売日: 2017/10/11
- メディア: エレクトロニクス