작업 상태 확인

이 페이지에서는 모든 장기 실행 작업을 나열하는 방법과 장기 실행 작업의 상태를 확인하는 방법을 설명합니다.

장기 실행 작업의 상태를 확인하고 추가 오류 세부정보를 표시하려면 먼저 OPERATION_NAME의 값을 가져온 다음 상태를 요청해야 합니다.

ListOperations

모든 장기 실행 작업을 나열하려면 다음 요청을 전송합니다.

curl \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
https://blockchainnodeengine.googleapis.com/v1/projects/PROJECT_ID/\
locations/LOCATION/operations

각 항목의 의미는 다음과 같습니다.

  • PROJECT_ID는 Google Cloud 프로젝트 ID입니다. 예를 들면 my-project-id입니다.
  • LOCATION은 리소스가 호스팅되는 위치입니다. 예를 들면 us-central1입니다.

다음은 위 명령어에 대한 샘플 응답입니다.

{
  "operations": [
    {
      "name": "projects/my-project-id/locations/us-central1/operations/operation-1683321573175-5faf8d8696fe0-5f1906e4-eb1b6828",
      "metadata": {
        "@type": "type.googleapis.com/google.cloud.blockchainnodeengine.v1.OperationMetadata",
        "createTime": "2023-05-05T21:19:33.245698045Z",
        "endTime": "2023-05-05T21:58:44.520319810Z",
        "target": "projects/my-project-id/locations/us-central1/blockchainNodes/my-new-node-2",
        "verb": "create",
        "requestedCancellation": false,
        "apiVersion": "v1"
      },
      "done": true,
      "response": {
        "@type": "type.googleapis.com/google.cloud.blockchainnodeengine.v1.BlockchainNode",
        "name": "projects/my-project-id/locations/us-central1/blockchainNodes/my-new-node-2",
        "createTime": "2023-05-05T21:19:33.308756Z",
        "updateTime": "2023-05-05T21:58:44.513286Z",
        "labels": {
          "label-key": "label-value"
        },
        "blockchainType": "ETHEREUM",
        "connectionInfo": {
          "ipInfo": {
            "rpcIpv4Address": "203.0.113.1"
          },
          "endpointInfo": {
            "jsonRpcApiEndpoint": "json-rpc.4amkczs2vkh8hjtghcipu7y2t.blockchainnodeengine.com",
            "websocketsApiEndpoint": "ws.4amkczs2vkh8hjtghcipu7y2t.blockchainnodeengine.com"
          }
        },
        "ethereumDetails": {
          "network": "MAINNET",
          "nodeType": "FULL",
          "executionClient": "GETH",
          "consensusClient": "LIGHTHOUSE",
          "apiEnableAdmin": false,
          "apiEnableDebug": false,
          "additionalEndpoints": {
            "beaconApiEndpoint": "beacon.4amkczs2vkh8hjtghcipu7y2t.blockchainnodeengine.com",
            "beaconPrometheusMetricsApiEndpoint": "bc-mc.4amkczs2vkh8hjtghcipu7y2t.blockchainnodeengine.com"
          }
        },
        "state": "RUNNING"
      }
    }
  ]
}

다음과 같이 표시되는 OPERATION_ID를 기록합니다.

"name": "projects/my-project-id/locations/us-central1/operations/
    operation-1683321573175-5faf8d8696fe0-5f1906e4-eb1b6828",

GetOperation

요청을 전송하고 응답을 수신하면(예: CreateBlockchainNode 또는 DeleteBlockchainNode) 응답에 다음과 같은 OPERATION_ID가 포함됩니다.

  "name": "projects/my-project-id/locations/us-central1/operations/
    operation-1683321573175-5faf8d8696fe0-5f1906e4-eb1b6828",

이 예에서는 OPERATION_NAMEoperation-1683321573175-5faf8d8696fe0-5f1906e4-eb1b6828로 설정합니다.

ListOperations 명령어의 결과에서 작업 이름을 가져올 수도 있습니다.

OPERATION_NAME의 값을 가져온 후 다음 요청을 보냅니다.

curl \
  -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  -H "Content-Type: application/json" \
https://blockchainnodeengine.googleapis.com/v1/projects/PROJECT_ID/\
locations/LOCATION/operations/OPERATION_NAME

각 항목의 의미는 다음과 같습니다.

  • PROJECT_ID는 Google Cloud 프로젝트 ID입니다. 예를 들면 my-project-id입니다.
  • LOCATION은 리소스가 호스팅되는 위치입니다. 예를 들면 us-central1입니다.
  • OPERATION_NAME은 작업을 지정하는 문자열입니다. 예를 들면 operation-1683321573175-5faf8d8696fe0-5f1906e4-eb1b6828입니다.

다음은 위 명령어에 대한 응답 예시입니다.

{
  "name": "projects/my-project-id/locations/us-central1/operations/operation-1683321573175-5faf8d8696fe0-5f1906e4-eb1b6828",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.blockchainnodeengine.v1.OperationMetadata",
    "createTime": "2023-05-05T21:19:33.245698045Z",
    "endTime": "2023-05-05T21:58:44.520319810Z",
    "target": "projects/my-project-id/locations/us-central1/blockchainNodes/my-new-node-2",
    "verb": "create",
    "requestedCancellation": false,
    "apiVersion": "v1"
  },
  "done": true,
  "response": {
    "@type": "type.googleapis.com/google.cloud.blockchainnodeengine.v1.BlockchainNode",
    "name": "projects/my-project-id/locations/us-central1/blockchainNodes/my-new-node-2",
    "createTime": "2023-05-05T21:19:33.308756Z",
    "updateTime": "2023-05-05T21:58:44.513286Z",
    "labels": {
      "label-key": "label-value"
    },
    "blockchainType": "ETHEREUM",
    "connectionInfo": {
      "ipInfo": {
        "rpcIpv4Address": "203.0.113.1"
      },
      "endpointInfo": {
        "jsonRpcApiEndpoint": "json-rpc.4amkczs2vkh8hjtghcipu7y2t.blockchainnodeengine.com",
        "websocketsApiEndpoint": "ws.4amkczs2vkh8hjtghcipu7y2t.blockchainnodeengine.com"
      }
    },
    "ethereumDetails": {
      "network": "MAINNET",
      "nodeType": "FULL",
      "executionClient": "GETH",
      "consensusClient": "LIGHTHOUSE",
      "apiEnableAdmin": false,
      "apiEnableDebug": false,
      "additionalEndpoints": {
        "beaconApiEndpoint": "beacon.4amkczs2vkh8hjtghcipu7y2t.blockchainnodeengine.com",
        "beaconPrometheusMetricsApiEndpoint": "bc-mc.4amkczs2vkh8hjtghcipu7y2t.blockchainnodeengine.com"
      }
    },
    "state": "RUNNING"
  }
}