Hitachi

OpenTP1 Version 7 分散トランザクション処理機能 OpenTP1 システム定義


ログサービス定義

〈このページの構成〉

形式

set形式

〔set log_filesize=メッセージログファイルの最大サイズ〕
〔set log_msg_console=Y|N〕
〔set log_msg_allno=Y|N〕
〔set log_msg_prcid=Y|N〕
〔set log_msg_prcno=Y|N〕
〔set log_msg_sysid=Y|N〕
〔set log_msg_date=Y|N〕
〔set log_msg_time=Y|N〕
〔set log_msg_hostname=Y|N〕
〔set log_msg_pgmid=Y|N〕
〔set log_jp1_allno=Y|N〕
〔set log_jp1_prcid=Y|N〕
〔set log_jp1_prcno=Y|N〕
〔set log_jp1_sysid=Y|N〕
〔set log_jp1_date=Y|N〕
〔set log_jp1_time=Y|N〕
〔set log_jp1_hostname=Y|N〕
〔set log_jp1_pgmid=Y|N〕
〔set log_notify_out=Y|N〕
〔set log_notify_allno=Y|N〕
〔set log_notify_prcid=Y|N〕
〔set log_notify_prcno=Y|N〕
〔set log_notify_sysid=Y|N〕
〔set log_notify_date=Y|N〕
〔set log_notify_time=Y|N〕
〔set log_notify_hostname=Y|N〕
〔set log_notify_pgmid=Y|N〕
〔set log_jerr_rint=メッセージログ出力抑止回数〕
〔set log_syslog_out=syslog出力レベル〕
〔set log_syslog_allno=Y|N〕
〔set log_syslog_prcid=Y|N〕
〔set log_syslog_prcno=Y|N〕
〔set log_syslog_sysid=Y|N〕
〔set log_syslog_date=Y|N〕
〔set log_syslog_time=Y|N〕
〔set log_syslog_hostname=Y|N〕
〔set log_syslog_pgmid=Y|N〕
〔set log_syslog_append_nodeid=Y|N〕
〔set log_syslog_elist=syslog失敗リストのエレメント数〕
〔set log_syslog_elist_rint=syslog失敗リストを定期的に出力する間隔〕
〔set log_syslog_synchro=Y|N〕
〔set log_audit_out=Y|N〕
〔set log_audit_path=監査ログファイルの出力先ディレクトリ〕
〔set log_audit_size=監査ログファイルの最大サイズ〕
〔set log_audit_count=監査ログファイルの最大数〕
〔set log_audit_message=監査ログを取得する項目のメッセージID
                     〔,監査ログを取得する項目のメッセージID〕…〕
〔set watch_time=最大応答待ち時間〕

コマンド形式

なし。

putenv形式

〔putenv TZ タイムゾーン〕
〔putenv DCSYSLOGOUT 1|1以外の文字列〕
〔putenv DCLOGDEFPID 1|1以外の文字列〕

機能

メッセージログの出力など,次に示すログサービス機能に関する環境を定義します。

説明

set形式のオペランド

log_filesize=メッセージログファイルの最大サイズ

 〜〈符号なし整数〉((1〜32767))《10240》(単位:キロバイト)

メッセージログファイルの最大サイズを指定します。ログサービスごとに二つのメッセージログファイルがあります。指定した最大サイズに達したら,メッセージログファイルを切り替えます。

log_msg_console=Y|N

 〜《Y》

リアルタイム出力機能を使用するかどうかを指定します。

Y

リアルタイム出力機能を使用します。

N

リアルタイム出力機能を使用しません。

Yを指定したときだけ,以下のオペランド(log_msg_xxxx)の指定が有効になります。

log_msg_allno=Y|N

 〜《N》

リアルタイム出力機能を使用する時に,メッセージログのシステム内のメッセージ通番を付けるかどうかを指定します。

Y

メッセージログのシステム内のメッセージ通番を付けます。

N

メッセージログのシステム内のメッセージ通番を付けません。

log_msg_prcid=Y|N

 〜《N》

