A AutoUpgrade REST API

Oracle Database用のAutoUpgrade REST APIを使用すると、Web環境でRESTfulサービスを使用してデータベースのアップグレードを自動化できます。

AutoUpgrade REST APIの概要

Oracle DatabaseのアップグレードのAutoUpgradeユーティリティREST APIメソッドについて学習します。

AutoUpgrade REST APIについて

AutoUpgrade REST API実装では、Oracle REST Data Servicesプラグイン・フレームワークを使用します。

AutoUpgrade REST APIは、クライアント/サーバー・アーキテクチャ上でAutoUpgradeに統一されたインタフェースを提供し、ユーザーはHTTPおよびHTTPSプロトコルを介してAutoUpgrade機能を利用して統合し、Oracle Databasesを自動的にアップグレードできます。Oracle REST Data Servicesの実装は、強化されたセキュリティ、ファイル・キャッシュ機能およびRESTful Webサービスを提供するJava Enterprise Edition (Java EE)データ・サービスに基づいています。このサービスにより、スタンドアロン・デプロイメントだけでなく、Oracle WebLogic ServerやApache Tomcatなどのサーバーにおいても柔軟性が向上します。Oracle REST Data Servicesは、ほとんどのOracle Databaseコンポーネントおよびツールで使用される一般的なプラグイン・メカニズムです。

スタート・ガイド

AutoUpgrade REST APIを使用してデータベースをアップグレードするようにシステムを設定します。

cURLのインストール

このドキュメント内の例では、cURLコマンドライン・ツールを使用して、Autoupgrade REST APIにアクセスする方法を示しています。

サーバーに安全に接続するには、SSLをサポートしているバージョンのcURLをインストールし、Verisign社のCA証明書に対して認証される、SSL認証局(CA)証明書ファイルまたはバンドルを指定する必要があります。

  1. ブラウザでcURLホーム・ページに移動し、左のナビゲーション・メニューで「Download」をクリックします。
  2. cURLの「Releases and Downloads」ページで、使用するオペレーティング・システム用のSSL対応バージョンcURLソフトウェアを探し、ZIPファイルをダウンロードするリンクをクリックして、ソフトウェアをインストールします。
  3. cURLの「CA certificates extracted from Mozilla」ページにナビゲートし、Mozilla CA証明書ストアをPEM形式(cacert.pem)でcURLをインストールしたフォルダにダウンロードします。
  4. コマンド・ウィンドウを開いて、cURLをインストールしたディレクトリにナビゲートし、cURL環境変数 CURL_CA_BUNDLEをSSL認証局(CA)証明書バンドルの場所に設定します。たとえば:
    C:\curl> set CURL_CA_BUNDLE=cacert.pem
これで、cURLを使用してAutoUpgrade REST APIインスタンスにRESTリクエストを送信する準備が整いました。

AutoUpgrade REST APIを設定して使用する方法

AutoUpgrade REST APIを使用するには、Oracle REST Data Servicesをインストールし、AutoUpgrade RESTサービスを有効にする必要があります。

AutoUpgrade REST APIを有効化またはインストールする前に、スタンドアロン・モードでのOracle REST Data Servicesのインストールが完了していることを確認します。

Oracle REST Data Servicesの構成およびインストール

  1. ords.warをインストールしてからORDSサービスを起動する前に、autoupgrade.api.enabledプロパティをtrue(デフォルトはfalse)に設定し、APIの環境変数を設定する必要があります。

    次の例では、

    • autoupgrade.api.loglocationがパス/databases/workingに指定されています
    • autoupgrade.api.aulocationは、パス/autoupgrade/ords/ords/autoupgrade.jarにautoupgrade.jarファイルが設定されていることを指定します
    • autoupgrade.api.jvmlocationは、Javaの場所が/usr/bin/javaにあることを指定します。
    java -jar ords.war set-property autoupgrade.api.enabled true
    java -jar ords.war set-property autoupgrade.api.loglocation /databases/working
    java -jar ords.war set-property autoupgrade.api.aulocation 
    /autoupgrade/ords/ords/autoupgrade.jar
    java -jar ords.war set-property autoupgrade.api.jvmlocation /usr/bin/java
  2. JSON形式を使用するようにAutoUpgrade構成ファイルを修正します。

    AutoUpgrade REST APIを使用して新しいタスクを発行するには、標準のAutoUpgrade構成ファイル形式をJSON形式に変換する必要があります。

    たとえば、AutoUpgradeの標準構成ファイル(config.cfg)を次に示します。

    [oracle@localhost curl]$ more config.cfg
    #Global configurations
    #Autoupgrade's global directory, non-job logs generated,
    #temp files created and other autoupgrade files will be
    #send here
    global.autoupg_log_dir=/autoupgrade/test/glog
    #
    # Database number 1
    #
    upg1.start_time=NOW
    upg1.source_home=/databases/product/12.2.0/dbhome_1
    upg1.target_home=/databases/product/19c/dbhome_1
    upg1.sid=db122
    upg1.log_dir=/autoupgrade/test/log
    upg1.upgrade_node=localhost
    upg1.target_version=19.1

    次に、同じパラメータ情報を指定する同じ構成ファイルを示しますが、AutoUpgrade REST APIメソッドで使用するためにJSON構成入力ファイル(config.json)として書き換えられます。

    [oracle@localhost curl]$ more config.json 
    {
    "global": {
    		"autoupg_log_dir": "/autoupgrade/test/glog"
    	},
    	"jobs": [{
    		"start_time": "NOW",
    		"source_home": "/databases/product/12.2.0/dbhome_1",
    		"target_home": "/databases/product/19c/dbhome_1",
    		"sid": "db122",
    		"log_dir": "/autoupgrade/test/log",
    		"upgrade_node": "localhost",
    		"target_version": "19.1"
    	}]
    }

AutoUpgrade REST API認証権限を使用する方法

AutoUpgrade REST APIにアクセスするためのAutoUpgrade管理者ユーザー権限を持つユーザーを構成するには、この設定手順を実行します。

AutoUpgrade REST APIには、AutoUpgrade管理者と呼ばれるOracle REST Data Services (ORDS)に対する独自の認証ロールがあります。ORDS構成パラメータautoupgrade.api.ordsauthtrueに設定されている場合、ORDSユーザーには、AutoUpgrade REST APIを使用するためにAutoUpgrade管理者ロールが必要です。

この機能を無効にするには、次のコマンドを入力します。
java -jar ords.war set-property autoupgrade.api.ordsauth false

