워크플로 실행 위젯
워크플로 실행 위젯 (Run Workflow Widget)
출처: 문서
본문
개요 (Overview)
Run Workflow 위젯을 사용하면 대시보드에서 중요한 작업을 자동화할 수 있어요. 시스템 상태에 영향을 주는 문제를 인지하는 시점에 대시보드에서 워크플로를 트리거해요. 이렇게 하면 해결 시간을 단축하고 오류 가능성을 줄여 시스템이 계속 정상 작동하도록 유지할 수 있어요.
구성 (Configuration)
- 워크플로 선택(Select the workflow)에서 드롭다운 메뉴로 워크플로를 찾아요.
- 대시보드 템플릿 변수를 워크플로 입력 파라미터에 매핑해요. 이렇게 하면 워크플로를 실행할 때 대시보드 템플릿 변수의 값이 입력 파라미터에 직접 매핑될 수 있어요.
- 위젯 제목을 입력하고 저장(Save)을 클릭해요.
워크플로를 실행하려면:
- 대시보드 위젯에서 Run Workflow를 클릭해요.
- 실행 파라미터(Execution parameters)에서 워크플로 입력에 매핑한 모든 템플릿 변수가 자동으로 채워져요. 매핑되지 않은 실행 파라미터의 값을 입력하거나, 필요하면 기존 값을 수정해요.
- 실행(Run)을 클릭해 워크플로를 실행해요.
API
이 위젯은 **대시보드 API**와 함께 사용할 수 있어요. 위젯 JSON 스키마 정의에 대해서는 다음 표를 참고하세요.
| 필드 | 타입 | 설명 |
|---|---|---|
| custom_links | object[] | 사용자 지정 링크 목록. |
| is_hidden | boolean | 컨텍스트 메뉴 링크 표시 여부를 전환하는 플래그. |
| label | string | 사용자 지정 링크 URL의 라벨. 라벨을 짧고 명확하게 유지하세요. 메트릭과 태그를 변수로 사용하세요. |
| link | string | 사용자 지정 링크의 URL. URL은 http 또는 https를 포함해야 해요. 상대 URL은 /로 시작해야 해요. |
| override_label | string | 컨텍스트 메뉴 링크를 나타내는 라벨 ID. logs, hosts, traces, profiles, processes, containers, rum 중 하나가 될 수 있어요. |
| description | string | 위젯의 설명. |
| inputs | object[] | 대시보드 템플릿 변수에 매핑할 워크플로 입력 배열. |
| name [필수] | string | 워크플로 입력의 이름. |
| value [필수] | string | 대시보드 템플릿 변수. '.value' 또는 '.key'로 접미사가 붙을 수 있어요. |
| time | object | 위젯의 시간 설정. |
| title | string | 위젯 제목. |
| title_align | enum | 위젯 텍스트 정렬 방식. 허용 enum 값: center,left,right |
| title_size | string | 제목 크기. |
| type [필수] | enum | Run Workflow 위젯 유형. 허용 enum 값: run_workflow 기본값: run_workflow |
| workflow_id [필수] | string | 워크플로 ID. |
time 객체는 라이브 스팬(live span) 래퍼(객체 1)이며 live_span, hide_incomplete_cost_data 필드를 가져요. live_span은 위젯에 따라 사용 가능한 시간 범위가 달라지며 허용 enum 값은 1m,5m,10m,15m,30m,1h,4h,1d,2d,1w,1mo,3mo,6mo,week_to_date,month_to_date,1y,alert이에요. hide_incomplete_cost_data는 위젯에서 불완전한 비용 데이터를 숨길지 여부예요.
예시:
{
"custom_links": [
{
"is_hidden": false,
"label": "Search logs for {{host}}",
"link": "https://app.datadoghq.com/logs?query={{host}}",
"override_label": "logs"
}
],
"description": "string",
"inputs": [
{
"name": "Environment",
"value": "$env.value"
}
],
"time": {
"hide_incomplete_cost_data": false,
"live_span": "5m"
},
"title": "string",
"title_align": "string",
"title_size": "string",
"type": "run_workflow",
"workflow_id": "<workflow_id>"
}