リアルタイム出力機能を使用する時に,要求元のプロセスのプロセスIDを付けるかどうかを指定します。

Y

要求元のプロセスのプロセスIDを付けます。

N

要求元のプロセスのプロセスIDを付けません。

log_msg_prcno=Y|N

 〜《N》

リアルタイム出力機能を使用する時に,メッセージログのプロセス内のメッセージ通番を付けるかどうかを指定します。

Y

メッセージログのプロセス内のメッセージ通番を付けます。

N

メッセージログのプロセス内のメッセージ通番を付けません。

log_msg_sysid=Y|N

 〜《Y》

リアルタイム出力機能を使用する時に,OpenTP1識別子を付けるかどうかを指定します。

Y

OpenTP1識別子を付けます。

N

OpenTP1識別子を付けません。

log_msg_date=Y|N

 〜《Y》

リアルタイム出力機能を使用する時に,メッセージログの出力要求時の日付を付けるかどうかを指定します。

Y

メッセージログの出力要求時の日付を付けます。

N

メッセージログの出力要求時の日付を付けません。

log_msg_time=Y|N

 〜《Y》

リアルタイム出力機能を使用する時に,メッセージログの出力要求時の時刻を付けるかどうかを指定します。

Y

メッセージログの出力要求時の時刻を付けます。

N

メッセージログの出力要求時の時刻を付けません。

log_msg_hostname=Y|N

 〜《Y》

リアルタイム出力機能を使用する時に,メッセージログの出力要求元のホスト名を付けるかどうかを指定します。

Y

メッセージログの出力要求元のホスト名を付けます。

N

メッセージログの出力要求元のホスト名を付けません。

log_msg_pgmid=Y|N

 〜《Y》

リアルタイム出力機能を使用する時に,メッセージログの出力要求元のプログラムIDを付けるかどうかを指定します。

Y

メッセージログの出力要求元のプログラムIDを付けます。

N

メッセージログの出力要求元のプログラムIDを付けません。

log_jp1_allno=Y|N

 〜《N》

JP1イベントサービス機能に出力する場合,メッセージログのシステム内の通番を付けるかどうかを指定します。

Y

メッセージログのシステム内の通番を付けます。

N

メッセージログのシステム内の通番を付けません。

log_jp1_prcid=Y|N

 〜《N》

JP1イベントサービス機能に出力する場合,メッセージログのプロセスIDを付けるかどうかを指定します。

Y

メッセージログのプロセスIDを付けます。

N

メッセージログのプロセスIDを付けません。

log_jp1_prcno=Y|N

 〜《N》

JP1イベントサービス機能に出力する場合,メッセージログのプロセス内の通番を付けるかどうかを指定します。

Y

メッセージログのプロセス内の通番を付けます。

N

メッセージログのプロセス内の通番を付けません。

log_jp1_sysid=Y|N

 〜《Y》

JP1イベントサービス機能に出力する場合,OpenTP1識別子を付けるかどうかを指定します。

Y

OpenTP1識別子を付けます。

N

OpenTP1識別子を付けません。

log_jp1_date=Y|N

 〜《Y》

JP1イベントサービス機能に出力する場合,メッセージログの出力要求時の日付を付けるかどうかを指定します。

Y

メッセージログの出力要求時の日付を付けます。

N

メッセージログの出力要求時の日付を付けません。

log_jp1_time=Y|N

 〜《Y》

JP1イベントサービス機能に出力する場合,メッセージログの出力要求時の時刻を付けるかどうかを指定します。

Y

メッセージログの出力要求時の時刻を付けます。

N

メッセージログの出力要求時の時刻を付けません。

log_jp1_hostname=Y|N

 〜《Y》

JP1イベントサービス機能に出力する場合,メッセージログの出力要求元のホスト名を付けるかどうかを指定します。

Y

メッセージログの出力要求元のホスト名を付けます。

N

メッセージログの出力要求元のホスト名を付けません。

log_jp1_pgmid=Y|N

 〜《Y》

JP1イベントサービス機能に出力する場合,メッセージログの出力要求元のプログラムIDを付けるかどうかを指定します。

