UPDATE ALERT CONFIGURATION コマンド (ADMIN_CMD プロシージャーを使用)
UPDATE ALERT CONFIGURATION コマンドは、ヘルス・インディケーターのアラート構成設定を更新します。
重要: バージョン 9.7 でヘルス・モニターが非推奨になったため、このコマンドおよび API は推奨されておらず、将来のリリースで除去される可能性があります。これはDb2®
pureScale®環境ではサポートされていません。 詳しくは、
ヘルス・モニターが推奨されなくなったを参照してください。
許可
以下の権限のいずれか。
- SYSADM
- SYSMAINT
- SYSCTRL
必要な接続
データベース
コマンド構文
コマンド・パラメーター
- DATABASE MANAGER
- データベース・マネージャーのアラート設定を更新します。
- DATABASES
- データベース・マネージャーによって管理されるすべてのデータベースのアラート設定を更新します。 これは、カスタム設定を持たないすべてのデータベースに適用される設定です。 カスタム設定は、DATABASE ON database-alias 節を使って定義されます。
- CONTAINERS
- データベース・マネージャーによって管理されるすべての表スペース・コンテナーのアラート設定を更新します。 これは、カスタム設定を持たないすべての表スペース・コンテナーに適用される設定です。 カスタム設定は、CONTAINER container-name ON database-alias 節を使って定義されます。
- TABLESPACES
- データベース・マネージャーによって管理されるすべての表スペースのアラート設定を更新します。 これは、カスタム設定を持たないすべての表スペースに適用される設定です。 カスタム設定は、TABLESPACE tblspace-name ON database-alias 節を使って定義されます。
- DATABASE ON database-alias
- ON database-alias 節を使って指定したデータベースのアラート設定を更新します。 このデータベースがカスタム設定を持つ場合、 インスタンスの全データベースの設定をオーバーライドします。 これは、DATABASES パラメーターを使って指定されます。
- CONTAINER container-name FOR tblspace-name ON database-alias
- ON database-alias 節を使って指定したデータベース上で、FOR tblspace-name 節を使って指定した表スペースの、container-name という名前の表スペース・コンテナーのアラート設定を更新します。 この表スペース・コンテナーがカスタム設定を持つ場合、データベースの全表スペース・コンテナーの設定をオーバーライドします。これは、CONTAINERS パラメーターを使って指定されます。
- TABLESPACE tblspace-name ON database-alias
- ON database-alias 節を使って指定したデータベース上で、name という名前の表スペースのアラート設定を更新します。 この表スペースがカスタム設定を持つ場合、データベースの全表スペースの設定をオーバーライドします。これは、TABLESPACES パラメーターを使って指定されます。
- USING health-indicator-name
- アラート構成が更新されるヘルス・インディケーターのセットを指定します。
ヘルス・インディケーター名は 2 文字のオブジェクト ID で構成され、
その後にインディケーターの測定対象を説明する名前が続きます。
以下に例を示します。
db.sort_privmem_util - SET parameter-name value
- ヘルス・インディケーターのアラート構成エレメント parameter-name を、
指定した値に更新します。
parameter-name は以下の値のどれかになります。
- ALARM: value はヘルス・インディケーター・ユニット。
- WARNING: value はヘルス・インディケーター・ユニット。
- SENSITIVITY: value は秒単位。
- ACTIONSENABLED: value は YES または NO。
- THRESHOLDSCHECKED: value は YES または NO。
特定の Db2 バージョンについて可能性のあるヘルス・インディケーター・ユニットのリストは、以下の照会を実行することにより収集できます。SELECT SUBSTR(UNIT,1,80) AS UNIT FROM TABLE(HEALTH_GET_IND_DEFINITION('')) AS T GROUP BY UNIT - UPDATE ACTION SCRIPT pathname ON [WARNING | ALARM | ALLALERT | ATTENTION state]
- 絶対パス名 pathname を持つ定義済みスクリプトのスクリプト属性が以下の節に従って更新されるように指定します。
- SET parameter-name value
- スクリプト属性 parameter-name を、指定した値に更新します。
parameter-name は以下の値のどれかになります。
- SCRIPTTYPE
有効なタイプは OS または DB2。
- WORKINGDIR
- TERMCHAR
-
CMDLINEPARMS オペレーティング・システム・スクリプトに対して指定するコマンド行パラメーターが、デフォルトで指定されるパラメーターに先行します。 オペレーティング・システム・スクリプトに送られるパラメーターは、以下のとおりです。
- ユーザーの指定するパラメーターのリスト
- ヘルス・インディケーターの短縮名
- 完全修飾オブジェクト名
- ヘルス・インディケーターの値
- アラート状態
- USERID
- PASSWORD
- SYSTEM
- SCRIPTTYPE
- UPDATE ACTION TASK task-name ON [WARNING | ALARM | ALLALERT | ATTENTION state]
- 名前 name を持つタスクのタスク属性が以下の節に従って更新されるように指定します。
- SET parameter-name value
- タスク属性 parameter-name を、指定した値に更新します。parameter-name は以下の値のどれかになります。
- USERID
- PASSWORD
- SYSTEM
- DELETE ACTION SCRIPT pathname ON [WARNING | ALARM | ALLALERT | ATTENTION state]
- アラート・アクション・スクリプトから、 絶対パス名 pathname を持つアクション・スクリプトを除去します。
- DELETE ACTION TASK task-name ON [WARNING | ALARM | ALLALERT | ATTENTION state]
- アラート・アクション・タスクのリストから name という名前のアクション・タスクを除去します。
- ADD ACTION SCRIPT pathname ON [WARNING | ALARM | ALLALERT | ATTENTION state]
- 絶対パス名 pathname を持つ新規アクション・スクリプトが追加されるように指定します。
その属性は、以下のように指定されます。
- TYPE
- アクション・スクリプトは、
Db2 コマンド・スクリプトか、オペレーティング・システム・スクリプトのいずれかでなければなりません。
- Db2
- OPERATING SYSTEM
Db2 コマンド・スクリプトの場合、以下の節を使用することにより、 オプションで文字 character を指定することができます。 この文字は、ステートメントを終了するのにスクリプト内で使用されます。STATEMENT TERMINATION CHARACTER ;オペレーティング・システム・スクリプトの場合、 以下の節を使用することにより、 オプションでコマンド行パラメーター parms を指定することができます。 これは、呼び出しの際にスクリプトに渡されます。 COMMAND LINE PARAMETERS parms
- WORKING DIRECTORY pathname
- スクリプトが実行されるディレクトリーの絶対パス名 pathname を指定します。
- USER username USING password
- スクリプトが実行される際のユーザー・アカウント username、 およびそれに関連したパスワード password を指定します。 ADD ACTION オプションを使用する場合、username および password が、(username および password が暗号化されずに送信される) ネットワーク、db2diag ログ・ファイル、トレース・ファイル、ダンプ・ファイル、スナップショット・モニター (動的 SQL スナップショット)、システム・モニター・スナップショット、いくつかのイベント・モニター (ステートメントやデッドロックなど)、Explain 表、db2pd 出力 (パッケージ・キャッシュやロック・タイムアウト・メカニズムなど)、および Db2 監査レコードに露出する可能性があります。
- ADD ACTION TASK name ON [WARNING | ALARM | ALLALERT | ATTENTION state]
- 指定した条件を ON にして name という新規タスクを追加し、実行することを指定します。
- ON [WARNING | ALARM | ALLALERT | ATTENTION state]
- アクションまたはタスクが実行される条件を指定します。
しきい値ベースのヘルス・インディケーター (HI) の場合、これは WARNING または ALARM になります。
状態ベースの HI の場合、これは、各状態ベースの HI ごとに記されている数値状態 (例えば、ts.ts_op_status ヘルス・インディケーターの場合は、表スペース状態の tablespace_state モニター・エレメントを参照してください) か、この状態を表すテキストの ID となります。ALLALERTS は、しきい値ベースの HI と状態ベースの HI に関する状態の変更を処理します (例えば、警告から正常への状態変更)。
- ATTENTION state
- ADD ACTION SCRIPT CLP コマンド・オプションの例として、データベース・ヘルス・インディケーターのいくつかの状態に対応した有効な数値を以下のセクションにまとめます。
- 0 - アクティブ、正常 (ACTIVE)
- 1 - 静止ペンディング (QUIESCE_PEND)
- 2 - 静止済み (QUIESCED)
- 3 - ロールフォワード (ROLLFWD)
その他の状態ベースのヘルス・インディケーターは、ヘッダー・ファイル sqlmon.h と sqlutil.h に定義されています。
ADMIN_CMD ストアード・プロシージャーにより呼び出される UPDATE ALERT CFG コマンドは、state において数値またはテキスト ID をサポートします。 表スペース操作状況のヘルス・インディケーター (ts.ts_op_status) の例として、ヘルス・インディケーターの一部の追加の状態の有効な数値およびテキスト ID は、次のようになります。- 0x1 - QUIESCED_SHARE
- 0x2 - QUIESCED_UPDATE
- 0x4 - QUIESCED_EXCLUSIVE
UPDATE ALERT CFG コマンドと 上記のヘルス・インディケーター値を使用して、以下のコマンド行を入力するとします。
これは、以下と同じ意味になります。ADD ACTION SCRIPT ... ON ATTENTION 2
さらに、表スペース操作状況のヘルス・インディケーター (ts.ts_op_status) では、複数の状態を OR 操作することにより、単一の数値を使用して複数の状態を指定できます。 例えば、状態 7 (= 0x1 + 0x2 + 0x4) を指定すると、表スペースが、静止: SHARE、静止: UPDATE、または静止: EXCLUSIVE のいずれかの状態になったときにアクションが実行されます。その代わりに、3 つの別個の UPDATE ALERT CFG コマンド実行で、QUIESCED_SHARE、QUIESCED_UPDATE、および QUIESCED_EXCLUSIVE を指定することもできます。ADD ACTION SCRIPT ... ON ATTENTION QUIESCED_UPDATE
例
ホスト名 'plato' のシステムでアラームがあった場合に、スクリプト /home/test/scripts/logfsutilact を実行するという、db.log_fs_util インディケーターのアクションを追加します。
CALL SYSPROC.ADMIN_CMD( 'update alert cfg for databases using
db.log_fs_util add action script /home/test/scripts/logfsutilact
type os command line parameters "param1 param2" working
directory /tmp on alarm on plato user dricard using mypasswdv' )アラート構成が設定された後、それをチェックするには、以下のようにして HEALTH_GET_IND_DEFINITION および HEALTH_GET_ALERT_ACTION_CFG の表関数を使用することができます。
SELECT OBJECTTYPE, ID, CONDITION, ACTIONTYPE,
SUBSTR(ACTIONNAME,1,50) AS ACTION_NAME
FROM TABLE(SYSPROC.HEALTH_GET_ALERT_ACTION_CFG('DB','G','',''))
AS ALERT_ACTION_CFG以下はこの照会の出力例です。OBJECTTYPE ID CONDITION ACTIONTYPE ACTION_NAME
---------- ------ ---------- ---------- ----------------------------------
DB 1006 ALARM S /home/dricard/scripts/logfsutilact
1 record(s) selected.使用上の注意
ADD ACTION オプションでは、入力した username および password は、SQL ステートメント・テキストがキャプチャーされる以下のさまざまな場所で公開される場合があります。
- ネットワーク (username と password は暗号化されずにワイヤーを経由して渡されます)
- db2diag ログ・ファイル
- トレース・ファイル
- ダンプ・ファイル
- スナップショット・モニター (動的 SQL スナップショット)
- システム・モニター・スナップショット
- いくつかのイベント・モニター (ステートメント、デッドロック)
- Explain 表
- db2pd 出力 (パッケージ・キャッシュおよびロック・タイムアウト機構など)
- Db2 監査レコード
コマンドの実行状況は、CALL ステートメントからの結果である SQLCA で戻されます。
database-alias は、サーバー上のカタログの中で定義されていなければならず、サーバーに対してローカルなものでなければなりません。
pathname は、完全修飾サーバー・パス名を使用して指定する必要があります。
