素敵なサムシングを独断と偏見で一方的に紹介するブログ(´・ω・`)

投稿日: 2019年4月28日
最終更新日:

【SpringBoot2】Logbackで環境ごとにログファイルを出し分けするやり方【log4jの後継種】

YouTubeも見てね♪

ねこじゃすり

created by Rinker
PEPPY(ペピイ)
¥3,850 (2024/03/15 19:03:46時点 Amazon調べ-詳細)

猫を魅了する魔法の装備品!

ペヤング ソースやきそば 120g×18個

created by Rinker
ペヤング
¥2,600 (2024/03/15 19:03:46時点 Amazon調べ-詳細)

とりあえず保存食として買っておけば間違いなし!

レッドブル エナジードリンク 250ml×24本

created by Rinker
Red Bull(レッドブル)
¥4,080 (2024/03/15 19:03:47時点 Amazon調べ-詳細)

翼を授けよう!

ドラゴンクエスト メタリックモンスターズギャラリー メタルキング

created by Rinker
スクウェア・エニックス(SQUARE ENIX)
¥3,250 (2024/03/15 19:03:48時点 Amazon調べ-詳細)

みんな大好き経験値の塊をデスクに常備しておこう!

Bauhutte ( バウヒュッテ ) 昇降式 L字デスク ブラック BHD-670H-BK

created by Rinker
Bauhutte(バウヒュッテ)
¥13,861 (2024/03/15 15:06:46時点 Amazon調べ-詳細)

メインデスクの横に置くのにぴったりなおしゃれな可動式ラック!

BANDAI SPIRITS ULTIMAGEAR 遊戯王 千年パズル 1/1スケール

created by Rinker
BANDAI SPIRITS(バンダイ スピリッツ)
¥7,180 (2024/03/15 15:06:46時点 Amazon調べ-詳細)

もう一人の僕を呼び覚ませ!!

サンディスク microSD 128GB

スマホからSwitchまで使える大容量MicroSDカード!

ロギングを環境ごとに分けよう

org.springframework.boot:spring-boot-starter-webの依存関係を追加してSpringBootで開発を行う場合、デフォルトでLogbackというロギングライブラリを採用します。

Logbackとは、Log4jの開発者が作った新しめのJava製のロギングライブラリです。

SpringBootとの親和性がとても高く、ログのフォーマット指定やローテート、出力先や環境ごとの切り替えなどがとても簡単に設定をすることが出来ますので、今回はそちらをご紹介していきます。

手順

logback-spring.xmlの作成

まずはクラスパス配下にlogback-spring.xmlを配置しましょう。

layout.xmlの作成

次に、上記ファイルでincludeしている各環境ごとのログレイアウトファイルを用意します。

今回は各環境ごとのフォルダを生成してその中にログファイルを吐き出すようにしてみます。

確認

この状態で各プロファイルごとにアプリケーションを実行すると、以下のように設定ファイルに沿ってログが出力されるようになります。

フォーマットも指定通りになっていますね♪

[local][INFO ] 2019-04-28 12:15:26.777 o.a.coyote.http11.Http11NioProtocol - Starting ProtocolHandler ["http-nio-8080"]

一つのファイルで環境分けする事も可能

今回はプロファイル単位でファイルを用意してincludeしていますが、一つのファイル内で完結させる事も可能です。

終わりに

以上のように、簡単にログフォーマットの変更や環境ごとの設定を分けることが出来ました。

他にもローテートの設定や保存期間の設定なども細かく出来るのでぜひ試してみてください♪

CATEGORIES & TAGS

IT