autoupgrade.api.ordsauthtrueに設定されている場合、ユーザーがAutoUpgrade REST APIにアクセスできるようにするには、そのユーザーにAutoUpgrade管理者ロールを明示的に付与する必要があります。

AutoUpgrade REST API管理者ロールを有効または無効にする前に、スタンドアロン・モードでのOracle REST Data Servicesのインストールが完了していることを確認します。

Oracle REST Data Servicesの構成およびインストール

  1. ords.warをインストールした後でORDSサービスを開始する前に、autoupgrade.api.ordsauthがtrueに設定されていることを確認します。

     java -jar ords.war set-property autoupgrade.api.ordsauth true 
  2. AutoUpgrade管理者ロールを持つユーザーを作成します。たとえば、次のコマンドでは、AutoUpgrade管理者ロールを持つユーザーroderigoを作成します。

    [oracle@localhost ords]$ java -jar ords.war user roderigo "AutoUpgrade Administrator"
    
    Enter a password for user roderigo:
    
    Confirm password for user roderigo:
  3. ords.warサーバーを起動します。
  4. 作成したユーザーがAutoUpgradeエンドポイントに正常にアクセスできることを確認します。

    ユーザーroderigoを使用して成功した認証の例を次に示します。

    [oracle@localhost curl]$ curl -u roderigo 
    "http://localhost:8080/autoupgrade/tasks"
    
    Enter host password for user 'roderigo':
    
    
    {
    
        "total_tasks": 0,
    
        "tasks": [
    
        ]
    
    }
    

    失敗した認証の例を次に示します。

    [oracle@localhost curl]$ curl "http://localhost:8080/autoupgrade/tasks"
    
    
    {
    
        "code": "Unauthorized",
    
        "message": "Unauthorized",
    
        "type": "tag:oracle.com,2020:error/Unauthorized",
    
        "instance": "tag:oracle.com,2020:ecid/LI6fVLjXrI2rvmEFoBzAAw"
    
    }
  5. 必要に応じて、AutoUpgrade REST APIに対して認証ユーザーを追加で作成します。
  6. 次のコマンドを使用して、AutoUpgrade REST API認可を無効にします。

    java -jar ords.war set-property autoupgrade.api.ordsauth false
  7. ORDSサーバーを再起動します。
  8. これで、パスワード認証を必要とせずに、AutoUpgrade REST APIエンドポイントに直接アクセスできるようになります。
    
    [oracle@localhost curl]$ curl "http://localhost:8080/autoupgrade/tasks"
    
    
    {
    
        "total_tasks": 0,
    
        "tasks": [
    
        ]
    
    }
    

AutoUpgradeのREST API

これらのREST APIは、Oracle REST Data Services (ORDS)のAutoUpgrade RESTサービス機能で使用できます。

新しいAutoUpgradeタスクの作成

JSON構成ファイルを使用するかどうかに関係なく、REST APIを介してAutoUpgradeタスクを発行します。

方法

POST

パス

/autoupgrade/task

使用上のノート

次の2つの使用方法があります。
  1. AutoUpgradeタスクを発行します。タスクを発行するには、AutoUpgrade構成ファイルで指定されているデータベースがOracle REST Data Servicesサーバー・インスタンスと同じホスト上にある必要があり、ターゲット・データベース・リリースは、ソース・データベース・リリースからの直接アップグレードがサポートされているリリースである必要があります。AutoUpgrade構成ファイルは、HTTPまたはHTTPSリクエスト本文を介してJSON形式でアップロードする必要があります。

  2. AutoUpgrade REST APIを使用して既存のタスクを再発行します。既存のtaskidパラメータを指定してタスクを再発行すると、そのタスクに以前関連付けられていた構成ファイルが使用されるため、構成ファイルを指定する必要はありません。ただし、パラメータmodeおよびrestore_on_failには異なる値を指定できます。たとえば、modeパラメータがanalyzeに設定されているタスクを発行できます。チェックの失敗なしで分析タスクが完了した後、同じtaskidでタスクを再発行できますが、modeパラメータをdeployに変更してデータベースのアップグレードを続行します。

リクエスト

パス・パラメータ:

パラメータ 説明

mode

(必須) AutoUpgrade処理モード。オプション: analyzefixupsdeployupgradepostfixups

restore_on_fail

(オプション)アップグレード中にリストア・ポイントを生成します。オプション: yesno

taskid

(オプション) taskidで指定した既存のAutoUpgradeタスクを再実行します。

レスポンス

  • 201レスポンス: 新しいAutoUpgradeタスクの説明。
  • 400レスポンス: パラメータがない場合に返されます。

例A-1 AutoUpgradeタスク・リクエストの発行

次の例は、cURLを使用してRESTリソースに対するPOSTリクエストを発行することで、AutoUpgrade構成ファイルを発行し、分析モードで新しいAutoUpgradeタスクを作成する方法を示しています

curl --data-binary "@config.json" -X POST --header "Content-Type:application/json" 
'http://localhost:8080/autoupgrade/task?mode=analyze'

この分析リクエストのJSON構成ファイル(config.json)には、Oracle Database 12c (12.2)からOracle Database 19cにアップグレードするように指定するソース・データベース・インスタンスdb122が1つあります。

{
"global": {
		"autoupg_log_dir": "/autoupgrade/test/glog"
	},
	"jobs": [{
		"start_time": "NOW",
		"source_home": "/databases/product/12.2.0/dbhome_1",
		"target_home": "/databases/product/19.0.0/dbhome_1",
		"sid": "db122",
		"log_dir": "/autoupgrade/test/log",
		"upgrade_node": "localhost",
		"target_version": "19.1"
	}]
}

このタスク・リクエストの戻りヘッダーの場所を使用して、AutoUpgradeタスクを表示できます。

Type:application/json" 'http://localhost:8080/autoupgrade/task?mode=analyze' -i
HTTP/1.1 201 Created
Date: Thu, 14 Oct 2021 19:52:59 GMT
Set-Cookie: JSESSIONID=node01efwo2229s7kj11rxw2l2mltc10.node0; Path=/
Expires: Thu, 01 Jan 1970 00:00:00 GMT
Content-Type: application/json
X-Frame-Options: SAMEORIGIN
Location: http://localhost:8080/autoupgrade/task?taskid=job_2021-10-14_15_53_00.085_0
Transfer-Encoding: chunked

この分析リクエストに対する201レスポンス本文には、AutoUpgradeジョブ・ステータスの説明が表示されます。JSON形式で返されます。

