ログサービス定義
形式
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_netm_out=Y|N〕
〔set log_netm_allno=Y|N〕
〔set log_netm_prcid=Y|N〕
〔set log_netm_prcno=Y|N〕
〔set log_netm_sysid=Y|N〕
〔set log_netm_date=Y|N〕
〔set log_netm_time=Y|N〕
〔set log_netm_hostname=Y|N〕
〔set log_netm_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以外の文字列〕
機能
メッセージログの出力など,次に示すログサービス機能に関する環境を定義します。
説明
set形式のオペランド
●log_filesize=メッセージログファイルの最大サイズ
~〈符号なし整数〉((1~32767))《1024》(単位:キロバイト)
メッセージログファイルの最大サイズを指定します。ログサービスごとに二つのメッセージログファイルがあります。指定した最大サイズに達したら,メッセージログファイルを切り替えます。
●log_msg_console=Y|N
~《Y》
リアルタイム出力機能を使用するかどうかを指定します。
Yを指定したときだけ,以下のオペランド(log_msg_xxxx)の指定が有効になります。
●log_msg_allno=Y|N
~《N》
リアルタイム出力機能を使用する時に,メッセージログのシステム内のメッセージ通番を付けるかどうかを指定します。
●log_msg_prcid=Y|N
~《N》
リアルタイム出力機能を使用する時に,要求元のプロセスのプロセスIDを付けるかどうかを指定します。
●log_msg_prcno=Y|N
~《N》
リアルタイム出力機能を使用する時に,メッセージログのプロセス内のメッセージ通番を付けるかどうかを指定します。
●log_msg_sysid=Y|N
~《Y》
リアルタイム出力機能を使用する時に,OpenTP1識別子を付けるかどうかを指定します。
●log_msg_date=Y|N
~《Y》
リアルタイム出力機能を使用する時に,メッセージログの出力要求時の日付を付けるかどうかを指定します。
●log_msg_time=Y|N
~《Y》
リアルタイム出力機能を使用する時に,メッセージログの出力要求時の時刻を付けるかどうかを指定します。
●log_msg_hostname=Y|N
~《Y》
リアルタイム出力機能を使用する時に,メッセージログの出力要求元のホスト名を付けるかどうかを指定します。
●log_msg_pgmid=Y|N
~《Y》
リアルタイム出力機能を使用する時に,メッセージログの出力要求元のプログラムIDを付けるかどうかを指定します。
●log_netm_out=Y|N
~《N》
メッセージログをNETMに出力するかどうかを指定します。
Yを指定したときだけ,以下のオペランド(log_netm_xxxx)の指定が有効になります。
●log_netm_allno=Y|N
~《N》
NETMに出力する場合,メッセージログのシステム内の通番を付けるかどうかを指定します。
●log_netm_prcid=Y|N
~《N》
NETMに出力する場合,メッセージログのプロセスIDを付けるかどうかを指定します。
●log_netm_prcno=Y|N
~《N》
NETMに出力する場合,メッセージログのプロセス内の通番を付けるかどうかを指定します。
●log_netm_sysid=Y|N
~《Y》
NETMに出力する場合,OpenTP1識別子を付けるかどうかを指定します。
●log_netm_date=Y|N
~《Y》
NETMに出力する場合,メッセージログの出力要求時の日付を付けるかどうかを指定します。
●log_netm_time=Y|N
~《Y》
NETMに出力する場合,メッセージログの出力要求時の時刻を付けるかどうかを指定します。
●log_netm_hostname=Y|N
~《Y》
NETMに出力する場合,メッセージログの出力要求元のホスト名を付けるかどうかを指定します。
●log_netm_pgmid=Y|N
~《Y》
NETMに出力する場合,メッセージログの出力要求元のプログラムIDを付けるかどうかを指定します。
●log_jp1_allno=Y|N
~《N》
JP1イベントサービス機能に出力する場合,メッセージログのシステム内の通番を付けるかどうかを指定します。
●log_jp1_prcid=Y|N
~《N》
JP1イベントサービス機能に出力する場合,メッセージログのプロセスIDを付けるかどうかを指定します。
●log_jp1_prcno=Y|N
~《N》
JP1イベントサービス機能に出力する場合,メッセージログのプロセス内の通番を付けるかどうかを指定します。
●log_jp1_sysid=Y|N
~《Y》
JP1イベントサービス機能に出力する場合,OpenTP1識別子を付けるかどうかを指定します。
●log_jp1_date=Y|N
~《Y》
JP1イベントサービス機能に出力する場合,メッセージログの出力要求時の日付を付けるかどうかを指定します。
●log_jp1_time=Y|N
~《Y》
JP1イベントサービス機能に出力する場合,メッセージログの出力要求時の時刻を付けるかどうかを指定します。
●log_jp1_hostname=Y|N
~《Y》
JP1イベントサービス機能に出力する場合,メッセージログの出力要求元のホスト名を付けるかどうかを指定します。
●log_jp1_pgmid=Y|N
~《Y》
JP1イベントサービス機能に出力する場合,メッセージログの出力要求元のプログラムIDを付けるかどうかを指定します。
●log_notify_out=Y|N
~《N》
メッセージログ通知機能を使用するかどうかを指定します。
Yを指定したときだけ,以下のオペランド(log_notify_xxxx)の指定が有効になります。
●log_notify_allno=Y|N
~《N》
メッセージログ通知機能を使用するときに,メッセージログのシステム内の通番を付けるかどうかを指定します。
●log_notify_prcid=Y|N
~《N》
メッセージログ通知機能を使用するときに,要求元のプロセスのプロセスIDを付けるかどうかを指定します。
●log_notify_prcno=Y|N
~《N》
メッセージログ通知機能を使用するときに,メッセージログのプロセス内の通番を付けるかどうかを指定します。
●log_notify_sysid=Y|N
~《Y》
メッセージログ通知機能を使用するときに,OpenTP1識別子を付けるかどうかを指定します。
●log_notify_date=Y|N
~《Y》
メッセージログ通知機能を使用するときに,メッセージログの出力要求時の日付を付けるかどうかを指定します。
●log_notify_time=Y|N
~《Y》
メッセージログ通知機能を使用するときに,メッセージログの出力要求時の時刻を付けるかどうかを指定します。
●log_notify_hostname=Y|N
~《Y》
メッセージログ通知機能を使用するときに,メッセージログの出力要求元のホスト名を付けるかどうかを指定します。
●log_notify_pgmid=Y|N
~《Y》
メッセージログ通知機能を使用するときに,メッセージログの出力要求元のプログラムIDを付けるかどうかを指定します。
●log_jerr_rint=メッセージログ出力抑止回数
~〈符号なし整数〉((1~65536))《32》
JP1イベントサービス機能へメッセージログ出力中に,エラーが発生した場合のメッセージログ出力抑止回数を指定します。
JP1イベントサービス機能へメッセージログ出力中に,エラーが発生した場合,エラー発生後のメッセージログ出力は,log_jerr_rintオペランドに指定した回数分抑止し,再び出力を試みます。
●log_syslog_out=syslog出力レベル
~〈符号なし整数〉((0~2))《1》
ログファイルへ出力される全メッセージについて,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へのメッセージ出力可否を,OS別に次に示します。
OS | syslogへの出力 | |
---|---|---|
日本語環境 | 英語環境 | |
AIX | ○ | ○ |
HP-UX (IPF) | ○ | ○ |
HP-UX (PA-RISC) | × | ○ |
Linux | ○ | ○ |
Solaris | × | ○ |
Windows | - | - |
●log_syslog_allno=Y|N
~《N》
syslog出力機能を使用するときに,メッセージログのシステム内の通番を付けるかどうかを指定します。
●log_syslog_prcid=Y|N
~《N》
syslog出力機能を使用するときに,要求元のプロセスのプロセスIDを付けるかどうかを指定します。
●log_syslog_prcno=Y|N
~《N》
syslog出力機能を使用するときに,メッセージログのプロセス内の通番を付けるかどうかを指定します。
●log_syslog_sysid=Y|N
~《N》
syslog出力機能を使用するときに,OpenTP1識別子を付けるかどうかを指定します。
●log_syslog_date=Y|N
~《N》
syslog出力機能を使用するときに,メッセージログの出力要求時の日付を付けるかどうかを指定します。
●log_syslog_time=Y|N
~《N》
syslog出力機能を使用するときに,メッセージログの出力要求時の時刻を付けるかどうかを指定します。
●log_syslog_hostname=Y|N
~《N》
syslog出力機能を使用するときに,メッセージログの出力要求元のホスト名を付けるかどうかを指定します。
●log_syslog_pgmid=Y|N
~《N》
syslog出力機能を使用するときに,メッセージログの出力要求元のプログラムIDを付けるかどうかを指定します。
●log_syslog_append_nodeid=Y|N
~《N》
syslog出力機能を使用するときに,ノード識別子を付けるかどうかを指定します。
●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機能が動作しない環境では,この機能は使用できません。
●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機能が動作しない環境では,この機能は使用できません。
●log_syslog_synchro=Y|N
~《N》
syslog出力機能を使用しているときにログサーバへの通信に失敗した場合,該当するメッセージログを関連オペランド(log_syslog_xxxx)に従ったフォーマットでsyslogに出力するかどうかを指定します。
ただし,log_syslog_allnoオペランドに限り無効であり,指定した場合は空白になります。
●log_audit_out=Y|N
~《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-6 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.)。
このオペランドは,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コマンド※で再度登録してください。
●DCSYSLOGOUT 1|1以外の文字列
syslogへメッセージを出力するかどうかを指定します。
syslogへメッセージを出力する場合は,環境変数DCSYSLOGOUTに1を指定します。1以外の文字列を指定した場合や,このオペランドの指定を省略した場合は,syslogへメッセージを出力しません。
出力制御については,log_syslog_outオペランドの説明を参照してください。
注意事項
オペランド | ヘッダ情報として付与されるバイト数 |
---|---|
log_syslog_allno | 8 |
log_syslog_prcid | 6または11(11はAIX版の場合だけ) |
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 |