Shoeisha Technology Media

CodeZine(コードジン)

特集ページ一覧

log4netでデバッグや障害解析に役立つログを出力する

.NET環境における効果的なログ出力

  • LINEで送る
  • このエントリーをはてなブックマークに追加

アプリケーションの挙動を確かめるために、メッセージボックスを表示させたり、デバッグウィンドウにメッセージを出力していませんでしょうか。log4netを使用するともっと簡単に効果的なログ出力が可能になります。

目次

はじめに

 本稿では、開発から運用まで一貫して利用できるロギングライブラリの「log4net」を紹介します。

 読者の皆さんは、アプリケーションの挙動を確かめるために、メッセージボックスを表示(MessageBox.Show)させたり、デバッグウィンドウにメッセージを出力(Console.WriteLine)していませんでしょうか。これらの方法は手軽な反面、リリース前にMessageBox.Showをコメントアウトしなければいけない、Console.WriteLineの出力メッセージを実行形式のモジュールから見ることができないなど、本番運用には適しているとはいえません。しかし、log4netを使用すると簡単に効果的なログ出力が可能になります。

対象読者

 .NETにて開発を行っている方を対象としています。

必要な環境

 サンプルはVisual Studio .NET 2003で作成され、.NET Framework 1.1、log4net 1.2.0 beta8で動作確認をしています。

サンプルアプリケーションの概要

 サンプルアプリケーションはWindowsアプリケーションで、実行すると小さなウィンドウが起動します。真ん中のボタンをクリックするとlog4netによって様々なログが出力されます。

 このサンプルアプリケーションには、あらかじめlog4netが同梱されているため、改めてlog4netを入手する必要はありません。「Log4netSample.exe.config(App.config)」の下部の<appender-ref>のコメントアウトを外すことで、DBへのログ出力・イベント出力・メール送信などを簡単に確認できます。

log4netの特長と入手方法

 log4netはJavaで有名な「log4j」を.NETに移植したロギングライブラリです。設定ファイルを変更するだけで動的に出力先(ファイル・メール・イベントログなど)とメッセージのフォーマットを切り替えることができます。またAPIがシンプルなので使い方を覚えるのが簡単で、ログ出力に伴う負荷(コスト)が少ないこともメリットといえるでしょう。

 log4netはオープンソースなのでWebサイトから入手することができます。入手するにはApacheのlog4netのホームページにアクセスします。ファイル「log4net-1.2.0-beta8.zip」を解凍して、「bin」フォルダから利用環境に応じた「log4net.dll」を使用します。

log4netのフォルダ構成
log4netのフォルダ構成

  • LINEで送る
  • このエントリーをはてなブックマークに追加

著者プロフィール

  • WINGSプロジェクト 青木 淳夫 (株式会社ネクストスケープ)(アオキ アツオ)

    <WINGSプロジェクトについて> 有限会社 WINGSプロジェクトが運営する、テクニカル執筆コミュニティ(代表 山田祥寛)。主にWeb開発分野の書籍/記事執筆、翻訳、講演等を幅広く手がける。2018年11月時点での登録メンバは55名で、現在も執筆メンバを募集中。興味のある方は、どしどし応募頂...

  • 山田 祥寛(ヤマダ ヨシヒロ)

    静岡県榛原町生まれ。一橋大学経済学部卒業後、NECにてシステム企画業務に携わるが、2003年4月に念願かなってフリーライターに転身。Microsoft MVP for ASP/ASP.NET。執筆コミュニティ「WINGSプロジェクト」代表。 主な著書に「入門シリーズ(サーバサイドAjax/XMLD...

All contents copyright © 2005-2018 Shoeisha Co., Ltd. All rights reserved. ver.1.5