{
    "taskid": "job_2021-10-14_15_53_00.085_0",
    "status": "submitted",
    "message": "",
    "link": "http://localhost:8080/autoupgrade/task?taskid=job_2021-10-14_15_53_00.085_0",
    "config": {
        "global": {
            "autoupg_log_dir": "/autoupgrade/test/glog"
        },
        "jobs": [
            {
                "start_time": "NOW",
                "source_home": "/databases/product/12.2.0/dbhome_1",
                "target_home": "/databases/product/19.1.0/dbhome_1",
                "sid": "db122",
                "log_dir": "/autoupgrade/test/log",
                "upgrade_node": "localhost",
                "target_version": "19.1"
            }
        ]
    }
}

例A-2 問題のあるリクエスト後のAutoUpgradeジョブのレスポンス

次の例では、AutoUpgradeジョブが無効なmodeパラメータを使用して発行されます。

curl --data-binary "@config.json" -X POST --header "Content-Type:application/json" 
'http://localhost:8080/autoupgrade/task?mode=NULL'

問題のあるリクエストに対する400レスポンス・ヘッダーは次のとおりです。

Type:application/json" 'http://localhost:8080/autoupgrade/task?mode=null' -i
HTTP/1.1 400 Bad Request
Date: Wed, 20 Oct 2021 18:02:46 GMT
Content-Type: application/json
X-Frame-Options: SAMEORIGIN
Transfer-Encoding: chunked

次の例は、この400レスポンス本文を示しています。JSON形式で返されます。

{
    "taskid": "job_2021-10-20_14_02_46.855_4",
    "status": "Bad Request",
    "message": "AutoUpgrade parameter mode is invalid.",
    "link": "",
    "config": null
}

例A-3 taskidを使用したAutoUpgradeジョブの再実行

この例では、タスクID job_2021-10-14_15_53_00.085_0が分析モードで再実行されます。

curl -X POST 'http://localhost:8080/autoupgrade/task?mode=analyze&taskid=job_2021-10-14_15_53_00.085_0'

この再実行ジョブに対する201レスポンス・ヘッダーは次のとおりです。

HTTP/1.1 201 Created
Date: Mon, 10 Jan 2022 19:44:40 GMT
Set-Cookie: JSESSIONID=node0sjsoy3w4cntl13qnat979zc6n4.node0; Path=/
Expires: Thu, 01 Jan 1970 00:00:00 GMT
Content-Type: application/json
X-Frame-Options: SAMEORIGIN
Location: http://localhost:8080/autoupgrade/task?taskid=job_2022-01-10_14_19_09.156_1
Transfer-Encoding: chunked

タスクの本文では、JSON形式のタスクについて説明します。

{    "taskid": "job_2021-10-14_15_53_00.085_0",    "status": "submitted",    "message": "",    "link": "http://localhost:8080/autoupgrade/task?taskid=job_2021-10-14_15_53_00.085_0",
          "config": {
              "global": {
                  "autoupg_log_dir": "/autoupgrade/test/glog"
              },
              "jobs": [
                  {
                      "start_time": "NOW",
                      "source_home": "/databases/product/12.2.0/dbhome_1",
                      "target_home": "/databases/product/19.1.0/dbhome_1",
                      "sid": "db122",
                      "log_dir": "/autoupgrade/test/log",
                      "upgrade_node": "localhost",
                      "target_version": "19.1"
                  }
              ]
          } }

AutoUpgradeタスクの進行状況レポート・リクエスト

progress APIを使用して、taskidで指定されたAutoUpgradeタスクの進行状況レポートを取得します。

方法

GET

パス

/autoupgrade/progress

使用上のノート

taskidで指定したタスクの進行状況リクエストを発行すると、そのtaskidで識別されるAutoUpgradeタスクの進捗状況のレポートを受信します。

リクエスト

リクエスト・パラメータ:

パラメータ 説明

taskid

(必須)進行状況レポートを取得するタスクを指定します。

レスポンス

  • 200レスポンス: taskidで指定したタスクの進行状況をレポートします。
  • 400レスポンス: taskidがないことをレポートします
  • 404レスポンス: taskidが無効であることをレポートします

例A-4 タスクの進行状況レポートのGETリクエストの発行

次の例は、cURLでAutoUpgrade taskidを指定して、AutoUpgradeタスクの進行状況を取得する方法を示しています。

curl http://localhost:8080/autoupgrade/progress?taskid=job_2021-10-20_14_44_57.11_1 

これは、ジョブの前述のGETタスク進行状況レポートに対する200レスポンスです。

HTTP/1.1 200 OK
Date: Wed, 20 Oct 2021 19:56:32 GMT
Set-Cookie: JSESSIONID=node01rkapzylgd2tljf28bghba9bx6.node0; Path=/
Expires: Thu, 01 Jan 1970 00:00:00 GMT
Content-Type: application/json
X-Frame-Options: SAMEORIGIN
Transfer-Encoding: chunked

ジョブ・リクエストのこのGET進行状況レポートに対する200レスポンス本文は、次のとおりです(JSON形式)。

