biz-Streamマニュアル Webサービスサーバ ガイド 第3章 ログ設定 3.3.1 Webサービスサーバにおけるログ機能

3.3.1 Webサービスサーバにおけるログ機能

Webサービスサーバへ、クライアントアプリケーションからSOAPでアクセスされた際に、そのクライアント情報と操作情報を監査ログとして記録します。その際に記録する項目は下表を参照してください。記録時には別途フィルタリング設定をしておくことにより、そのフィルタ条件を満たすもののみログに残すことができ、かつ、項目毎にログに記録する・しないを設定することができます。


soap.log

項目名説明フィルタリング
HostNameリクエストを送信したクライアントのホスト名指定可能
IpAddressリクエストを送信したクライアントのIPアドレス 指定可能
ServiceWSSのサービス名指定可能
OperationWSSのオペレーション名指定可能
RequestEnvelope ※1SOAPリクエスト・エンベロープ指定不可能
ResponseEnvelope ※1SOAPレスポンス・エンベロープ指定不可能
RequestTimeリクエストを受け付けたシステム時刻指定可能
Userリクエストを送信したクライアントのユーザ名
ただし、ユーザ認証を経てアクセスされた場合に限る
指定可能
UserDefロギング設定サービス経由で設定した値
HTTPのリクエストにてパラメータ名"UserDef"として設定された文字列が使用される
指定可能
  • ※1インストール時のデフォルト状態では出力されません。SOAPレスポンス・エンベロープは実際に生成されたPDFファイルの内容を含むため、ファイルのデータ量に応じて大量のログが出力されます。
    一時的な動作確認のためにこのログを出力する場合は、以下のようにlogback.xmlの「SOAP Log definitions」内のコメントアウト個所をコメントインする必要があります。動作確認後は設定を元に戻してください。
変更前
	<!--
		SOAP Log definitions
	-->
	<appender name="SOAP_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
		<file>${log.dir}/soap.log</file>
		<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
			<FileNamePattern>${log.dir}/soap.%d{yyyy-MM-dd}.log</FileNamePattern>
		</rollingPolicy>
		<encoder>
			<Pattern>%X{RequestTime} %d{yyyy-MM-dd HH:mm:ss.SSS} %X{HostName} %X{IpAddress} %X{Service} %X{Operation} %X{User} %X{UserDef}%n</Pattern>
			<!--
			<Pattern>%X{RequestTime} %d{yyyy-MM-dd HH:mm:ss.SSS} %X{HostName} %X{IpAddress} %X{Service} %X{Operation} %X{User} %X{UserDef}%n%X{RequestEnvelope}%n%X{ResponseEnvelope}%n</Pattern>
			-->
			<charset>UTF-8</charset>
		</encoder>
	</appender>
	<logger name="com.brainsellers.webservices.logging.LogHandler" additivity="false" level="INFO">
		<appender-ref ref="SOAP_FILE" />
	</logger>
変更後
	<!--
		SOAP Log definitions
	-->
	<appender name="SOAP_FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
		<file>${log.dir}/soap.log</file>
		<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
			<FileNamePattern>${log.dir}/soap.%d{yyyy-MM-dd}.log</FileNamePattern>
		</rollingPolicy>
		<encoder>
			<!--
			<Pattern>%X{RequestTime} %d{yyyy-MM-dd HH:mm:ss.SSS} %X{HostName} %X{IpAddress} %X{Service} %X{Operation} %X{User} %X{UserDef}%n</Pattern>
			-->
			<Pattern>%X{RequestTime} %d{yyyy-MM-dd HH:mm:ss.SSS} %X{HostName} %X{IpAddress} %X{Service} %X{Operation} %X{User} %X{UserDef}%n%X{RequestEnvelope}%n%X{ResponseEnvelope}%n</Pattern>

			<charset>UTF-8</charset>
		</encoder>
	</appender>
	<logger name="com.brainsellers.webservices.logging.LogHandler" additivity="false" level="INFO">
		<appender-ref ref="SOAP_FILE" />
	</logger>