タスクステータスの確認 - Amazon Relational Database Service

タスクステータスの確認

rdsadmin.get_task_status ユーザー定義関数を使用して、次のタスクのステータスを確認できます。これはすべてを網羅したリストではありません。

  • バッファプールの作成、変更、削除

  • テーブルスペースの作成、変更、削除

  • データベースの作成または削除

  • Amazon S3 からのデータベースバックアップの復元

  • Amazon S3 からのデータベースログのロールフォワード

rdsadmin.get_task_status

タスクのステータスを返します。

Syntax

db2 "select task_id, task_type, database_name, lifecycle, varchar(bson_to_json(task_input_params), 500) as task_params, cast(task_output as varchar(500)) as task_output from table(rdsadmin.get_task_status(task_id,'database_name','task_type'))"

パラメータ

以下のパラメータはオプションです。パラメータを指定しない場合、ユーザー定義関数はすべてのデータベースのすべてのタスクのステータスを返します。Amazon RDS は、タスク履歴を 35 日間保持します。

task_id

実行中のタスクの ID。この ID は、タスクの実行時に返されます。デフォルト: 0

database_name

タスクが実行されているデータベースの名前。

task_type

クエリするタスクのタイプ。有効な値: ADD_GROUPSADD_USERALTER_BUFFERPOOLALTER_TABLESPACECHANGE_PASSWORDCOMPLETE_ROLLFORWARDCREATE_BUFFERPOOLCREATE_DATABASECREATE_ROLECREATE_TABLESPACEDROP_BUFFERPOOLDROP_DATABASEDROP_TABLESPACELIST_USERSREMOVE_GROUPSREMOVE_USERRESTORE_DBROLLFORWARD_DB_LOGROLLFORWARD_STATUSUPDATE_DB_PARAM

次の例では、 rdsadmin.get_task_status が呼び出されたときに返される列を表示します。

db2 "describe select * from table(rdsadmin.get_task_status())"

次の例では、すべてのタスクのステータスを一覧表示します。

db2 "select task_id, task_type, database_name, lifecycle, varchar(bson_to_json(task_input_params), 500) as task_params, cast(task_output as varchar(500)) as task_output from table(rdsadmin.get_task_status(null,null,null))"

次の例では、特定のタスクのステータスを一覧表示します。

db2 "select task_id, task_type, database_name, varchar(bson_to_json(task_input_params), 500) as task_params from table(rdsadmin.get_task_status(1,null,null))"

次の例では、特定のタスクとデータベースのステータスを一覧表示します。

db2 "select task_id, task_type, database_name, varchar(bson_to_json(task_input_params), 500) as task_params from table(rdsadmin.get_task_status(2,'SAMPLE',null))"

次の例では、ADD_GROUPS タスクのステータスを一覧表示します。

db2 "select task_id, task_type, database_name, varchar(bson_to_json(task_input_params), 500) as task_params from table(rdsadmin.get_task_status(null,null,'add_groups'))"

次の例では、特定のデータベースのすべてのタスクのステータスを一覧表示します。

db2 "select task_id, task_type, database_name, varchar(bson_to_json(task_input_params), 500) as task_params from table(rdsadmin.get_task_status(null,'testdb', null))"

次の例では、JSON 値を列として出力します。

db2 "select varchar(r.task_type,25) as task_type, varchar(r.lifecycle,10) as lifecycle, r.created_at, u.* from table(rdsadmin.get_task_status(null,null,'restore_db')) as r, json_table(r.task_input_params, 'strict $' columns(s3_prefix varchar(500) null on empty, s3_bucket_name varchar(500) null on empty) error on error ) as U"

レスポンス

rdsadmin.get_task_status ユーザー定義関数は次の列を返します。

TASK_ID

タスクの ID。

TASK_TYPE