{
    "taskid": "job_2021-10-20_14_44_57.11_1",
    "status": "successful",
    "message": "",
    "autoupgrade_progress": {
        "totalJobs": 1,
        "totalFinishedJobs": 1,
        "startTime": "2021-10-20 14:44:59",
        "lastUpdateTime": "2021-10-20 14:45:10",
        "jobs": [
            {
                "sid": "db122",
                "jobNo": 100,
                "isCDB": false,
                "totalPercentCompleted": 100,
                "totalContainers": 1,
                "totalStages": 1,
                "additionalInfo": "",
                "lastUpdateTime": "2021-10-20 14:45:10",
                "stages": [
                    {
                        "stage": "PRECHECKS",
                        "percentCompleted": "100",
                        "totalChecks": 104,
                        "totalCompletedChecks": 104,
                        "additionalInfo": "",
                        "lastUpdateTime": "2021-10-20 14:44:59",
                        "containers": [
                            {
                                "container": "db122",
                                "totalChecks": 104,
                                "completedChecks": 104,
                                "succeededChecks": 91,
                                "failedChecks": 13,
                                "runningChecks": [
                                ],
                                "finishedChecks": [
                                    "PLUGIN_COMP_COMPATIBILITY",
                                    "AMD_EXISTS",
                                    "COMPATIBLE_NOT_SET",
                                    "COMPATIBLE_PARAMETER",
                                    "CASE_INSENSITIVE_AUTH",
                                    "CYCLE_NUMBER",
                                    "CREATE_WINDOWS_SERVICE",
                                    "AUDTAB_ENC_TS",
                                    "CONC_RES_MGR",
                                    "DATA_MINING_OBJECT",
                                    "DV_ENABLED",
                                    "AWR_EXPIRED_SNAPSHOTS",
                                    "DV_SIMULATION",
                                    "DEPEND_USR_TABLES",
                                    "FLASH_RECOVERY_AREA_SETUP",
                                    "FILES_NEED_RECOVERY",
                                    "INVALID_SYS_TABLEDATA",
                                    "INVALID_OBJECTS_EXIST",
                                    "JAVAVM_STATUS",
                                    "ORACLE_RESERVED_USERS",
                                    "HIDDEN_PARAMS",
                                    "JVM_MITIGATION_PATCH",
                                    "TRGOWNER_NO_ADMNDBTRG",
                                    "MV_REFRESH",
                                    "PENDING_DST_SESSION",
                                    "RAISE_COMPATIBLE",
                                    "COMPATIBLE_PFILES",
                                    "INVALID_USR_TABLEDATA",
                                    "POST_JVM_MITIGAT_PATCH",
                                    "PURGE_RECYCLEBIN",
                                    "PRE_FIXED_OBJECTS",
                                    "SYNC_STANDBY_DB",
                                    "SYS_DEFAULT_TABLESPACE",
                                    "TWO_PC_TXN_EXIST",
                                    "UNDERSCORE_EVENTS",
                                    "UNIAUD_TAB",
                                    "XBRL_VERSION",
                                    "PARAMETER_DEPRECATED",
                                    "XDB_RESOURCE_TYPE",
                                    "PARAMETER_NEW_NAME_VAL",
                                    "PARAMETER_OBSOLETE",
                                    "PARAMETER_RENAME",
                                    "MIN_ARCHIVE_DEST_SIZE",
                                    "NEW_TIME_ZONES_EXIST",
                                    "PARAMETER_MIN_VAL",
                                    "DISK_SPACE_FOR_RECOVERY_AREA",
                                    "PA_PROFILE",
                                    "UPG_BY_STD_UPGRD",
                                    "MIN_RECOVERY_AREA_SIZE",
                                    "OLS_VERSION",
                                    "ROLLBACK_SEGMENTS",
                                    "ARCHIVE_MODE_ON",
                                    "PGA_AGGREGATE_LIMIT",
                                    "APEX_MANUAL_UPGRADE",
                                    "TABLESPACES",
                                    "OLAP_PAGE_POOL_SIZE",
                                    "STANDARD_EDITION",
                                    "TEMPTS_NOTEMPFILE",
                                    "TS_FORUPG_STATUS",
                                    "APPL_PRINCIPAL",
                                    "TDE_IN_USE",
                                    "STREAMS_SETUP",
                                    "DIR_SYMLINKS",
                                    "ORDIM_DESUPPORT",
                                    "UTLRP_RUN_SERIAL",
                                    "DESUPPORT_RAC_ON_SE",
                                    "COMPATIBLE_GRP",
                                    "EDS_EXISTS",
                                    "UNIAUD_RECORDS_IN_FILE",
                                    "JOB_TABLE_INTEGRITY",
                                    "TARGET_CDB_COMPATIBILITY",
                                    "DUPLICATE_DB_HASHES",
                                    "UNPLUG_PLUG_UPGRADE",
                                    "ENABLE_LOCAL_UNDO",
                                    "AUTO_LOGIN_KEYSTORE_REQUIRED",
                                    "NO_KEYSTORE_FILES",
                                    "INFORM_DROP_GRP",
                                    "PRE_DISABLE_BCT_UPG",
                                    "MAX_STRING_SIZE_ON_DB",
                                    "POST_RECOMPILE_IN_CDB",
                                    "TEMPTS_ALLOFFLINE",
                                    "PRE_RECOMPILE_IN_CDB",
                                    "MAX_DB_FILES_EXCEEDED",
                                    "POST_DISABLE_BCT_UPG",
                                    "TARGET_HOME_REGISTERED_INVENTORY",
                                    "ISRAC_SWITCHEDON_TARGETHOME",
                                    "KEYSTORE_CONFLICT",
                                    "WALLET_ROOT_KEYSTORE",
                                    "ORACLE_HOME_KEYSTORE",
                                    "DEPLOY_JOB_VALIDATIONS",
                                    "DUPLIC_SYS_SYSTEM_OBJS"
                                ],
                                "checksWithExecutionError": [
                                ],
                                "checksFailed": [
                                    "DICTIONARY_STATS",
                                    "POST_DICTIONARY",
                                    "POST_FIXED_OBJECTS",
                                    "OLD_TIME_ZONES_EXIST",
                                    "MANDATORY_UPGRADE_CHANGES",
                                    "RMAN_RECOVERY_VERSION",
                                    "TABLESPACES_INFO",
                                    "ORDIM_INFO_DESUPPORT",
                                    "POST_UTLRP",
                                    "COMPONENT_INFO",
                                    "INVALID_ORA_OBJ_INFO",
                                    "INVALID_APP_OBJ_INFO",
                                    "TIMESTAMP_MISMATCH"
                                ],
                                "additionalInfo": "",
                                "lastUpdateTime": "2021-10-20 14:45:10"
                            }
                        ]
                    }
                ],
                "summary": [
                    {
                        "stage": "PRECHECKS",
                        "complete": "Yes",
                        "duration": "11.08S"
                    }
                ]
            }
        ]
    }
}

例A-5 タスクIDが無効なタスク進行状況レポート・リクエスト

この例では、タスク・レポートの進行状況が無効なタスクIDに対して発行されます。

curl http://localhost:8080/autoupgrade/progress?taskid=null

前述の無効なリクエストに対する404レスポンス・ヘッダーは次のとおりです。

HTTP/1.1 404 Not Found
Date: Wed, 20 Oct 2021 18:49:12 GMT
Set-Cookie: JSESSIONID=node06xkycdfv7k1f1bus3q43zefum2.node0; Path=/
Expires: Thu, 01 Jan 1970 00:00:00 GMT
Content-Type: application/json
X-Frame-Options: SAMEORIGIN
Transfer-Encoding: chunked

このリクエストに対する404レスポンス本文は次のとおりです。JSON形式で返されます。

{
    "taskid": "null",
    "status": "Bad Request",
    "message": "taskid is invalid.",
    "link": "",
    "config": ""
}

}

AutoUpgradeタスクのコンソール・リクエスト

console APIを使用して、taskidで指定されたAutoUpgradeタスクのコンソールを取得します。

方法

GET

パス

/autoupgrade/console

使用上のノート

