0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Node.js + Expressの環境にロギング機能を追加してみる。

Last updated at Posted at 2022-02-11

log4jsのブログ用ヘッダー.001.jpeg

Node.jsとExpressで構築したWebサーバーにロギング出力の設定を追加する。

今回は、Node.jsとExpressで構築したWebサーバーにロギング出力設定を追加してみたので
その設定の流れを共有してみたいと思います。

準備

  1. log4jsをインストールする。
  2. ログ出力用の設定ファイルを作成する。
  3. Webサーバーを起動させるファイルに設定を追加する。
  4. ログを出力したい箇所にlogger.debug()メソッドを突っ込む。

ソースコード

今回のソースコードは下記リポジトリを利用しました。

1.log4jsのインストール

まずは、下記コマンドでlog4jsをインストールします。
npm install log4js

2. ログ出力用の設定ファイルの作成

次にログ出力用の設定ファイルを用意します。参考サイトなどを参考に次のように設定しました。

{
    "appenders": { 
          "server": { 
                "type": "file", 
                "filename": "./server/log/server.log" 
          } 
    },
    "categories": { 
          "default": { 
                "appenders": ["server"], 
                "level": "debug" 
          } 
    }
}

3. Webサーバーを起動させるファイルに設定を追加

ここまでできたらいよいよWebサーバー用のファイルにログを使用するための設定を追加していきます。
筆者の環境の場合は、server.jsに次のように追加しました。

// Webサーバーの起動
const express = require('express');
var log4js = require('log4js');

// log4jsの設定
log4js.configure('./server/log/log4js_setting.json');
const logger = log4js.getLogger("server");

4. ログを出力したい箇所にlogger.debug()メソッドを突っ込む

3.まで完了したらあとは、ログを出力したい箇所にlogger.debug()メソッドを突っ込みます。

logger.debug('起動しました', `https://localhost:${portNo}`)

うまくできていれば、server.logというファイル名が作成され、次のように出力されているはずです。

[2022-02-11T13:49:44.393] [DEBUG] server - 起動しました https://localhost:3001

最後に

今回は、Node.jsとExpressで構築したWebサーバーにロギング機能を追加してみました。
思ったよりも簡単に設定ができたのでこの記事が参考になれば幸いです。
よろしくお願いいたします。

参考にさせていただいたサイト

今回使用したiroha_front_appについては、こちらの記事で紹介させていただいているのであわせて
確認していただければ幸いです。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?