Y

メッセージログの出力要求元のプログラムIDを付けます。

N

メッセージログの出力要求元のプログラムIDを付けません。

log_notify_out=Y|N

 〜《N》

メッセージログ通知機能を使用するかどうかを指定します。

Y

メッセージログ通知機能を使用します。

N

メッセージログ通知機能を使用しません。

Yを指定したときだけ,以下のオペランド(log_notify_xxxx)の指定が有効になります。

log_notify_allno=Y|N

 〜《N》

メッセージログ通知機能を使用するときに,メッセージログのシステム内の通番を付けるかどうかを指定します。

Y

メッセージログのシステム内の通番を付けます。

N

メッセージログのシステム内の通番を付けません。

log_notify_prcid=Y|N

 〜《N》

メッセージログ通知機能を使用するときに,要求元のプロセスのプロセスIDを付けるかどうかを指定します。

Y

要求元のプロセスのプロセスIDを付けます。

N

要求元のプロセスのプロセスIDを付けません。

log_notify_prcno=Y|N

 〜《N》

メッセージログ通知機能を使用するときに,メッセージログのプロセス内の通番を付けるかどうかを指定します。

Y

メッセージログのプロセス内の通番を付けます。

N

メッセージログのプロセス内の通番を付けません。

log_notify_sysid=Y|N

 〜《Y》

メッセージログ通知機能を使用するときに,OpenTP1識別子を付けるかどうかを指定します。

Y

OpenTP1識別子を付けます。

N

OpenTP1識別子を付けません。

log_notify_date=Y|N

 〜《Y》

メッセージログ通知機能を使用するときに,メッセージログの出力要求時の日付を付けるかどうかを指定します。

Y

メッセージログの出力要求時の日付を付けます。

N

メッセージログの出力要求時の日付を付けません。

log_notify_time=Y|N

 〜《Y》

メッセージログ通知機能を使用するときに,メッセージログの出力要求時の時刻を付けるかどうかを指定します。

Y

メッセージログの出力要求時の時刻を付けます。

N

メッセージログの出力要求時の時刻を付けません。

log_notify_hostname=Y|N

 〜《Y》

メッセージログ通知機能を使用するときに,メッセージログの出力要求元のホスト名を付けるかどうかを指定します。

Y

メッセージログの出力要求元のホスト名を付けます。

N

メッセージログの出力要求元のホスト名を付けません。

log_notify_pgmid=Y|N

 〜《Y》

メッセージログ通知機能を使用するときに,メッセージログの出力要求元のプログラムIDを付けるかどうかを指定します。

Y

メッセージログの出力要求元のプログラムIDを付けます。

N

メッセージログの出力要求元のプログラムIDを付けません。

log_jerr_rint=メッセージログ出力抑止回数

 〜〈符号なし整数〉((1〜65536))《32》

JP1イベントサービス機能へメッセージログ出力中に,エラーが発生した場合のメッセージログ出力抑止回数を指定します。

JP1イベントサービス機能へメッセージログ出力中に,エラーが発生した場合,エラー発生後のメッセージログ出力は,log_jerr_rintオペランドに指定した回数分抑止し,再び出力を試みます。

log_syslog_out=syslog出力レベル

 〜〈符号なし整数〉((0〜2))《1》

ログファイルへ出力される全メッセージについて,syslogへ出力要求するレベル(種類)を指定します。

0

メッセージをsyslogへ出力要求しません。

1

メッセージの種類が-Eおよび-Wの場合だけsyslogへ出力要求します。

2

全メッセージをsyslogへ出力要求します。

1または2の指定は,環境変数DCSYSLOGOUTに1が指定されている場合に有効となります。

以降に指定するlog_syslog_xxxxオペランドは,log_syslog_outオペランドに1または2を指定した場合に有効となります。

このオペランドを指定することで,UAPから発行されるdc_logprint関数で出力するメッセージを制御できます。ただし,それ以外のメッセージについては完全には制御できません。そのため,環境変数DCSYSLOGOUTに1を指定した場合,このオペランドに0または1を指定しても,抑止対象のメッセージがsyslogへ出力されることがあります。

