Cloud Dataflow 명령줄 인터페이스 사용

Cloud Dataflow 관리형 서비스를 사용하여 파이프라인을 실행하는 경우 Cloud Dataflow 명령줄 인터페이스를 사용하여 Cloud Dataflow 작업에 대한 정보를 가져올 수 있습니다. Cloud Dataflow 명령줄 인터페이스는 Cloud SDKgcloud 명령줄 도구에 포함되어 있습니다.

참고: 웹 기반 UI를 사용하여 Cloud Dataflow 작업을 확인하고 상호작용하려면 Cloud Dataflow 모니터링 인터페이스를 사용하세요.

Cloud Dataflow 명령줄 구성요소 설치

Cloud Dataflow 명령줄 인터페이스를 사용하려면 먼저 베타 구성요소를 gcloud 도구에 설치해야 합니다. 셸 또는 터미널 창에서 다음을 입력하세요.

  gcloud components update beta

계속할지 묻는 메시지가 나타나면 y를 입력합니다.

사용 가능한 명령어 실행

사용 가능한 명령어를 실행하여 Cloud Dataflow 명령줄 인터페이스와 상호작용할 수 있습니다. 명령어를 실행하려면 셸 또는 터미널에 다음 명령어를 입력하세요.

  gcloud beta dataflow

Cloud Dataflow 명령줄 인터페이스에는 jobs, logs, metrics와 같은 세 가지 주요 하위 명령어가 있습니다.

Jobs 명령어

jobs 하위 명령어 그룹을 사용하면 GCP 프로젝트의 Cloud Dataflow 작업을 확인하고 상호작용할 수 있습니다. 이 명령어를 사용하여 작업 목록 확인, 작업 취소, 특정 작업에 대한 설명 표시 등을 수행할 수 있습니다. 예를 들어 모든 Cloud Dataflow 작업 목록을 보려면 셸 또는 터미널에 다음 명령어를 입력하세요.

gcloud dataflow jobs list

gcloud 도구는 다음과 같이 현재 작업 목록을 반환합니다.

  ID                                        NAME                                    TYPE   CREATION_TIME        STATE   REGION
  2015-06-03_16_39_22-4020553808241078833   wordcount-janedoe-0603233849            Batch  2015-06-03 16:39:22  Done    us-central1
  2015-06-03_16_38_28-4363652261786938862   wordcount-johndoe-0603233820            Batch  2015-06-03 16:38:28  Done    us-central1
  2015-05-21_16_24_11-17823098268333533078  bigquerytornadoes-johndoe-0521232402    Batch  2015-05-21 16:24:11  Done    europe-west1
  2015-05-21_13_38_06-16409850040969261121  bigquerytornadoes-johndoe-0521203801    Batch  2015-05-21 13:38:06  Done    us-central1
  2015-05-21_13_17_18-18349574013243942260  bigquerytornadoes-johndoe-0521201710    Batch  2015-05-21 13:17:18  Done    europe-west1
  2015-05-21_12_49_37-9791290545307959963   wordcount-johndoe-0521194928            Batch  2015-05-21 12:49:37  Done    us-central1
  2015-05-20_15_54_51-15905022415025455887  wordcount-johndoe-0520225444            Batch  2015-05-20 15:54:51  Failed  us-central1
  2015-05-20_15_47_02-14774624590029708464  wordcount-johndoe-0520224637            Batch  2015-05-20 15:47:02  Done    us-central1

작업 ID를 사용하여 describe 명령어를 실행하여 작업에 대한 추가 정보를 표시할 수 있습니다.

export JOBID=<X>
gcloud beta dataflow jobs describe $JOBID

예를 들어 작업 ID 2015-02-09_11_39_40-15635991037808002875에 명령어를 실행하면 gcloud 도구가 다음 정보를 반환합니다.

createTime: '2015-02-09T19:39:41.140Z'
currentState: JOB_STATE_DONE
currentStateTime: '2015-02-09T19:56:39.510Z'
id: 2015-02-09_11_39_40-15635991037808002875
name: tfidf-bchambers-0209193926
projectId: google.com:clouddfe
type: JOB_TYPE_BATCH

--format=json 옵션으로 명령어를 실행하여 결과를 JSON 형식으로 지정할 수 있습니다.

gcloud --format=json beta dataflow jobs describe $JOBID

gcloud 도구는 다음 형식의 정보를 반환합니다.

{
  "createTime": "2015-02-09T19:39:41.140Z",
  "currentState": "JOB_STATE_DONE",
  "currentStateTime": "2015-02-09T19:56:39.510Z",
  "id": "2015-02-09_11_39_40-15635991037808002875",
  "name": "tfidf-bchambers-0209193926",
  "projectId": "google.com:clouddfe",
  "type": "JOB_TYPE_BATCH"
}