入力パラメータによって異なります。

  • ADD_GROUPS – グループを追加します。

  • ADD_USER – ユーザーを追加します。

  • ALTER_BUFFERPOOL – バッファプールを変更します。

  • ALTER_TABLESPACE – テーブルスペースを変更します。

  • CHANGE_PASSWORD – ユーザーのパスワードを変更します。

  • COMPLETE_ROLLFORWARDrdsadmin.rollforward_database タスクを完了し、データベースをアクティブにします。

  • CREATE_BUFFERPOOL – バッファプールを作成します。

  • CREATE_DATABASE – データベースを作成します。

  • CREATE_ROLE – ユーザーの Db2 ロールを作成します。

  • CREATE_TABLESPACE – テーブルスペースを作成します。

  • DROP_BUFFERPOOL – バッファプールを削除します。

  • DROP_DATABASE – データベースを削除します。

  • DROP_TABLESPACE – テーブルスペースを削除します。

  • LIST_USERS – すべてのユーザーを一覧表示します。

  • REMOVE_GROUPS – グループを削除します。

  • REMOVE_USER – ユーザーを削除します。

  • RESTORE_DB – データベースを完全に復元します。

  • ROLLFORWARD_DB_LOG – データベースログに対して rdsadmin.rollforward_database タスクを実行します。

  • ROLLFORWARD_STATUS rdsadmin.rollforward_database タスクのステータスを返します。

  • UPDATE_DB_PARAM – データパラメータを更新します。

DATABASE_NAME

タスクが関連付けられているデータベースの名前。

COMPLETED_WORK_BYTES

タスクによって復元されたバイト数。

DURATION_MINS

タスクを完了するのにかかる時間。

LIFECYCLE

タスクのステータス。想定されるステータス:

  • CREATED – タスクが Amazon RDS に送信されると、Amazon RDS ではステータスを CREATED に設定します。

  • IN_PROGRESS - タスクがスタートすると、Amazon RDS ではステータスを IN_PROGRESS に設定します。ステータスが CREATED から IN_PROGRESS に変わるまで、最大 5 分かかることがあります。

  • SUCCESS - タスクが完了すると、Amazon RDS ではステータスを SUCCESS に設定します。

  • ERROR – 復元タスクが失敗した場合、Amazon RDS ではステータスを ERROR に設定します。エラーの詳細については、「TASK_OUPUT」を参照してください。

CREATED_BY

コマンドを作成した authid

CREATED_AT

タスクが作成された日時。

LAST_UPDATED_AT

タスクが最終更新された日時。

TASK_INPUT_PARAMS

パラメータはタスクタイプによって異なります。すべての入力パラメータは JSON オブジェクトとして表されます。例えば、RESTORE_DB タスクの JSON キーは次のとおりです。

  • DBNAME

  • RESTORE_TIMESTAMP

  • S3_BUCKET_NAME

  • S3_PREFIX

TASK_OUTPUT

タスクに関する追加情報。ネイティブ復元中ににエラーが発生した場合、この列にエラーに関する情報が含まれます。

レスポンスの例

次のレスポンスの例は、 TESTJP というデータベースが正常に作成されたことを示しています。詳細については、rdsadmin.create_database ストアドプロシージャを参照してください。

`1 SUCCESS CREATE_DATABASE RDSDB 2023-10-24-18.32.44.962689 2023-10-24-18.34.50.038523 1 TESTJP { "CODESET" : "IBM-437", "TERRITORY" : "JP", "COLLATION" : "SYSTEM", "AUTOCONFIGURE_CMD" : "", "PAGESIZE" : 4096 } 2023-10-24-18.33.30.079048 Task execution has started. 2023-10-24-18.34.50.038523 Task execution has completed successfully`.

次のレスポンスの例は、データベースの削除が失敗した理由を説明しています。詳細については、rdsadmin.drop_database ストアドプロシージャを参照してください。

1 ERROR DROP_DATABASE RDSDB 2023-10-10-16.33.03.744122 2023-10-10-16.33.30.143797 - 2023-10-10-16.33.30.098857 Task execution has started. 2023-10-10-16.33.30.143797 Caught exception during executing task id 1, Aborting task. Reason Dropping database created via rds CreateDBInstance api is not allowed. Only database created using rdsadmin.create_database can be dropped

次のレスポンスの例は、データベースの正常な復元を示しています。詳細については、rdsadmin.restore_database ストアドプロシージャを参照してください。

1 RESTORE_DB SAMPLE SUCCESS { "S3_BUCKET_NAME" : "mybucket", "S3_PREFIX" : "SAMPLE.0.rdsdb3.DBPART000.20230413183211.001", "RESTORE_TIMESTAMP" : "20230413183211", "BACKUP_TYPE" : "offline" } 2023-11-06-18.31.03.115795 Task execution has started. 2023-11-06-18.31.04.300231 Preparing to download 2023-11-06-18.31.08.368827 Download complete. Starting Restore 2023-11-06-18.33.13.891356 Task Completed Successfully