拡張機能でのロギングの有効化

拡張機能でロギングを有効にして、取得で実行した際の拡張機能についての診断情報を得ることができます。拡張機能は、共通のロギング・フレームワークのいずれかを使用して、<インストール・パス>\IAS\workspace\logs\ias-service.logファイルに書き込みます。

サポートされているロギング・フレームワーク

Integrator Acquisition Systemでは次のロギング・フレームワークをサポートしています。
  • SLF4J
  • Apache Commons Logging
  • java.util.logging
  • log4j

SLF4Jフレームワークのパラメータ化されたロギングでは、無効にされたログ文のパフォーマンスへの影響を最小限に抑えられるため、SLF4Jフレームワークをお薦めします。詳細は、http://www.slf4j.orgのSLF4Jのドキュメントを参照してください。

ロギングの統合

統合はきわめて透過的です。ロギング・フレームワークをPipelineComponentRuntimeにインポートし、getLogger()をコールします。フレームワークのいずれかからロギング要求があった場合、Integrator Acquisition Systemがこの要求を検出し、それらの要求を、IASがias-service.logへの書込みに使用するlog4jにリダイレクトします。

たとえば、SLF4Jを使用している場合、統合は次のようになります。
import org.slf4j.LoggerFactory
...

LoggerFactory.getLogger(getClass()).info("A logging message.");

ログ・レベルの変更

ログ・レベルは、<インストール・パス>\IAS\workspace\conf\ias-service-log4j.propertieslog4j.logger.<loggerName>プロパティを修正することにより変更できます。デフォルトのログ・レベルはWARNに設定されています。

たとえば、次のlog4jエントリは、サンプルのサブストリング・マニピュレータに対してログ・レベルをDEBUGに設定しています。
log4j.logger.com.endeca.ias.extension.sample.manipulator.substring.SubstringManipulatorRuntime=DEBUG

変更後、ias-service-log4j.propertiesファイルを保存して閉じます。変更を有効にするには、Endeca IAS Serviceを再起動する必要があります。

データソースの構成のログ・レベル設定

データソースにはデフォルトで高度な構成プロパティが含まれているため、これらのプロパティをPipelineComponentConfigurationクラスのJavaフィールドとして実装する必要はありません。データ開発者は、これらのプロパティをIAS Serverコマンドライン・ユーティリティやIAS Server APIを使用して設定できます。ログ・レベル設定は、ロギング・クロール履歴などのデータ収集の高レベルな側面に適用されますが、データソース拡張機能自体には適用されません。