チケット #523 (closed 新機能・拡張: fixed)

登録: 12 年 前

最終更新: 11 年 前

API追加:ログ関連API

報告者: shinomiya 担当者: shinomiya
優先度: major マイルストーン: 0.1.2
コンポーネント: im-jssp バージョン: 0.1.2
キーワード: 関係者: shinomiya

チケットの概要 (最終更新者: shinomiya)

  • SLF4J log4j をラップするイメージ
    • ロガーの実装には、LogBack?を利用
  • 例外発生時にスタックトレースを別ファイルとして切り出したい。
    • im-jsspの範囲外なので却下。
      • LogBack?の独自Layoutとして、いづれim-commonsで実装したい。

添付ファイル

mylyn-context.zip (0.9 kB) - shinomiya によって 2008/03/05 21:46:17 に登録されました。
mylyn/context/zip
mylyn-context.2.zip (1.2 kB) - shinomiya によって 2008/03/05 23:21:27 に登録されました。
mylyn/context/zip

チケットの履歴

2007/12/21 00:13:21 更新者:shinomiya

  • ステータスnew から assigned に更新されました。
  • 説明 が更新されました。

2007/12/21 16:09:40 更新者:shinomiya

[149] 関数外でgetLogger()した場合NullPointerException?となる問題はまだ完全に解決していません。
include()やload()で実行されるJSの関数外でgetLogger()した際のロガー名が不正です。

ScriptScopeBuilderImpl#getScriptScope()内のScript#exec()実行時に、oij.script.ScriptScope#current?()が取得できるようにする必要があります。

2007/12/25 16:08:20 更新者:shinomiya

  • 関係者shinomiya に更新されました。
  • バージョン未定 から 0.1.2(開発中) に更新されました。
  • マイルストーン0.1.2 に更新されました。

2007/12/25 18:08:21 更新者:shinomiya

  • ステータスassigned から closed に更新されました。
  • 解決方法fixed に更新されました。

ログAPIを追加しました。

関連するチェンジセット

2007/12/27 16:44:59 更新者:shinomiya

  • ステータスclosed から reopened に更新されました。
  • 解決方法 が削除されました。

MDCのラッパー作成を行います。

2007/12/27 17:39:26 更新者:shinomiya

  • ステータスreopened から closed に更新されました。
  • 解決方法fixed に更新されました。

LoggerMDCを追加しました。[156], [157], [158]

JSファイル内で

LoggerMDC.put("remote_host_test", Web.getRemoteHost());

var logger1 = Logger.getLogger();
logger1.info("ログ出力");

と記述し、

logback.xmlにて

<configuration>
	<appender name="STDOUT"
		class="ch.qos.logback.core.ConsoleAppender">
		<layout class="ch.qos.logback.classic.PatternLayout">
			<pattern>%msg %X{remote_host_test} %n</pattern>
		</layout>
	</appender>

	<root>
		<level value="info" />
		<appender-ref ref="STDOUT" />
	</root>
</configuration>

と設定すると、

remote_host_testというキーに紐づいた値がログに出力されるようになります。(以下は、ログ出力例です)

ログ出力 192.168.108.28

2008/03/05 09:37:38 更新者:shinomiya

  • ステータスclosed から reopened に更新されました。
  • 解決方法 が削除されました。

ログ出力メソッド(例:Logger#info(String))の引数に、String以外のオブジェクトが渡された場合でも、なんらかのログを出力するように変更する。

現状、以下のようになっている。

568: if(isNullOrUndefined(arg0) || !(arg0 instanceof String) ){
569:         return;
570: }

参照 → (Rev:172)LoggerObject.javaの568行目

これを以下のように変更する。

出力内容
String 渡された文字列
null 文字列「null」
undefined 文字列「undefined」
上記以外 オブジェクトをtoString()した値

2008/03/05 21:46:17 更新者:shinomiya

  • 添付ファイル mylyn-context.zip が登録されました。

mylyn/context/zip

2008/03/05 23:21:27 更新者:shinomiya

  • 添付ファイル mylyn-context.2.zip が登録されました。

2008/03/05 23:21:27 更新者:shinomiya

コンテキスト添付のテスト。 LoggerObject?.javaだけだったコンテキストに、logger_main.jsを追加しました。

2008/03/05 23:21:27 更新者:shinomiya

mylyn/context/zip

2008/07/21 01:45:58 更新者:shinomiya

渡されたJSオブジェクト内のプロパティに、Javaの例外が含まれていた場合の対応を追加。[300]

2008/09/04 21:22:19 更新者:shinomiya

  • ステータスreopened から closed に更新されました。
  • 解決方法fixed に更新されました。

サンプルでの動作確認OKです。

2008/09/05 14:55:01 更新者:shinomiya

  • コンポーネントim-jssp-extention から im-jssp に更新されました。