syslogに出力されるメッセージを完全に制御する場合,syslogdの構成ファイルの設定を変更する必要があります。

OpenTP1では,次の情報を付加してsyslogへ出力要求を行います。syslogへの出力を完全に制御する場合は,これらの情報を基にsyslogdの構成ファイルの設定を変更してください。

  • syslogのfacility:LOG_USER

  • syslogのlevel

    メッセージの種類が-Eの場合:LOG_ERR

    メッセージの種類が-Wの場合:LOG_WARNING

    メッセージの種類が-Iの場合:LOG_INFO

    メッセージの種類が-Rの場合:LOG_NOTICE

syslogへのメッセージ出力可否を,OS別に次に示します。

OS

syslogへの出力

日本語環境

英語環境

AIX

HP-UX (IPF)

HP-UX (PA-RISC)

×

Linux

Solaris

×

Windows

(凡例)

○:出力できます。

×:出力できません。

−:対象外です。

log_syslog_allno=Y|N

 〜《N》

syslog出力機能を使用するときに,メッセージログのシステム内の通番を付けるかどうかを指定します。

Y

メッセージログのシステム内の通番を付けます。

N

メッセージログのシステム内の通番を付けません。

log_syslog_prcid=Y|N

 〜《N》

syslog出力機能を使用するときに,要求元のプロセスのプロセスIDを付けるかどうかを指定します。

Y

要求元のプロセスのプロセスIDを付けます。

N

要求元のプロセスのプロセスIDを付けません。

log_syslog_prcno=Y|N

 〜《N》

syslog出力機能を使用するときに,メッセージログのプロセス内の通番を付けるかどうかを指定します。

Y

メッセージログのプロセス内の通番を付けます。

N

メッセージログのプロセス内の通番を付けません。

log_syslog_sysid=Y|N

 〜《N》

syslog出力機能を使用するときに,OpenTP1識別子を付けるかどうかを指定します。

Y

OpenTP1識別子を付けます。

N

OpenTP1識別子を付けません。

log_syslog_date=Y|N

 〜《N》

syslog出力機能を使用するときに,メッセージログの出力要求時の日付を付けるかどうかを指定します。

Y

メッセージログの出力要求時の日付を付けます。

N

メッセージログの出力要求時の日付を付けません。

log_syslog_time=Y|N

 〜《N》

syslog出力機能を使用するときに,メッセージログの出力要求時の時刻を付けるかどうかを指定します。

Y

メッセージログの出力要求時の時刻を付けます。

N

メッセージログの出力要求時の時刻を付けません。

log_syslog_hostname=Y|N

 〜《N》

syslog出力機能を使用するときに,メッセージログの出力要求元のホスト名を付けるかどうかを指定します。

Y

メッセージログの出力要求元のホスト名を付けます。

N

メッセージログの出力要求元のホスト名を付けません。

log_syslog_pgmid=Y|N

 〜《N》

syslog出力機能を使用するときに,メッセージログの出力要求元のプログラムIDを付けるかどうかを指定します。

Y

メッセージログの出力要求元のプログラムIDを付けます。

N

メッセージログの出力要求元のプログラムIDを付けません。

log_syslog_append_nodeid=Y|N

 〜《N》

syslog出力機能を使用するときに,ノード識別子を付けるかどうかを指定します。

Y

ノード識別子を付けます。

N

ノード識別子を付けません。

log_syslog_elist=syslog失敗リストのエレメント数

 〜〈符号なし整数〉((0〜65536))《0》

ログサービスがsyslogファイルへの出力に失敗した場合に,該当するメッセージをリトライタイミングまで保管するメモリキューのエレメント数を指定します。

syslog失敗リストが満杯になった状態で,新たにメッセージを保管する必要が生じた場合は,保管されている最も古いメッセージを削除したあと,新しいメッセージを保管します。

1エレメントのサイズは512バイトです。

このオペランドは,1以上の値を指定し,log_syslog_outオペランドでも1以上の値を指定した場合だけ,有効になります。

