Hitachi

OpenTP1 Version 7 分散トランザクション処理機能 OpenTP1 プログラム作成リファレンス COBOL言語編


CBLDCADT('PRINT ')

〈このページの構成〉

名称

監査ログの出力

形式

PROCEDURE DIVISIONの指定

CALL 'CBLDCADT' USING 一意名1 一意名2 一意名3

DATA DIVISIONの指定

01 一意名1.
   02 データ名A  PIC X(8) VALUE 'PRINT   '.
   02 データ名B  PIC X(5).
   02 FILLER    PIC X(3).
   02 データ名Z  PIC S9(9) COMP VALUE ZERO.
01 一意名2.
   02 データ名C  PIC X(12).
   02 データ名D  PIC X(3).
   02 FILLER    PIC X(1).
   02 データ名E  PIC S9(9) COMP.
   02 データ名F  PIC S9(9) COMP.
   02 データ名G  PIC S9(9) COMP.
01 一意名3.
   02 データ名H  PIC S9(9) COMP.
   02 データ名I  PIC X(n).

機能

引数に設定した情報に,OpenTP1でヘッダ情報,通番,日時,発生プログラム名,発生プロセスID,発生場所,サブジェクト識別情報,オブジェクト情報,オブジェクトロケーション情報,リクエスト送信元ホスト,ロケーション識別情報を付けて,監査ログファイルに出力します。出力する監査ログの発生プログラム名はOpenTP1です。監査ログの出力処理でエラーが発生した場合,エラーメッセージを標準エラー出力およびsyslogに出力します。

OpenTP1では,CBLDCADT('PRINT ')で使うメッセージID用に,34000から34999までの範囲の番号を割り当てています。UAPから出力するメッセージIDの番号には,34000から34999までの範囲の値を付与してください。

監査ログの出力項目については,マニュアル「OpenTP1 プログラム作成の手引」を参照してください。

UAPで値を設定するデータ領域

●データ名A

監査ログの出力要求を示す要求コードを「VALUE 'PRINT△△△'」と設定します。

●データ名Z

0を設定します。

●データ名C

監査ログごとに付けられる識別子(メッセージID)を設定します。

「KFCAn1n2n3n4n5−x」の形式(11文字)で,最後に空白文字を付けて設定します。UAPから出力する通番(n1n2n3n4n5の部分)には,34000から34999までの間の数値を設定します。xの部分には,出力する監査ログの内容によってメッセージの種類(「E」,「W」,または「I」)を指定してください。

●データ名D

監査ログを出力したUAPを識別する任意の値(要求元プログラムID)を設定します。英数字2文字で,最後は空白文字で終わらせて設定します。使用できる文字は,数字,英字,または記号の2文字で,最後はヌル文字で終わらせて設定します。監査ログには,先頭にアスタリスク(*)が付いて,「*AA」の形式で出力されます(AAはデータ名Dで指定した文字列です)。

●データ名E

監査ログに出力する「監査事象種別」の値を設定します。次の数値のどれかを設定します。

監査事象種別

数値

意味

StartStop

1000

「起動・停止」の監査事象を表します。

Authentication

1001

「識別・認証」の監査事象を表します。

AccessControl

1002

「アクセス制御」の監査事象を表します。

ConfigurationAccess

1003

「構成定義」の監査事象を表します。

Failure

1004

「障害」の監査事象を表します。

LinkStatus

1005

「リンク状態」の監査事象を表します。

ExternalService

1006

「外部サービス」の監査事象を表します。

ContentAccess

1007

「重要情報アクセス」の監査事象を表します。

Maintenance

1008

「保守」の監査事象を表します。

AnomalyEvent

1009

「異常事象」の監査事象を表します。

ManagementAction

1010

「管理動作」の監査事象を表します。

監査事象種別の詳細については,マニュアル「OpenTP1 運用と操作」を参照してください。

●データ名F

監査ログに出力する「監査事象結果」の値を設定します。次の数値のどれかを設定します。

監査事象結果

数値

意味

Success

2000

事象の成功を表します。

Failure

2001

事象の失敗を表します。

Occurrence

2002

成功または失敗の分類がない事象の発生を表します。

●データ名G

監査ログに出力する「動作情報」の値を設定します。データ名Eに指定した「監査事象種別」と対応した,次の数値のどれかを設定します。0を指定した場合,この項目は出力されません。

表2‒1 監査事象種別と予約語の対応

監査事象種別

予約語

数値

意味

StartStop(起動・停止)

Start

3000

開始・起動

Stop

3001

終了・停止

Authentication(識別・認証)

Login

3002

ログイン

Logout

3003

ログアウト

Logon

3004

ログオン

Logoff

3005

ログオフ

Disable

3006

アカウントの無効化

AccessControl(アクセス制御)

Enforce

3007

実施

ConfigurationAccess

(構成定義)

Refer

3008

参照

Add

3009

追加

Update

3010

更新

Delete

3011

削除

Failure(障害)

Occur

3012

発生

LinkStatus(リンク状態)

Up

3013

リンク活性

Down

3014

リンク非活性

ExternalService(外部サービス)

Request

3015

要求

Response

3016

応答

Send

3017

発信

Receive

3018

受信

ContentAccess

(重要情報アクセス)

Refer

3008

参照

Add

3009

追加

Update

3010

更新

Delete

3011

削除

Maintenance(保守)

Install

3019

インストール

Uninstall

3020

アンインストール

Update

3010

更新(アップデート)

Backup

3021

バックアップ

Maintain

3022

保守作業

AnomalyEvent(異常事象)

Occur

3012

発生

ManagementAction(管理動作)

Invoke

3023

(管理者の)呼び出し

Notify

3024

(管理者への)通知

●データ名H

監査ログに出力する「自由記述」の文字列の長さを設定します。0を設定した場合は,この項目は出力されません。

●データ名I

監査ログに出力する「自由記述」の値を設定します。

使用できる文字は数字,英字,記号,スペース,引用符("),およびコンマ(,)です。最大1,024文字です。

データ名Iの表示内容には指定した情報の先頭と末尾に引用符(")が付与されます。また,文字列中に引用符(")がある場合は,その文字の前に引用符(")が付与されます。

OpenTP1で値を設定するデータ領域

●データ名B

ステータスコードが,5けたの数字で返されます。

ステータスコード

ステータスコード

意味

00001

監査ログの出力が無効になっています。次に示すことが考えられます。

  • ログサービス定義のlog_audit_outオペランドにNを指定しているか,またはlog_audit_outオペランドの指定がありません。

  • ユーザサービス定義,またはユーザサービスデフォルト定義のどちらかでlog_audit_out_suppressオペランドにYが指定されています。

次のどれかの定義ファイルで,データ名Cで指定したメッセージIDがlog_audit_messageオペランドに指定されていません。

  • ログサービス定義

  • ユーザサービス定義

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

規定された範囲外のメッセージを指定しています。

00000

正常に終了しました。

01900

データ領域に設定した値が間違っています。

01904

定義解析に失敗しました。

01999

dc_rpc_open関数が発行されていません。

01997

上記以外のエラーが発生しました。

注意事項

CBLDCRSV('MAINLOOP')が終了したあとでCBLDCADT('PRINT ')を呼び出した場合,リクエスト送信元ホストには,最後に要求したCBLDCRPC('CALL ')発行元ノードのアドレスが取得されます。