jobs 명령어의 전체 목록은 Cloud SDK 문서의 gcloud beta dataflow jobs 명령어를 참조하세요.

Logs 명령어

logs 명령어는 Cloud Dataflow 서비스에서 실행되는 작업의 로그 항목을 표시합니다.

예를 들어 list 명령어를 사용하여 수행 중인 작업에 대한 정보를 제공하는 로그를 출력할 수 있습니다.

export JOBID=<X>
gcloud beta dataflow logs list $JOBID

gcloud 도구는 작업 ID 2015-02-09_11_39_40-15635991037808002875에 다음을 반환합니다.

Listed 0 items.

이 예에서는 기본 심각도(Warning)의 로그가 표시되지 않았습니다. --importance=detailed 옵션이 지정된 list 명령어를 실행하여 BASIC 로그를 포함할 수 있습니다.

gcloud beta dataflow logs list $JOBID --importance=detailed

gcloud 도구는 다음 로그를 출력합니다.

d 2016-08-29T09:33:28 2015-02-09_11_39_40-15635991037808002875_00000156d72606f7 (39b2a31f5e883423): Starting worker pool synchronously
d 2016-08-29T09:33:28 2015-02-09_11_39_40-15635991037808002875_00000156d7260871 (39b2a31f5e883ce9): Worker pool is running
d 2016-08-29T09:33:28 2015-02-09_11_39_40-15635991037808002875_00000156d7260874 (39b2a31f5e883b77): Executing operation Count.PerElement/Sum.PerKey/GroupByKey/GroupByKeyOnly…
...

logs 명령어의 전체 목록은 Cloud SDK 문서의 gcloud beta dataflow logs 명령어를 참조하세요.

Metrics 명령어

metrics 명령어를 사용하면 특정 Cloud Dataflow 작업의 측정항목을 볼 수 있습니다.

참고: metric 명령어 이름을 변경할 수 있으며 특정 측정항목을 삭제할 수 있습니다.

list 명령어를 사용하여 작업 단계에 대한 정보를 가져올 수 있습니다.

gcloud beta dataflow metrics list $JOBID

gcloud 도구는 이 명령어에 대한 응답으로 다음을 반환합니다.

---
name:
  name: s09-s14-start-msecs
  origin: dataflow/v1b3
scalar: 137
updateTime: '2016-08-29T16:35:50.007Z'
---
name:
  context:
    output_user_name: WordCount.CountWords/Count.PerElement/Init-out0
  name: ElementCount
  origin: dataflow/v1b3
scalar: 26181
updateTime: '2016-08-29T16:35:50.007Z'
---
name:
  context:
    step: s2
  name: emptyLines
  origin: user
scalar: 1080
updateTime: '2016-08-29T16:35:50.007Z'
...

gcloud beta dataflow metrics list 명령어를 사용하여 작업이 실행되는 동안(또는 완료 직후) 임시 측정항목을 가져올 수 있습니다. 임시 측정항목을 보려면 --tentative 플래그가 지정된 명령어를 실행하세요. tentative가 표시된 측정항목은 작업자 인스턴스가 파이프라인의 데이터를 처리할 때마다 자주 업데이트됩니다. 하지만 작업자에 오류가 발생하면 감소할 수 있습니다. 작업자가 작업을 완료하고 결과를 커밋하면 tentative 측정항목은 committed 값이 됩니다.

metrics 명령어의 전체 목록은 Cloud SDK 문서의 gcloud beta dataflow metrics 명령어를 참조하세요.

리전 엔드포인트가 지정된 명령어 사용

Cloud Dataflow 명령줄 인터페이스는 gcloud 도구 버전 176부터 리전 엔드포인트를 지원합니다. 모든 명령어에 --region 옵션을 사용하여 작업을 관리하는 리전 엔드포인트를 지정하세요.

예를 들어 gcloud dataflow jobs list는 모든 리전의 작업을 나열하지만 gcloud dataflow jobs list --region=europe-west1europe-west1에서 관리되는 작업만 나열합니다.

참고: 리전 엔드포인트에서 작업 정보를 가져오려면 --region 옵션이 필요합니다. 리전 엔드포인트를 지정하지 않으면 us-central1이 기본 엔드포인트로 사용됩니다.

이 페이지가 도움이 되었나요? 평가를 부탁드립니다.

다음에 대한 의견 보내기...

도움이 필요하시나요? 지원 페이지를 방문하세요.