taskidで指定されたAutoUpgradeタスクのコンソール出力を取得します。

リクエスト

パス・パラメータ:

パラメータ 説明

taskid

(必須)コンソール出力を取得するタスクを指定します。

レスポンス

  • 200レスポンス: AutoUpgradeコンソールが開きます。
  • 400レスポンス: taskidがないことをレポートします
  • 404レスポンス: taskidが無効であることをレポートします

例A-6 タスク・コンソールGETリクエストの発行

次の例は、cURLでAutoUpgrade taskidを指定してコンソール・リクエストを発行する方法を示しています。

curl http://localhost:8080/autoupgrade/console?taskid=job_2021-10-20_14_44_57.11_1 

前述のGETタスク・コンソール・リクエストに対する200レスポンス・ヘッダーは、次のとおりです。

HTTP/1.1 200 OK
Date: Wed, 20 Oct 2021 20:09:04 GMT
Set-Cookie: JSESSIONID=node01hwo60q3c5irz1pnn4fa8hhm2k9.node0; Path=/
Expires: Thu, 01 Jan 1970 00:00:00 GMT
Content-Type: plain/text
X-Frame-Options: SAMEORIGIN
Transfer-Encoding: chunked

このリクエストに対する200レスポンス本文は、プレーン(テキスト)形式で返されるAutoUpgradeジョブの進行状況をレポートします。

AutoUpgrade tool launched with default options
Processing config file ...
+--------------------------------+
| Starting AutoUpgrade execution |
+--------------------------------+
1 databases will be analyzed
Job 100 database db122
Job 100 completed
------------------- Final Summary --------------------
Number of databases            [ 1 ]
 
Jobs finished                  [1]
Jobs failed                    [0]
Jobs restored                  [0]
Jobs pending                   [0]
 
Please check the summary report at: 
/databases/working/job_2021-10-20_14_44_57.11_1/cfgtoollogs/upgrade/auto/status/status.html
/databases/working/job_2021-10-20_14_44_57.11_1/cfgtoollogs/upgrade/auto/status/status.log

例A-7 タスクIDが無効なコンソール・リクエストのレスポンス・ヘッダー

この例では、無効なタスクIDに対してコンソール・リクエストが発行されます。

curl http://localhost:8080/autoupgrade/console?taskid=null

前述のリクエストでは、コンソール・リクエストに次の404ヘッダー・レスポンスが返されます。

HTTP/1.1 404 Not Found
Date: Wed, 20 Oct 2021 18:49:12 GMT
Set-Cookie: JSESSIONID=node06xkycdfv7k1f1bus3q43zefum2.node0; Path=/
Expires: Thu, 01 Jan 1970 00:00:00 GMT
Content-Type: application/json
X-Frame-Options: SAMEORIGIN
Transfer-Encoding: chunked

このコンソール・リクエストに対する404レスポンス本文は次のとおりです。JSON形式で返されます。

{
    "taskid": "null",
    "status": "Bad Request",
    "message": "taskid is invalid.",
    "link": "",
    "config": ""
}

AutoUpgradeのタスク詳細リクエスト

task APIを使用して、taskidで指定されたタスクのAutoUpgradeタスクの詳細を取得します。

方法

GET

パス

/autoupgrade/task

使用上のノート

taskidを指定すると、そのtaskidに関連付けられているタスクの詳細を取得します。

たとえば:

curl http://localhost:8080/autoupgrade/task?taskid=job_2021-10-20_14_44_57.11_1 

リクエスト

パス・パラメータ:

パラメータ 説明

taskid

(必須)詳細を取得するタスクのシステム生成識別子

レスポンス

  • 200レスポンス: taskidで指定したタスクの詳細をレポートします。
  • 400レスポンス: taskidがないことをレポートします
  • 404レスポンス: taskidが無効であることをレポートします

例A-8 タスク詳細GETリクエストの発行

次の例は、cURLでAutoUpgrade taskidを指定してAutoUpgrade getタスク詳細リクエストを発行する方法を示しています。

curl http://localhost:8080/autoupgrade/task?taskid=job_2021-10-20_14_44_57.11_1

前述のgetタスク詳細リクエストに対する200レスポンスは、次のとおりです。Locationヘッダーは、AutoUpgradeタスクの表示に使用できるURIを返します。

HTTP/1.1 200 OK
Date: Wed, 20 Oct 2021 18:45:20 GMT
Set-Cookie: JSESSIONID=node0tl6lz63xj3xd11i05p8bfmw8u1.node0; Path=/
Expires: Thu, 01 Jan 1970 00:00:00 GMT
Content-Type: application/json
X-Frame-Options: SAMEORIGIN
Location: http://localhost:8080/autoupgrade/task?taskid=job_2021-10-20_14_44_57.11_1
Transfer-Encoding: chunked

このGETタスク詳細リクエストに対する200レスポンス本文は次のとおりです。JSON形式で返されます:

{
    "taskid": " job_2021-10-20_14_44_57.11_1",
    "status": "submitted",
    "message": "",
    "link": "http://localhost:8080/autoupgrade/task?taskid=job_2021-10-14_15_53_00.085_0",
    "config": {
        "global": {
            "autoupg_log_dir": "/autoupgrade/test/glog"
        },
        "jobs": [
            {
                "dbname": "db122",
                "start_time": "NOW",
                "source_home": "/databases/product/12.2.0/dbhome_1",
                "target_home": "/databases/product/19c/dbhome_1",
                "sid": "db122",
                "log_dir": "/autoupgrade/test/log",
                "upgrade_node": "localhost",
                "target_version": "19.1"
            }
        ]
    }
}

例A-9 taskidが無効なタスク詳細リクエスト

無効なtaskidを持つGETリクエストが発行されます。
curl http://localhost:8080/autoupgrade/task?taskid=null

無効なリクエストに対する404レスポンス・ヘッダーは次のとおりです。