syslog失敗リストに保管されているメッセージを定期的に出力する間隔は,log_syslog_elist_rintオペランドで指定します。

この機能は,AIXおよびLinuxで使用できます。なお,Linuxでこの機能を使用する場合は,拡張SYSLOG機能が必要となります。拡張SYSLOG機能がインストールされていない場合や,拡張SYSLOG機能が動作しない環境では,この機能は使用できません。

注※

拡張SYSLOG機能はサポートサービス(SD-LS100-FR1N1またはSD-LS200-FR1N1)で提供するプログラムです。

log_syslog_elist_rint=syslog失敗リストを定期的に出力する間隔

 〜〈符号なし整数〉((0〜65536))《0》(単位:秒)

syslog失敗リストに保管されているメッセージを,定期的にsyslogファイルに出力するための間隔を指定します。

このオペランドで0を指定した場合,syslog失敗リストに保管されているメッセージをsyslogファイルに定期的に出力することはできません。

このオペランドは,log_syslog_outオペランドおよびlog_syslog_elistオペランドで1以上の値を指定した場合だけ有効になります。

この機能は,AIXおよびLinuxで使用できます。なお,Linuxでこの機能を使用する場合は,拡張SYSLOG機能が必要となります。拡張SYSLOG機能をインストールしていない場合や,拡張SYSLOG機能が動作しない環境では,この機能は使用できません。

注※

拡張SYSLOG機能はサポートサービス(SD-LS100-FR1N1またはSD-LS200-FR1N1)で提供するプログラムです。

log_syslog_synchro=Y|N

 〜《N》

syslog出力機能を使用しているときにログサーバへの通信に失敗した場合,該当するメッセージログを関連オペランド(log_syslog_xxxx)に従ったフォーマットでsyslogに出力するかどうかを指定します。

ただし,log_syslog_allnoオペランドに限り無効であり,指定した場合は空白になります。

Y

関連オペランドに従ったフォーマットで出力します。

N

関連オペランドに従ったフォーマットで出力しません。

log_audit_out=Y|N

 〜《N》

監査ログ機能を使用するかどうかを指定します。

Y

監査ログ機能を使用します。

N

監査ログ機能を使用しません。

Yを指定したときだけ,以降のオペランド(log_audit_xxxx)の指定が有効になります。

log_audit_path=監査ログファイルの出力先ディレクトリ

 〜〈1〜63文字のパス名〉《$DCDIR/auditlog》

監査ログ機能を使用する場合に,監査ログファイルを出力するディレクトリを絶対パスで指定します。ただし,共有ディスク上のディレクトリは指定しないでください。なお,最下層のディレクトリは,dcauditsetupコマンドによって作成されますが,上位ディレクトリは事前に準備しておく必要があります。

このオペランドで指定したパスを構成する各ディレクトリのアクセス権限は,ユーザ,グループ,およびその他のユーザのすべてに実行権限が必要です。実行権限がない場合,監査ログの出力でエラーになることがあります。

このオペランドに指定するディレクトリには,監査ログファイルを格納できるディスク容量が必要です。監査ログファイルを格納するディレクトリに必要なディスク容量の計算式を次に示します。

ディスク容量(単位:メガバイト)=監査ログファイルの最大サイズ×監査ログファイルの最大数

このオペランドは,log_audit_outオペランドにYを指定した場合に有効です。

log_audit_size=監査ログファイルの最大サイズ

 〜〈符号なし整数〉((1〜2047))《10》(単位:メガバイト)

監査ログ機能を使用する場合に,監査ログファイルの最大サイズを指定します。監査ログファイルのサイズが指定値に達した場合には,出力先ファイルの切り替えを行います。

このオペランドは,log_audit_outオペランドにYを指定した場合に有効です。

log_audit_count=監査ログファイルの最大数

 〜〈符号なし整数〉((1〜256))《2》

監査ログ機能を使用する場合に,監査ログファイルの最大数を指定します。

