Tips

今日の開発Tips(2025-06-16)

ロギングはデバッグや監視に不可欠です。適切なログレベルとメッセージを設定することで、問題の迅速な特定とアプリケーションの動作状況の把握が容易になります。特にエラー発生時のスタックトレース出力は、原因究明に役立ちます。

ログ出力のベストプラクティス

効果的なログ出力は、開発効率とアプリケーションの安定性に大きく貢献します。 適切なログレベル(DEBUG、INFO、WARN、ERRORなど)を使用し、ログメッセージにはコンテキスト情報(日時、ファイル名、関数名、エラーメッセージなど)を含めるようにしましょう。

const log = require('loglevel'); // または、console.log を使用

function myFunction(data) {
  log.info(`myFunction called with data: ${JSON.stringify(data)}`); // INFOレベルログ
  try {
    // 処理
    if (data.length === 0) {
      log.warn('Input data is empty.'); // WARNレベルログ
    }
    // ...処理...
  } catch (error) {
    log.error(`Error in myFunction: ${error.stack}`); // ERRORレベルログ、スタックトレースを含む
  }
}

注意点:

  • ログレベルを使い分けることで、重要な情報を見落とすことを防ぎ、ログの肥大化を防ぎます。
  • プロダクション環境では、DEBUGレベルのログは出力しないように設定変更する必要があります。
  • 個人情報や機密情報はログに出力しないように注意しましょう。
  • ログ出力に過剰なリソースを消費しないように注意しましょう。

おすすめポイント:

専用のロギングライブラリ(例:loglevel、Winston)を使用することで、ログ出力の管理が容易になります。 ログレベルや出力先(ファイル、コンソールなど)を柔軟に設定できます。