{HTTP/1.1 404 Not Found
Date: Wed, 20 Oct 2021 18:49:12 GMT
Set-Cookie: JSESSIONID=node06xkycdfv7k1f1bus3q43zefum2.node0; Path=/
Expires: Thu, 01 Jan 1970 00:00:00 GMT
Content-Type: application/json
X-Frame-Options: SAMEORIGIN
Transfer-Encoding: chunked

このリクエストに対する404レスポンス本文は次のとおりです。JSON形式で返されます。

{
    "taskid": "null",
    "status": "Bad Request",
    "message": "taskid is invalid.",
    "link": "",
    "config": ""
}

AutoUpgradeタスクのタスク・リスト・リクエスト

tasks APIを使用して、AutoUpgradeタスク・リストを取得します。

方法

GET

パス

/autoupgrade/tasks

リクエスト

パラメータはありません。

レスポンス

200レスポンス: すべてのタスクの詳細をレポートします。

使用上のノート

このメソッドは、タスクのリストを取得するために使用します。

例A-10 タスク・リストのGETリクエストの発行

次の例は、cURLを使用してAutoUpgradeタスク・リストを取得する方法を示しています。

curl http://localhost:8080/autoupgrade/tasks

次の例は、GETタスク・リスト・リクエストに対するレスポンス・ヘッダーを示しています。

HTTP/1.1 200 OK
Date: Wed, 20 Oct 2021 19:51:46 GMT
Set-Cookie: JSESSIONID=node0yawyihk3msz91eeauxijfaw6z3.node0; Path=/
Expires: Thu, 01 Jan 1970 00:00:00 GMT
Content-Type: application/json
X-Frame-Options: SAMEORIGIN
Transfer-Encoding: chunked

このリスト・リクエストに対する200レスポンス本文は次のとおりです。JSON形式で返されます。

{
    "total_tasks": 2,
    "tasks": [
        {
            "mode": "analyze",
            "taskid": "job_2021-10-20_14_44_57.11_1",
            "config": {
                "jobs": [
                    {
                        "source_home": "/databases/product/12.2.0/dbhome_1",
                        "sid": "db122"
                    }
                ]
            },
            "link": "http://localhost:8080/autoupgrade/task?taskid=job_2021-10-20_14_44_57.11_1"
        },
        {
            "mode": "analyze",
            "taskid": "job_2021-10-20_15_54_01.568_2",
            "config": {
                "jobs": [
                    {
                        "source_home": "/databases/product/12.2.0/dbhome_1",
                        "sid": "db122"
                    }
                ]
            },
            "link": "http://localhost:8080/autoupgrade/task?taskid=job_2021-10-20_15_54_01.568_2"
        }
    ]
}

AutoUpgradeタスクのログまたはログ・リスト

log APIを使用してログを開くか、taskidで指定されたタスクのログ・リストを取得します。

方法

GET

パス

/autoupgrade/log

使用上のノート

タイプまたは名前を指定したログ・リクエストを発行すると、taskidで指定されたタスクのAutoUpgradeログを受け取ります。タイプまたは名前を指定しない場合、taskidで指定されたタスクのすべてのHTML、JSONおよびXMLログ・ファイルを含むAutoUpgradeログ・リストを受け取ります。

リクエスト

リクエスト・パラメータ:

パラメータ 説明

taskid

(必須)ログまたはリスト・ログを開くAutoUpgradeタスクIDを指定します。

type

(オプション) AutoUpgradeログのタイプを指定します。オプション:

autolog: AutoUpgradeログ・ファイル

errlog: エラー・ログ・ファイル

userlog: ユーザー・ログ・ファイル

name

(オプション)タスクIDのログ・リスト内の特定のログのファイル名を指定します。

レスポンス

  • 200レスポンス: AutoUpgradeは、指定したtaskidのAutoUpgradeタスクのerr/user/autoログを開きます。
  • 400レスポンス: taskidがないことをレポートします
  • 404レスポンス: taskidが無効であることをレポートします

例A-11 タスク・ログのGETリクエストの発行

次の例は、cURLでAutoUpgrade taskidおよびtypeを指定してAutoUpgradeユーザー・ログを取得する方法を示しています。

curl "http://localhost:8080/autoupgrade/log?type=userlog&taskid=job_2021-10-20_14_44_57.11_1"

userlogとしてtypeが指定されている前述のタスク・ログ・リクエストに対する200レスポンス・ヘッダーは次のとおりです。

HTTP/1.1 200 OK
Date: Wed, 20 Oct 2021 20:30:02 GMT
Set-Cookie: JSESSIONID=node0jrq0bg40ya86mr8icb87d8z16.node0; Path=/
Expires: Thu, 01 Jan 1970 00:00:00 GMT
Content-Type: plain/text
X-Frame-Options: SAMEORIGIN
Transfer-Encoding: chunked

このリクエストに対する200レスポンス本文は次のとおりです。userlogとしてtypeが指定されているタスク・ログに対してプレーン(テキスト)形式で返されます。

2021-10-20 14:44:57.737 INFO 
build.hash:71778e3
build.version:23.0.0
build.date:2021/05/05 10:42:40 -0700
build.max_target_version:23
build.supported_target_versions:12.2,18,19,21,23
build.type:beta
build.hash_date:2021/04/15 15:06:03 -0700
build.label:rest_api
 
2021-10-20 14:44:57.791 INFO Loading user config file metadata 
2021-10-20 14:44:58.598 INFO The target_version parameter was updated from 19.1 to 19.3.0.0.0 due to finding a more accurate value 
2021-10-20 14:44:58.844 INFO srvctl command is not available or user does not have permission to execute it 
2021-10-20 14:44:59.163 INFO Finished processing dbEntry job_0 
2021-10-20 14:44:59.475 INFO Current settings Initialized 
2021-10-20 14:44:59.576 INFO Job 100 database db122 
2021-10-20 14:45:11.685 INFO Job 100 completed 

例A-12 タスクIDが無効なログ・リクエストのレスポンス・ヘッダー

この例では、GETログ・リクエストが、無効なタスクIDに対して発行されます。


curl http://localhost:8080/autoupgrade/log?taskid=null

このリクエストは、次の404ヘッダー・レスポンスを返します。

HTTP/1.1 404 Not Found
Date: Wed, 20 Oct 2021 18:49:12 GMT
Set-Cookie: JSESSIONID=node06xkycdfv7k1f1bus3q43zefum2.node0; Path=/
Expires: Thu, 01 Jan 1970 00:00:00 GMT
Content-Type: application/json
X-Frame-Options: SAMEORIGIN
Transfer-Encoding: chunked

無効なtaskidに対する404レスポンス本文は次のとおりです。JSON形式で返されます。

{
    "taskid": "null",
    "status": "Bad Request",
    "message": "taskid is invalid.",
    "link": "",
    "config": ""
}
\

例A-13 タスクIDのログ・リストのレスポンス本文

次の例は、cURLでAutoUpgrade taskidを指定してAutoUpgradeログ・リストを取得する方法を示しています。

 curl 'http://localhost:8080/autoupgrade/log?taskid='job_2022-01-10_14:19:09.156_1

次の例は、taskidのログ・リストを示す200レスポンス本文を示しています。JSON形式で返されます。

{
    "logs": [
        {
            "filename": "cfgtoollogs/upgrade/auto/autoupgrade.log",
            "link": "http://localhost:8080/autoupgrade/log?taskid=job_2022-01-10_14_19_09.156_1&name=cfgtoollogs/upgrade/auto/autoupgrade.log"
        },
        {
            "filename": "cfgtoollogs/upgrade/auto/autoupgrade_user.log",
            "link": "http://localhost:8080/autoupgrade/log?taskid=job_2022-01-10_14_19_09.156_1&name=cfgtoollogs/upgrade/auto/autoupgrade_user.log"
        },
        {
            "filename": "cfgtoollogs/upgrade/auto/autoupgrade_err.log",
            "link": "http://localhost:8080/autoupgrade/log?taskid=job_2022-01-10_14_19_09.156_1&name=cfgtoollogs/upgrade/auto/autoupgrade_err.log"
        },
        {
            "filename": "cfgtoollogs/upgrade/auto/status/status.json",
            "link": "http://localhost:8080/autoupgrade/log?taskid=job_2022-01-10_14_19_09.156_1&name=cfgtoollogs/upgrade/auto/status/status.json"
        },
        {
            "filename": "cfgtoollogs/upgrade/auto/status/progress.json",
            "link": "http://localhost:8080/autoupgrade/log?taskid=job_2022-01-10_14_19_09.156_1&name=cfgtoollogs/upgrade/auto/status/progress.json"
        },
        {
            "filename": "cfgtoollogs/upgrade/auto/status/status.html",
            "link": "http://localhost:8080/autoupgrade/log?taskid=job_2022-01-10_14_19_09.156_1&name=cfgtoollogs/upgrade/auto/status/status.html"
        },
        {
            "filename": "cfgtoollogs/upgrade/auto/status/status.log",
            "link": "http://localhost:8080/autoupgrade/log?taskid=job_2022-01-10_14_19_09.156_1&name=cfgtoollogs/upgrade/auto/status/status.log"
        },
        {
            "filename": "db122/100/autoupgrade_20220110.log",
            "link": "http://localhost:8080/autoupgrade/log?taskid=job_2022-01-10_14_19_09.156_1&name=db122/100/autoupgrade_20220110.log"
        },
        {
            "filename": "db122/100/autoupgrade_20220110_user.log",
            "link": "http://localhost:8080/autoupgrade/log?taskid=job_2022-01-10_14_19_09.156_1&name=db122/100/autoupgrade_20220110_user.log"
        },
        {
            "filename": "db122/100/autoupgrade_err.log",
            "link": "http://localhost:8080/autoupgrade/log?taskid=job_2022-01-10_14_19_09.156_1&name=db122/100/autoupgrade_err.log"
        },
        {
            "filename": "db122/100/prechecks/prechecks_db122.log",
            "link": "http://localhost:8080/autoupgrade/log?taskid=job_2022-01-10_14_19_09.156_1&name=db122/100/prechecks/prechecks_db122.log"
        },
        {
            "filename": "db122/100/prechecks/db122_checklist.xml",
            "link": "http://localhost:8080/autoupgrade/log?taskid=job_2022-01-10_14_19_09.156_1&name=db122/100/prechecks/db122_checklist.xml"
        },
        {
            "filename": "db122/100/prechecks/db122_checklist.json",
            "link": "http://localhost:8080/autoupgrade/log?taskid=job_2022-01-10_14_19_09.156_1&name=db122/100/prechecks/db122_checklist.json"
        },
        {
            "filename": "db122/100/prechecks/db122_preupgrade.html",
            "link": "http://localhost:8080/autoupgrade/log?taskid=job_2022-01-10_14_19_09.156_1&name=db122/100/prechecks/db122_preupgrade.html"
        },
        {
            "filename": "db122/100/prechecks/upgrade.xml",
            "link": "http://localhost:8080/autoupgrade/log?taskid=job_2022-01-10_14_19_09.156_1&name=db122/100/prechecks/upgrade.xml"
        },
        {
            "filename": "db122/100/prechecks/db122_preupgrade.log",
            "link": "http://localhost:8080/autoupgrade/log?taskid=job_2022-01-10_14_19_09.156_1&name=db122/100/prechecks/db122_preupgrade.log"
        },
        {
            "filename": "db122/101/autoupgrade_20220110.log",
            "link": "http://localhost:8080/autoupgrade/log?taskid=job_2022-01-10_14_19_09.156_1&name=db122/101/autoupgrade_20220110.log"
        },
        {
            "filename": "db122/101/autoupgrade_20220110_user.log",
            "link": "http://localhost:8080/autoupgrade/log?taskid=job_2022-01-10_14_19_09.156_1&name=db122/101/autoupgrade_20220110_user.log"
        },
        {
            "filename": "db122/101/autoupgrade_err.log",
            "link": "http://localhost:8080/autoupgrade/log?taskid=job_2022-01-10_14_19_09.156_1&name=db122/101/autoupgrade_err.log"
        },
        {
            "filename": "db122/101/prechecks/prechecks_db122.log",
            "link": "http://localhost:8080/autoupgrade/log?taskid=job_2022-01-10_14_19_09.156_1&name=db122/101/prechecks/prechecks_db122.log"
        },
        {
            "filename": "db122/101/prechecks/db122_checklist.xml",
            "link": "http://localhost:8080/autoupgrade/log?taskid=job_2022-01-10_14_19_09.156_1&name=db122/101/prechecks/db122_checklist.xml"
        },
        {
            "filename": "db122/101/prechecks/db122_checklist.json",
            "link": "http://localhost:8080/autoupgrade/log?taskid=job_2022-01-10_14_19_09.156_1&name=db122/101/prechecks/db122_checklist.json"
        },
        {
            "filename": "db122/101/prechecks/db122_preupgrade.html",
            "link": "http://localhost:8080/autoupgrade/log?taskid=job_2022-01-10_14_19_09.156_1&name=db122/101/prechecks/db122_preupgrade.html"
        },
        {
            "filename": "db122/101/prechecks/upgrade.xml",
            "link": "http://localhost:8080/autoupgrade/log?taskid=job_2022-01-10_14_19_09.156_1&name=db122/101/prechecks/upgrade.xml"
        },
        {
            "filename": "db122/101/prechecks/db122_preupgrade.log",
            "link": "http://localhost:8080/autoupgrade/log?taskid=job_2022-01-10_14_19_09.156_1&name=db122/101/prechecks/db122_preupgrade.log"
        },
        {
            "filename": "db122/102/autoupgrade_20220110.log",
            "link": "http://localhost:8080/autoupgrade/log?taskid=job_2022-01-10_14_19_09.156_1&name=db122/102/autoupgrade_20220110.log"
        },
        {
            "filename": "db122/102/autoupgrade_20220110_user.log",
            "link": "http://localhost:8080/autoupgrade/log?taskid=job_2022-01-10_14_19_09.156_1&name=db122/102/autoupgrade_20220110_user.log"
        },
        {
            "filename": "db122/102/autoupgrade_err.log",
            "link": "http://localhost:8080/autoupgrade/log?taskid=job_2022-01-10_14_19_09.156_1&name=db122/102/autoupgrade_err.log"
        },
        {
            "filename": "db122/102/prechecks/prechecks_db122.log",
            "link": "http://localhost:8080/autoupgrade/log?taskid=job_2022-01-10_14_19_09.156_1&name=db122/102/prechecks/prechecks_db122.log"
        },
        {
            "filename": "db122/102/prechecks/db122_checklist.xml",
            "link": "http://localhost:8080/autoupgrade/log?taskid=job_2022-01-10_14_19_09.156_1&name=db122/102/prechecks/db122_checklist.xml"
        },
        {
            "filename": "db122/102/prechecks/db122_checklist.json",
            "link": "http://localhost:8080/autoupgrade/log?taskid=job_2022-01-10_14_19_09.156_1&name=db122/102/prechecks/db122_checklist.json"
        },
        {
            "filename": "db122/102/prechecks/db122_preupgrade.html",
            "link": "http://localhost:8080/autoupgrade/log?taskid=job_2022-01-10_14_19_09.156_1&name=db122/102/prechecks/db122_preupgrade.html"
        },
        {
            "filename": "db122/102/prechecks/upgrade.xml",
            "link": "http://localhost:8080/autoupgrade/log?taskid=job_2022-01-10_14_19_09.156_1&name=db122/102/prechecks/upgrade.xml"
        },
        {
            "filename": "db122/102/prechecks/db122_preupgrade.log",
            "link": "http://localhost:8080/autoupgrade/log?taskid=job_2022-01-10_14_19_09.156_1&name=db122/102/prechecks/db122_preupgrade.log"
        }
    ]
}  
  

例A-14 nameパラメータを使用した特定のログのリクエスト

次の例は、nameパラメータにファイル名を指定し、ログを生成したタスクのtaskidを指定して、タスクIDのログ・リスト内の特定のログ・ファイルをリクエストする方法を示しています。

curl 'http://localhost:8080/autoupgrade/log?taskid=job_2022-01-10_14_19_09.156_1&name=db122/102/autoupgrade_20220110_user.log'

このリクエストでは、指定されたファイル名のログ・ファイル情報を表示する200レスポンス本文が返されます。

2022-01-10 14:44:43.447 INFO 
build.hash:71778e3
build.version:23.0.0
build.date:2021/05/05 10:42:40 -0700
build.max_target_version:23
build.supported_target_versions:12.2,18,19,21,23
build.type:beta
build.hash_date:2021/04/15 15:06:03 -0700
build.label:rest_api
 
2022-01-10 14:44:49.529 INFO Analyzing db122, 104 checks will run using 4 threads   

AutoUpgradeのタスク・リクエストのステータス・レポート

status APIを使用して、taskidで指定されたAutoUpgradeタスクのステータス・レポートを取得します。

方法

GET

パス

/autoupgrade/status

使用上のノート

JSON形式でAutoUpgradeタスク・ステータスを受信するには、AutoUpgrade taskidを発行します。

リクエスト

パス・パラメータ:

パラメータ 説明

taskid

(必須)ステータスを取得するタスクのシステム生成識別子。

レスポンス

  • 200レスポンス: taskidで指定したタスクのステータスをレポートします。
  • 400レスポンス: taskidがないことをレポートします
  • 404レスポンス: taskidが無効であることをレポートします

例A-15 タスク・ステータスGETリクエストの発行

次の例は、cURLでAutoUpgradeタスク・ステータス・リクエストを取得する方法を示しています。

curl http://localhost:8080/autoupgrade/status?taskid=job_2021-10-20_14_44_57.11_1 

これは、前述のGETタスク・ステータス・レポート・リクエストに対する200レスポンス・ヘッダーです:

HTTP/1.1 200 OK
Date: Wed, 20 Oct 2021 19:51:46 GMT
Set-Cookie: JSESSIONID=node0yawyihk3msz91eeauxijfaw6z3.node0; Path=/
Expires: Thu, 01 Jan 1970 00:00:00 GMT
Content-Type: application/json
X-Frame-Options: SAMEORIGIN
Transfer-Encoding: chunked

これは、JSON形式のGETタスク・ステータス・レポート・リクエストに対するレスポンス本文です:

{
    "taskid": "job_2021-10-20_14_44_57.11_1",
    "status": "successful",
    "message": "",
    "autoupgrade_status": {
        "totalJobs": 1,
        "lastUpdateTime": "2021-10-20 14:45:11",
        "jobs": [
            {
                "sid": "db122",
                "jobNo": 100,
                "logDirectory": "/databases/working/job_2021-10-20_14_44_57.11_1/db122/100",
                "conNumber": 1,
                "lastUpdateTime": "2021-10-20 14:45:11",
                "modules": [
                    {
                        "moduleName": "PRECHECKS",
                        "status": 0,
                        "errors": [
                        ],
                        "lastUpdateTime": "2021-10-20 14:45:11"
                    }
                ]
            }
        ]
    }
}

例A-16 taskidが無効なタスク・ステータスGETリクエストの発行

次の例では、AutoUpgrade GETタスク・ステータス・リクエストが、無効なtaskidパラメータで発行されます。

curl http://localhost:8080/autoupgrade/status?taskid=null

前述の無効なGETタスク・ステータス・リクエストに対する404レスポンス・ヘッダーは、次のとおりです。

HTTP/1.1 404 Not Found
Date: Wed, 20 Oct 2021 18:49:12 GMT
Set-Cookie: JSESSIONID=node06xkycdfv7k1f1bus3q43zefum2.node0; Path=/
Expires: Thu, 01 Jan 1970 00:00:00 GMT
Content-Type: application/json
X-Frame-Options: SAMEORIGIN
Transfer-Encoding: chunked

この無効なGETタスク・ステータス・リクエストに対するレスポンス本文は、次のとおりです(JSON形式)。

{
    "taskid": "null",
    "status": "Bad Request",
    "message": "taskid is invalid.",
    "link": "",
    "config": ""
}