JavaアプリケーションのログをRSSで配信 - Log4rss
2005/06/13
ThoughtWorks Open SourceのLog4rssプロジェクトは、JavaアプリケーションのログをRSS(RDF Site Summery)形式で記録するためのライブラリであるLog4rssを公開している。RSSはヘッドライン情報を記述するためのXMLフォーマットの一種で、コンテンツの最新情報を配信するために広く利用されている。これらのRSSはRSSリーダによって閲覧することができる。ユーザはRSSリーダに任意のサイトで提供されるRSSフィードを登録しておくことで、常にそのサイトの最新の情報を受け取ることが可能となる。
Log4rssを使用すれば、Javaアプリケーションの実行ログをRSS形式で出力することができる。したがって出力されるファイルをRSSリーダに登録しておくことで、アプリケーションの状態に変化があった場合即座にそれを知ることができる。
Log4rssはそれ単体がログ記録の機能を持つのではなく、Apacheプロジェクトによって提供されているLog4Jを利用する際のAppenderとして動作する。Log4JではLoggerがログを記録し、それを指定されたAppenderに対して出力する。Appenderは指定されたフォーマットでログを出力する機能を持つ。すなわちLog4Jを使用する際にAppenderとしてLog4rssを指定するだけで、ログをRSS形式で出力することができる。これらの指定は設定ファイルで行うため、プログラムそのものはLog4Jを使用する場合と同じで構わない。
設定ファイルは、例えばXML形式でリスト1のように記述する。
リスト1 : 設定ファイルの記述例
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
<appender name="rssappender" class="org.apache.log4j.log4rss.RssAppender">
<param name="File" value="MyRssFeed.xml" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d %-5p %c - %m [%t] (%F:%L)%n"/>
</layout>
</appender>
<root>
<level value="debug" />
<appender-ref ref="rssappender" />
</root>
</log4j:configuration>
使用するAppenderとしてLog4rssで提供されるものを指定している以外は、通常のLog4Jの設定ファイルと同様である。すなわち、この例ではMyRssFeed.xmlというファイルにログが出力される。これがRSSフィードとなるため、RSSリーダに登録しておけばログの監視を行うことができる。
リスト2 : Log4rssを利用するJavaプログラムの例
import org.apache.log4j.xml.DOMConfigurator;
public class Log4RssTest {
public static void main(String[] args) {
//Loggerを作成する。
Logger logger = Logger.getLogger(Log4RssTest.class);
//設定ファイルを読み込む
DOMConfigurator.configure("log4rss.xml");
logger.debug("It's debug log");
logger.info("It's info log");
logger.warn("It's warn log");
logger.error("It's error log");
logger.fatal("It's fatal log");
}
}
関連記事
- JavaのGUIをXMLから生成する gui4j 1.1公開[2005/6/9]
- WebObjects 5.3リリース - EOModelerがXcodeに統合、HTML 4.0.1をサポート[2005/6/7]
- JSFでAjaxを簡単に実現 - AjaxFaces 1.0公開[2005/6/7]
- 簡素なDIコンテナPicoContainer/NanoContainer次期バージョンへ開発進む[2005/6/6]
- HTML代替技術XAMJのリファレンス実装ブラウザ - Warrior 0.9公開[2005/6/1]
ヘッドライン
- Opera 10.5、ACID3に100/100パス[16:26 2/10]JavaScript / CSS / HTML
- FirePHPでPHPプログラミングを便利にする方法[14:03 2/10]プログラミング
- Active Directory誕生10周年記念セミナーが2月27日に開催[12:26 2/10]システム管理
- NEC、サイオスら、自動バックアップバック「TWIN NAS 2TB パック」発表[11:45 2/10]システム管理
- グレープシティ、"Excel機能"を提供する.NETコンポーネントの新版発表[11:22 2/10]プログラミング
- トレンドマイクロ、USBメモリ型ウイルス検索製品「Portable Security」発表[10:42 2/10]セキュリティ
- 【コラム】FileMaker×PHPで作る、簡単・便利なWebアプリ 第49回 結果セットの取扱いに特化したクラス、FileMaker_ResultSet(2)[10:18 2/10]プログラミング
- CSS/HTMLリファレンスマニュアル、最新ブラウザ互換情報[09:00 2/10]JavaScript / CSS / HTML
- 【レビュー】BOOK REVIEW - 現場に振り回されるだけのSE人生がイヤならチカラをつけよう[09:00 2/10]SE力
- 【レポート】暗号2010年問題に向け「いつまでに何をすべきか」 - ベリサインが説明[08:00 2/10]セキュリティ