監査ログの出力先ファイルを切り替える時点で,ファイル数(ログファイル数+バックアップログファイル数)がこのオペランドの指定値を超える場合は,最も古いファイルを削除します。

このオペランドの指定値とバックアップログファイル名の対応を次の表に示します。

表3‒8 log_audit_countオペランドの指定値とバックアップログファイル名

log_audit_countオペランドの指定値

バックアップログファイル名

1

バックアップログファイルは作成されません。

2〜256

audit001.log〜audit255.log

このオペランドの指定値が大きいほど出力先ファイル切り替え時のオーバヘッドが大きくなるため注意してください。

このオペランドは,log_audit_outオペランドにYを指定した場合に有効です。

log_audit_message=監査ログを取得する項目のメッセージID〔,監査ログを取得する項目のメッセージID〕…

 〜〈符号なし整数〉((33400〜99999))

監査ログを取得する項目のメッセージIDを33400〜99999の範囲で指定します。指定できるメッセージIDは最大2048個です。

このオペランドで指定できるメッセージIDについては,「付録C 監査イベントを取得する定義」を参照してください。

なお,このオペランドは,ユーザサービス定義,rapリスナーサービス定義,およびユーザサービスデフォルト定義でも指定できます。指定値の優先順位は次のとおりです(1.>2.>3.)。

  1. ユーザサービス定義またはrapリスナーサービス定義

  2. ユーザサービスデフォルト定義

  3. ログサービス定義

このオペランドは,log_audit_outオペランドにYを指定した場合に有効です。

watch_time=最大応答待ち時間

 〜〈符号なし整数〉((0〜65535))(単位:秒)

RPCによってプロセス間で通信する場合,サービス要求を送信してからサービスの応答が返るまでの待ち時間の最大値を指定します。

OpenTP1の終了処理で,このオペランドで指定した時間だけ終了処理を待ち合わせる場合があります。したがって,大きな値を指定した場合,OpenTP1の終了処理に時間が掛かることがあります。

指定時間を過ぎても応答がない場合は,RPCは送受信タイムアウトとしてエラーリターンします。

0を指定した場合は,応答を受信するまで待ち続けます。0を指定した場合,OpenTP1が終了しないことがあります。

省略した場合は,システム共通定義のwatch_timeオペランドの値を仮定します。

このオペランドは,システム共通定義のwatch_timeオペランドのデフォルト値で使用してください。

特別なチューニングを必要とする場合以外は,このオペランドの内容を変更しないことをお勧めします。

システム共通定義のwatch_timeオペランドのデフォルト値よりも,極端に小さな値または大きな値を指定すると,OpenTP1ダウンに至る障害が発生する場合がありますので,ご注意ください。

コマンド形式

なし。

putenv形式のオペランド

TZ タイムゾーン

 〜〈文字列〉

環境変数TZを設定します。

タイムゾーンとは,時刻などを表示する場合の環境を設定するものです。

日本の標準時間を表示する場合は,タイムゾーンにJST-9を指定します。

このオペランドで指定したタイムゾーンと,コマンドを実行する環境のタイムゾーンは一致させてください。一致していない場合,syslogの時刻が正しく出力されません。

このオペランドを変更する場合は,dcsetupコマンド(-dn)で一度OSへの登録を削除し,dcsetupコマンドで再度登録してください。

注※

dcresetコマンドでは変更が反映されません。

DCSYSLOGOUT 1|1以外の文字列

syslogへメッセージを出力するかどうかを指定します。

syslogへメッセージを出力する場合は,環境変数DCSYSLOGOUTに1を指定します。1以外の文字列を指定した場合や,このオペランドの指定を省略した場合は,syslogへメッセージを出力しません。

出力制御については,log_syslog_outオペランドの説明を参照してください。

DCLOGDEFPID 1|1以外の文字列

メッセージログ出力時に,要求元のプロセスのプロセスIDを従来フォーマットで表示するかどうかを指定します。

従来フォーマットで表示する場合は,環境変数DCLOGDEFPIDに1を指定します。1以外の文字列を指定した場合や,このオペランドの指定を省略した場合は,従来フォーマットで表示しません。

