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]
ヘッドライン
- 京大ら、宇宙天気予報の基礎となる太陽嵐のモデリングに成功[20:09 3/17]サイエンス
- IBMら、環境的に持続可能な新しいプラスチックに向けた研究成果を発表[19:40 3/17]サイエンス
- 東北大、従来比で桁違いに特性の優れたCNT-TFTの作製方法を開発[19:09 3/17]エレクトロニクス
- CSR、Androidスマートフォン開発用ソフトプラットフォームを発表[18:06 3/17]エレクトロニクス
- Cプログラムをデバッグする基本的な方法[17:37 3/17]プログラミング
- Avnet、DSP設計向け「Virtex-6 FPGA DSP開発キット」を発表[17:32 3/17]エレクトロニクス
- Intel、32nmプロセス採用サーバ向けプロセッサ「Xeon 5600番台」を発表[17:03 3/17]エレクトロニクス
- PHP6開発 UTF-16化を断念、5.3へロールバック[16:35 3/17]プログラミング
- 日立、Xeon 5600番台搭載のブレードサーバ「BladeSymphony」を発表[16:35 3/17]サーバとストレージ
- STMicro、ハイパワートランジスタ用プラスチックパッケージを発表[16:23 3/17]エレクトロニクス



