sonar-clone-dashboards

입력 레코드로 전달된 guid에 해당되는 대시보드를 복제합니다. 복제된 대시보드의 이름에는 Copy of 접두어가 추가됩니다. clone-widget 옵션을 지정하면 대시보드에 포함된 탭과 위젯까지 함께 복제합니다.

명령어 속성

항목설명
명령어 유형가공 쿼리
필요 권한관리자
라이선스 사용량해당 없음
병렬 실행미지원
분산 실행수집 노드에서 실행 (mapper)

문법

... | sonar-clone-dashboards [run=BOOL] [clone-widget=BOOL]

옵션

[run=BOOL]
t로 지정하면 실제로 대시보드를 복제합니다. 지정하지 않으면 실제로 복제하지 않고 복제 결과 레코드의 형태만 미리 확인할 수 있습니다 (기본값: f)
[clone-widget=BOOL]
t로 지정하면 대시보드의 모든 탭에 포함된 위젯도 함께 복제합니다 (기본값: f)

입력 필드

필드타입필수 여부설명
guid문자열필수복제할 대시보드의 GUID

출력 필드

입력 레코드의 모든 필드에 다음 필드를 추가하여 반환합니다.

필드타입설명
clone_guid문자열새로 생성될 대시보드의 GUID. 호출할 때마다 새로 생성되는 난수이므로 run 없이 미리 본 값과 run=t로 실제 복제할 때 발급되는 값이 다를 수 있습니다. guid 필드 누락, 대상 미존재, run=t 중 복제 실패로 _error가 기록된 레코드에는 포함되지 않습니다
clone_name문자열새로 생성될 대시보드의 이름 (Copy of 접두어 포함). clone_guid와 마찬가지로 _error가 기록된 레코드에는 포함되지 않습니다
status문자열run=t로 실행한 경우에만 포함되는 처리 결과. success 또는 failure
_error문자열복제에 실패한 경우의 오류 메시지

오류 코드

파싱 오류
오류 코드메시지설명
300170대시보드 목록을 볼 권한이 없습니다관리자 권한이 없는 계정으로 실행한 경우
런타임 오류

해당 사항 없음

설명

sonar-clone-dashboards 명령어는 입력 레코드마다 guid 필드 값으로 대상 대시보드를 조회한 후, 새 GUID와 Copy of 접두어가 붙은 이름으로 복제본을 준비합니다. run 옵션을 지정하지 않으면 실제로 복제하지 않고 복제 결과 레코드의 형태만 확인할 수 있습니다. clone_guid는 호출할 때마다 새로 생성되는 난수이므로, 이때 확인한 값은 run=t로 실제 복제할 때 발급되는 GUID와 다릅니다. 미리 확인할 수 있는 값은 사실상 clone_name뿐입니다. run=t로 지정해야 실제로 대시보드가 생성되고 status 필드에 처리 결과가 기록됩니다.

clone-widget=t를 지정하면 원본 대시보드의 각 탭에 속한 위젯도 함께 복제하고, 탭 레이아웃에 저장된 위젯 참조를 새 위젯 GUID로 갱신합니다. 이 옵션을 지정하지 않으면 복제된 대시보드의 탭은 원본 위젯을 그대로 참조합니다.

run=t로 실행할 때 탭·위젯을 복제하는 단계에서 오류가 발생하면, 별도의 롤백이 없어 대시보드와 일부 탭까지만 생성된 상태로 남을 수 있습니다.

guid 필드가 없으면 _error 필드에 guid field is required가, 대상 대시보드를 찾지 못하면 dashboard not found가 기록되고 해당 레코드는 복제되지 않습니다. guid 값이 유효한 UUID 형식이 아니면 쿼리 실행이 예외로 중단되므로, 반드시 sonar-dashboards 명령어의 guid 출력 필드와 같은 형식의 값을 입력해야 합니다.

사용 예

  1. 이름으로 대시보드를 찾아 복제 미리보기

    sonar-dashboards
    | search name == "보안 관제 현황"
    | fields guid
    | sonar-clone-dashboards
    

    run 옵션을 지정하지 않아 실제로 복제하지 않고, 복제될 대시보드의 이름만 미리 확인합니다. clone_guid는 호출할 때마다 새로 생성되는 값이라 이 결과의 GUID를 실제 복제에 사용할 수 없습니다.

  2. 특정 GUID의 대시보드를 위젯까지 복제

    json "[{'guid': '550e8400-e29b-41d4-a716-446655440000'}]"
    | sonar-clone-dashboards run=t clone-widget=t
    

    지정한 GUID의 대시보드를 실제로 복제하고, 대시보드에 포함된 모든 탭의 위젯도 함께 복제합니다.

변경 이력

sonar-clone-dashboards 명령어는 소나 4.0.2609.0 버전부터 사용 가능합니다.

이 명령어는 실험실(Lab) 앱이 제공하던 것을 소나 코어에 내장한 것입니다(SNR#3463). 내장되지 않은 버전에서는 실험실 앱을 설치해 사용할 수 있습니다.