バージョン07-51からヘッダ情報として付けるプロセスIDは半角数字10けたで右詰め表示となります。

従来フォーマットである半角数字5けたで表示したいときは,このオペランドに1を指定してください。

なお,このオペランドはログサービス定義以外には指定しないでください。

この機能を有効にしてプロセスIDを従来フォーマットに戻すと,6けた以上のプロセスIDを持つプロセスからのメッセージ出力でメッセージの付加情報がずれて表示されるなど,従来バージョンと同様の影響があります。

ただし,LinuxやHP-UXの場合は,カーネルパラメタでプロセスIDの上限を設定することで,この影響を防止できます。なお,カーネルパラメタでの対応ができない場合は,プロセス数の上限が全体で5けた以内に収まるような環境下で運用することを推奨します。

この機能は,OSがAIXの場合は無効となります(AIX版のOpenTP1では旧バージョンよりプロセスIDの上限は10けたです)。

注※

割り当てられるプロセスIDの上限を設定するカーネルパラメタの有無や仕様は,OSの種別によって異なります。詳細については,使用しているOSのマニュアルを参照してください。

注意事項

  1. syslogに出力できるメッセージ長は,511バイトまでです。512バイト以降のメッセージは切り捨てられます。なお,HP-UX(PA-RISC)版およびSolaris版については,255バイトまでです。

  2. ログサービス定義のオペランドによってはYを指定すると,ユーザメッセージの前にヘッダ情報が付きます。このため,ヘッダ情報の分,syslogに出力できるユーザメッセージのデータ量は少なくなります。

    Yを指定した場合にヘッダ情報が付与されるオペランドと,ヘッダ情報として付与されるバイト数を次の表に示します。なお,バイト数には区切りのスペースを含みます。さらにヘッダ情報には,メッセージIDの12バイトが付与されます。

    オペランド

    ヘッダ情報として付与されるバイト数

    log_syslog_allno

    8

    log_syslog_prcid

    11または6

    log_syslog_prcno

    8

    log_syslog_sysid

    3

    log_syslog_date

    11

    log_syslog_time

    9

    log_syslog_hostname

    9

    log_syslog_pgmid

    4

    log_syslog_append_nodeid

    5

    注※

    ログサービス定義の環境変数DCLOGDEFPIDに1を指定した場合,6バイトが付与されます。

  3. 512バイト以降のメッセージが切リ捨てられた場合,syslogに出力されている最後の文字が複数バイトのときは,正しく表示されないことがあります。

  4. ログサービスに対して一度に大量のメッセージの出力を要求すると,出力先のファイル種別や関連製品の特性によっては,一時的にバッファ不足などのエラーとなり,メッセージが出力できない場合があります。この場合,ログサービスとしては,一時的に出力先を標準エラー出力に切り替えたり,メッセージの出力を抑止したりするなどの制御をします。このため,一定期間,目的のファイルにメッセージが出力されないことがあります。

    一方,メッセージの出力頻度や全体のメッセージ量は,システムのスループットにも依存します。このため,一般的に,CPUや関連するハードウェアの性能が上がると単位時間当たりのメッセージ出力量も増えることがあります。

    また,運用面では,一度に起動または停止するユーザサーバの数が非常に多い場合や,UAPからのメッセージが多量に出力されたり一時期に集中して出力されたりするような場合は,メッセージの量が問題になることがあります。

    このような場合は,メッセージの出力量を削減したり,メッセージの出力先を変更したりしてください。

    注※

    製品によっては,処理できる最大の処理件数が明示されているものもあります。出力先に応じ,関連製品の仕様を確認してください。

  5. メッセージログ通知機能を使用する場合も,4.の注意事項と同様ですのでご注意ください。ログサービスからUAPへのメッセージログの送信で一時的にバッファ不足などのエラーが発生した場合,ログサービスとしてはメッセージを再送しないで次のメッセージを処理します。このため,UAPで受信できる処理能力を超えて一度に多量のメッセージ出力要求がログサービスに対して行われるような場合は,メッセージが消失するおそれがあります。